Skip to content

Releases: dtolnay/cxx

1.0.36

26 Mar 17:43
1.0.36
ceb1ca9
Compare
Choose a tag to compare
  • Cut out some noise from generated code if bridge already has "rust/cxx.h" included (#769)

1.0.35

25 Mar 06:24
1.0.35
b2a799a
Compare
Choose a tag to compare
  • Support non-static vector element types inside of unique ptr: UniquePtr<CxxVector<Thing<'a>>> (#760)
  • Expose a trait bound to enable working with CxxVector, UniquePtr, and SharedPtr inside of generic code (#762)

1.0.34

23 Mar 03:22
1.0.34
c37a665
Compare
Choose a tag to compare

1.0.33

18 Mar 21:14
1.0.33
516bb06
Compare
Choose a tag to compare
  • Provide trait impls of Eq, Ord, PartialOrd, Hash for CxxString, allowing it to be used as a HashMap or BTreeMap key (#743, thanks @b05902132)

1.0.32

16 Feb 21:38
1.0.32
72d47c9
Compare
Choose a tag to compare
  • Disallow placing an ineffective Drop impl on shared structs (#708, #711)
  • Support expanding type_id! macro inside of crates that have the cxx crate imported under a different name (#712)
  • Prevent rvalue instance of String, Str, Slice, Box, Vec as lhs of an assignment operator (#698)
  • Minor improvement to diagnostic placement on APIs without a handwritten visibility (#710)
  • Ship license files in the cxxbridge-flags implementation detail crate (#717, thanks @khardix)

1.0.31

09 Feb 07:53
1.0.31
f6e4420
Compare
Choose a tag to compare
  • Clarify error for using enum as method receiver (#688, thanks @fletcherw)
  • Fix unresolved symbol when working with rust::Vec<size_t> on macOS (#707, #705)

1.0.30

07 Feb 20:51
1.0.30
91a2d4a
Compare
Choose a tag to compare
  • Fix let_cxx_string! to allow use of lhs variable name in rhs initialization expression (#701)
  • Re-export cc's parallel build feature for cxx-build (#704, thanks @edsrzf)

1.0.29

27 Jan 19:43
1.0.29
45a1f88
Compare
Choose a tag to compare
  • Allow let_cxx_string! to work inside of async functions (#693)

1.0.28

14 Jan 19:39
1.0.28
23fe7e4
Compare
Choose a tag to compare
  • Fix a missing #include manifested on MSVC when using Rust slices or vectors (#675)

1.0.27

04 Jan 20:27
1.0.27
26cd914
Compare
Choose a tag to compare
  • Implement lifetime elision for member function receivers (#660, #661)

    #[cxx::bridge]
    mod ffi {
        unsafe extern "C++" {
            type Object<'a>;
    
            fn f(self: &Object);  // elided lifetimes equivalent to `fn f<'a, 'b>(self: &'a Object<'b>)`
            fn g(self: Pin<&mut Object>);  // elided lifetimes equivalent to `fn g<'a, 'b>(self: Pin<&'a mut Object<'b>>)`
        }
    }
  • Support Vec<&str> type (#662)

  • Improve error messages when failing to parse an extern fn (#659)