github google/autocxx v0.16.0

latest releases: v0.27.0, v0.26.0, v0.25.0...
pre-release2 years ago

What's Changed

  • The main improvement here is continued support for the moveit crate, and its ability to move/copy construct non-trivial C++ objects around on the Rust stack. The support is still not finished - you still can't, for instance, pass such objects by value into existing C++ functions - but it's further on. In this version you can move non-trivial C++ objects around on the Rust stack, make copies etc. subject to the availability of move/copy constructors on the C++ side.
    • Implement CopyNew trait in #752
    • Implement MoveNew trait in #752
    • Implement Drop trait in #758. (Previously stack-allocated C++ objects didn't get their destructors called)
    • Bump up to a new version of moveit which allows us to emplace into UniquePtr (#757). Note that there is a known bug/limitation here, #772
    • Correctly identify deleted move constructors in #738
    • Hopefully (and this is the big big) identify and populate all the implicit constructors that C++ standards specify - #760. This is error-prone so if there are problems, this is probably why, and a new block_constructors! directive is added on the assumption that I've messed something up here and a workaround is needed.
  • Another significant improvement is that all the autogenerated type names for AutocxxConcrete types are now more descriptive by @adetaylor in #764
  • Correctly spot types which are abstract due to private pure virtual functions by @adetaylor in #750
  • Add cxx to dependencies in Readme example by @psmit in #741
  • Update s2geometry URI by @adetaylor in #746
  • Regularize bindgen annotations. by @adetaylor in #734. This is a step towards potentially being able to upstream some of these annotations into the upstream bindgen, though it's a long way off still
  • A couple of fixes for the autocxx-reduce pipeline by @adetaylor in #747, #749
  • Fixing comments in non-trivial C++ types example. by @adetaylor in #748
  • Fixing some garbage collection issues in #759
  • Some miscellaneous test changes

New Contributors

Full Changelog: v0.15.0...v0.16.0

Don't miss a new autocxx release

NewReleases is sending notifications on new releases.