Skip to content

Releases: mozilla/cbindgen

v0.21.0

25 Mar 17:56
b3de1dc
Compare
Choose a tag to compare
  • Update MSRV to 1.54.0
  • Update clap to 3.1.
  • Update heck to 0.4.0
  • unraw identifiers
  • Honor documentation_length in Cython.
  • Add documentation_style to with short and full options
  • Map RawFd to Int
  • Respect remove_underscores config when prefixing name to enum

v0.20.0

29 Jul 12:33
41506d5
Compare
Choose a tag to compare
  • Add Builder::with_using_namespaces. (#688)
  • Ignore PhantomPinned. (#695)
  • Simplify Pin to T. (#697)
  • Update --pretty=expanded to -Zunpretty=expanded. (#706)

v0.19.0

08 Apr 16:23
d9e490c
Compare
Choose a tag to compare
  • Simplify types in generics (#663)
  • Use --profile=check for macro expansion (#671)
  • Use exported name to prefix enum variants (#672)
  • Fix path attribute handling in inline submodules (#679)
  • Fix a stack overflow with some recursive typedefs (#680)

v0.18.0

26 Feb 19:15
a0dc1a1
Compare
Choose a tag to compare
  • Simplify types in nested types such as pointed-to types and function signatures (#661)

v0.17.0

01 Feb 13:02
8236c82
Compare
Choose a tag to compare
  • Add with_parse_extra_bindings to builder. (#645)
  • Support NonZero and fix incorrect simplification of Option into ptr. (#647)
  • Deal with name conflicts correctly in declaration type resolution. (#651)
  • Support pointers to ZSTs. (#656)

v0.16.0

20 Dec 23:18
a00b421
Compare
Choose a tag to compare
     * Remove artificial restriction on lifetime parameters on enums (#604)
     * Add an option for converting usize/isize into size_t/ptrdiff_t. (#606)
     * Allow controlling the cargo profile used for expansion. (#607)
     * Support wider range of expressions in enum discriminants (#614)
     * Support generation of Cython bindings (#590)
     * Fixed some issues with style=tag and recursive structs (#615)
     * Default C style to Both (as specified in docs) (#615)
     * Fix resolution of path dependencies from certain modules. (#629)
     * Support inlined definitions for tuple variants with a single field in C (#631)

    Thanks to all the awesome contributors that contributed to this release.

v0.15.0

07 Oct 10:57
83b3be9
Compare
Choose a tag to compare
  * Allow customizing mangling of generic parameters in C (#575)
  * Box<T> simplifies to T* in C (4ce324c)
  * ManuallyDrop<T> and MaubeUninit<T> simplify to T in C, and are opaque in C++ (0076a17)
  * C++ supports a derive-ostream annotation to derive serialization of structs, unions and enums (#582)
  * Large character constants have been fixed on Windows (#586)
  * Constants are now generated for typedefs, etc (#589)
  * The `sort_by` configuration option has been made to work for constants (#587)
  * Default sort order is source order now (sort_by = "None"), and can be changed by the above option (#587)

v0.14.6

21 Sep 19:02
e4da7d3
Compare
Choose a tag to compare
v0.14.6

v0.14.5

19 Sep 14:29
1e46e53
Compare
Choose a tag to compare
     * Add support to specify line ending style (#568)
     * Add cbindgen:ptrs-as-arrays annotation to allow making function
       arguments C/C++ arrays.

v0.14.4

20 Aug 17:00
83cdbd8
Compare
Choose a tag to compare
     * Allow to override the mangling separator (#502)

     * cbindgen now handles better having ZSTs in template parameters, and
       default template parameters (#563).

     * Support for annotating nonnull pointers (#558)

     * Fixed bitflags that overflow a signed integer (#556)

     * Support for wildcard argument names (#550)

     * Support for the never return type, with configurable annotation (#549)

     * Properly reject arrays as function arguments (#540)