Skip to content

Releases: google/autocxx

v0.22.3

27 Jun 22:24
c35090b
Compare
Choose a tag to compare
v0.22.3 Pre-release
Pre-release

What's Changed

The change here is an experimental new mode to use reference wrappers for C++ code, as explained here and in this example.

Full Changelog: v0.22.2...v0.22.3

v0.22.2

08 Jun 16:55
e147efc
Compare
Choose a tag to compare
v0.22.2 Pre-release
Pre-release

What's Changed

New Contributors

Full Changelog: v0.22.1...v0.22.2

v0.22.1

29 May 04:26
bdff5db
Compare
Choose a tag to compare
v0.22.1 Pre-release
Pre-release

What's Changed

One new feature:

A roll of the minimum cxx version to work around a new clippy warning:

Lots of bug fixes:

There is currently a known soundness problem, as noted in #1006.

Full Changelog: v0.22.0...v0.22.1

v0.22.0

29 Apr 08:27
24f5e2a
Compare
Choose a tag to compare
v0.22.0 Pre-release
Pre-release

What's Changed

Major changes to how the command line generation tool autocxx_gen works. If you're just using cargo you probably don't need to worry about this, but if you're using other build systems you'll almost certainly need to make changes.

There's also a compatibility change in that make_unique methods have been removed. They've been deprecated for a few releases now, so this shouldn't come as a surprise. Append .within_unique_ptr() everywhere you would have used it.

This release also upgrades some of our dependencies:

But mostly there are lots of bug fixes for cases where autocxx previously failed.

Various other bug fixes or minor changes:

  • Achieve predictable iteration order. by @adetaylor in #1044 - this makes output more deterministic
  • Fix excessive generate_pod output in repro cases. by @adetaylor in #1058 - fixes a bug in the reproduction pipeline
  • Better logging from autocxx-reduce. by @adetaylor in #1062
  • Avoid duplicate stddef introduction in reduction. by @adetaylor in #1063
  • Avoid redefining cxx types in reduction by @adetaylor in #1064
  • Add stress test reduction pipeline. by @adetaylor in #1069

Full Changelog: v0.21.2...v0.22.0

v0.21.2

19 Apr 05:45
99702d5
Compare
Choose a tag to compare
v0.21.2 Pre-release
Pre-release

What's Changed

  • Treat C++ warnings as fatal within the test suite, revealing a problem that needed to be fixed in our generated code...
  • Fix unnecessary std::move by @adetaylor in #1048

Full Changelog: v0.21.1...v0.21.2

v0.21.1

19 Apr 05:21
7319702
Compare
Choose a tag to compare
v0.21.1 Pre-release
Pre-release

What's Changed

Significant improvement (though some corner cases wouldn't surprise me): where possible, treat incomprehensible typedefs as opaque types by @adetaylor in #1035. Previously if we encountered a type that bindgen couldn't fully handle, we ignored that type plus any typedefs that depended upon it. Now, we still discard the type - but typedefs should continue to be somewhat usable.

Bug fixes

Internal and testing changes

Full Changelog: v0.21.0...v0.21.1

v0.21.0

15 Apr 04:55
8e04069
Compare
Choose a tag to compare
v0.21.0 Pre-release
Pre-release

What's Changed

Major breaking change:

  • Functions which return (non-POD) values no longer return a UniquePtr. Instead they return an impl New, so you can emplace them on the stack or in a Box if you prefer. If in doubt, simply append .within_unique_ptr() to go back to the old behavior. (#998)
  • Function calls which take rvalue reference parameters (Thingy&&) are now supported (#821)

Bug fixes:

Full Changelog: v0.20.1...v0.21.0

v0.20.1

12 Apr 03:28
5dcafe7
Compare
Choose a tag to compare
v0.20.1 Pre-release
Pre-release

What's Changed

  • Bug fix to stop important error messages disappearing (thanks to @testforvln for the report) - in #1021
  • Slightly more flexibility when storing C++ objects in Rust boxes:

Various internal tidyings.

The next release is likely to be a significant compatibility break as we land a major part of #379.

Full Changelog: v0.20.0...v0.20.1

v0.20.0

07 Apr 21:19
bee0078
Compare
Choose a tag to compare
v0.20.0 Pre-release
Pre-release

What's Changed

New features

  • Support writing depfiles from autocxx_gen by @adetaylor in #1012
  • Basic support for extern_cpp_type! by @adetaylor in #1008. This allows one set of include_cpp! bindings to delegate a type to another set obindings.

Boring but breaking change

Bugfixes and documentation

This version includes a lot of restructuring with no intentional functional change, as prep work for eventually landing the next bit of #379.

New Contributors

Full Changelog: v0.19.1...v0.20.0

v0.19.1

04 Apr 14:51
85d22c7
Compare
Choose a tag to compare
v0.19.1 Pre-release
Pre-release

What's Changed

  • This release deprecates the make_unique() functions that were previously created for each constructor, and instead introduces a new Within trait. This will later become the only way of using constructors. (@adetaylor in #997)

Testing improvements

Full Changelog: v0.19.0...v0.19.1