Skip to content

Releases: mozilla/cbindgen

0.29.0

20 May 12:13
Compare
Choose a tag to compare

0.29.0

  • Support no-export annotation for statics and functions.
  • Fixed conditional fields of constexpr literal structs
  • Add rename rule for generated associated constant
  • Upgrade heck to 0.5
  • Add support for an optional nullable attribute
  • docs.md: Fix deprecated_with_note and deprecated_variant_with_note being spelled as 'notes'
  • Fix generic with "void" default
  • Fixed error generation of structures using the keyword as inside arrays
  • Added test for unsafe(no_mangle) attribute
  • Fixed handling of trait methods containing the unsafe attribute
  • Rename -Zparse-only

0.28.0

  • Parse unsafe attributes in #1020
  • Fix local override of enum prefix-with-name by jsgf in #1006
  • Add rename-all=prefix in #1021
  • ir: add support for UnsafeCell and SyncUnsafeCell by alekitto in #1003
  • Implement mangling for arrays in #1022
  • Fix: Ignore CARGO_BUILD_TARGET in tests by bryango in #1010
  • Newline for each field for constexpr field constants by youknowone in #988
  • Fix clippy warnings by youknowone in #1026
  • Add aarch64/arm64 to CI by NickeZ in #1036
  • Add unstable_ir feature flag that makes the ir pub by heesooy in #1011
  • Support generated a symbols file by TheElectronWill in #916

0.27.0

  • Revert: The Config struct now has a private member.
  • Allow users to specify a crate version for bindings generation (#901).
  • Update MSRV to 1.74 (#912, #987).
  • Support #[deprecated] on enum variants (#933).
  • Support integrating the package_version information in a header file comment (#939).
  • Add a language backend (#942).
  • Support generics with defaulted args (#959).
  • Add VaList compatibility (#970).

0.26.0

  • Fix swapping of >>= and <<= in constants.
  • Add support for #[deprecated] (#860).
  • Built-in support for bitflags 2.0.
  • Support for "C-unwind" ABI.
  • Generate bindings for non-public extern items if they are #[no_mangle].

0.28.0

15 Jan 11:37
Compare
Choose a tag to compare

0.28.0

  • Parse unsafe attributes in #1020
  • Fix local override of enum prefix-with-name by jsgf in #1006
  • Add rename-all=prefix in #1021
  • ir: add support for UnsafeCell and SyncUnsafeCell by alekitto in #1003
  • Implement mangling for arrays in #1022
  • Fix: Ignore CARGO_BUILD_TARGET in tests by bryango in #1010
  • Newline for each field for constexpr field constants by youknowone in #988
  • Fix clippy warnings by youknowone in #1026
  • Add aarch64/arm64 to CI by NickeZ in #1036
  • Add unstable_ir feature flag that makes the ir pub by heesooy in #1011
  • Support generated a symbols file by TheElectronWill in #916

v0.27.0

15 Jan 09:59
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v0.26.0...v0.27.0

0.26.0

13 Sep 19:46
703b53c
Compare
Choose a tag to compare
  • Fix swapping of >>= and <<= in constants.
  • Add support for #[deprecated] (#860).
  • Built-in support for bitflags 2.0.
  • Support for "C-unwind" ABI.
  • Generate bindings for non-public extern items if they are #[no_mangle].

v0.25.0

04 Sep 17:44
Compare
Choose a tag to compare
  * Re-release of yanked 0.24.6 as a major release
  * Update MSRV to 1.57
  * Support variadic arguments (`...`) (#805)
  * Add --depfile option (#820)
  * Breaking changes: The `Config` struct now has a private member.

v0.24.3

09 Jun 20:40
f43ccfc
Compare
Choose a tag to compare
  • Make struct expressions correctly generated through typedefs (#768).

v0.24.2

07 Jun 19:40
3d06ae1
Compare
Choose a tag to compare
  • Make bitfield operators use explicit constructors.

v0.24.1

07 Jun 17:41
Compare
Choose a tag to compare
  • Add support for unary negation (#765).
  • Make more bitfield operators constexpr (#765).

v0.24.0

07 Jun 14:24
f0d4f28
Compare
Choose a tag to compare
  • Basic const generic support (#759, #760 #762).
  • Suffixes on integer literals are now honored to avoid narrowing (#764).

v0.23.0

21 Apr 16:51
Compare
Choose a tag to compare
  • Better support for constexpr. (#756)
  • constexpr is now enabled by default in C++ mode. You can use const.allow_constexpr=false to revert to previous behavior. (#756)
  • Minimum syn version no longer parses old rust code. (#754)