Releases: google/autocxx
0.27.0
What's Changed
- Documentation about C++ versions. by @adetaylor in #1305
- Further documentation on C++ versions. by @adetaylor in #1306
- Newtype wrapper for more concise syn debug output. by @adetaylor in #1309
- Remove commented Cargo line by @adetaylor in #1310
- cargo update by @adetaylor in #1315
- Explicitly reject bitfields by @adetaylor in #1313
- Fix badly named alloc function - fixes #1318 by @adetaylor in #1323
- Clippy fixes. by @adetaylor in #1324
- Test behavior when subclassing something that depends on opaque types by @adetaylor in #1330
- Clippy fix. by @adetaylor in #1335
- Missing stdints. by @adetaylor in #1340
- Bump rustix from 0.37.23 to 0.37.25 by @dependabot in #1338
- Add some missing headers. by @adetaylor in #1344
- Fix unused import warnings. by @adetaylor in #1345
- Clippy fix. by @adetaylor in #1352
- Remove redundant fields. by @adetaylor in #1354
- Add integration tests for functions taking array parameters by @EdmundGoodman in #1353
- Bump shlex from 1.1.0 to 1.3.0 by @dependabot in #1359
- Potential fix for nightly problem. by @adetaylor in #1364
- ci: Use GITHUB_OUTPUT envvar instead of set-output command by @arunsathiya in #1357
- Avoid UB on opaque types. by @adetaylor in #1365
- Some clippy fixes. by @adetaylor in #1367
- Clippy fixes by @adetaylor in #1372
- Fix doc indentation by @adetaylor in #1375
- Revise to autocxx-bindgen 0.69.4. by @adetaylor in #1376
- Revise to 0.27.0 by @adetaylor in #1377
New Contributors
- @dependabot made their first contribution in #1338
- @EdmundGoodman made their first contribution in #1353
- @arunsathiya made their first contribution in #1357
Full Changelog: v0.26.0...v0.27.0
v0.26.0
Compatibility breaks
** You may need to replace EmplaceUnpinned
with Emplace
.
Changes
- Test and fix for 1289 ("Support for anonymous enums") by @badicsalex in #1291
- Fix moveit unsoundness by @adetaylor in #1298 (mostly thanks to @silvanshade!)
- Upgrade to bindgen 0.65.1. by @maurer in #1293
- Fix namespaced destructors and reject unions by @adetaylor in #1264
- fix: feature flag for runtime by @gen-xu in #1277
- Fix diagnostics for in-line subclass macro. by @adetaylor in #1283
- cargo update to remove vulnerable version of time. by @adetaylor in #1284
- Clippy fix. by @adetaylor in #1288
- Update issue templates by @adetaylor in #1290
- Update to syn-2 by @maurer in #1286
- Reference wrapper changes by @adetaylor in #1292
- Fix reference wrappers + mutable refs problem. by @adetaylor in #1295 and #1296
- Add test for unsoundness. by @adetaylor in #1274
- Testing and documenting dynamic dispatch for CppRef. by @adetaylor in #1297
- Add va_list test. by @adetaylor in #1263
- Better diagnostics for pointer-to-pointer cases by @adetaylor in #1272
- Add comment explaining RValueParamHandler. by @adetaylor in #1273
- Fix typo. by @adetaylor in #1275
New Contributors
- @gen-xu made their first contribution in #1277
- @badicsalex made their first contribution in #1291
- @maurer made their first contribution in #1286
- @silvanshade made their first contribution in #1285
Full Changelog: v0.25.0...v0.26.0
v0.25.0
What's Changed
Features
- Allow constructing subclass of abstract class by @russelltg in #1206
- Add an option to
autocxx_gen
to createcxx.h
by @nak3 in #1253 - Print the number of files generated in the error of
--generate-exact
by @nak3 in #1247
Bug fixes
- Fix a multiple definition error by @adetaylor in #1240 (add test for issue #1229 by @VirxEC in #1235)
- Reduce the number of dependencies on std by @kitlith in #1224
- Remove no mod found error by @adetaylor in #1242
- Fix problem using copy constructor of Box by @adetaylor in #1241
- Fix codegen of 'missing lifetimes' when functions have
&mut
return but no&mut
params by @adetaylor in #1254 - Automatically create
outdir
if it doesn't exist by @Jake-Shadle in #1225
Documentation and examples
- Add some generic advice about linking. by @adetaylor in #1227
- Make help message of
gen-rs-include
accurate by @nak3 in #1234 - Fix comment about
AUTOCXX_RS_JSON_ARCHIVE
by @nak3 in #1232 - Do not use deprecated macro
is_subclass
in examples by @nak3 in #1245 - Add llvm example for CI by @nak3 in #1248
- fix 404 in examples document by @htynkn in #1257
Miscellaneous
- Revise to 0.25.0. by @adetaylor in #1258
- Fix
remove_dir_all
security alert by @adetaylor in #1259 - Tests forcing wrappers by @adetaylor in #1250
- Tweaks to reduction by @adetaylor in #1249
New Contributors (thanks all!)
- @Jake-Shadle made their first contribution in #1225
- @kitlith made their first contribution in #1224
- @VirxEC made their first contribution in #1235
- @russelltg made their first contribution in #1206
- @htynkn made their first contribution in #1257
Full Changelog: v0.24.0...v0.25.0
v0.24.0
What's Changed: new minor features
- Support
pod
extern_cpp_types
by @adetaylor in #1193 - Relatedly: Add documentation about the limits of
extern_cpp_types
by @adetaylor in #1221
What's Changed: useful bugfixes
- Fix enum
u16
representation. by @adetaylor in #1223 - Avoid unnecessary rebuilds by @adetaylor in #1219
- Make cxxgen.h names predictable in autocxx-build by @adetaylor in #1220
What's changed: other stuff
- Clippy fixes by @adetaylor in #1199
- Add a note about unsafety of reference wrappers. by @adetaylor in #1202
- Bump autocxx version in examples/llvm by @nak3 in #1213
- Fix typo in autocxx::concrete by @nak3 in #1209
- Bump miette to v5.x for examples/cpp_calling_rust by @nak3 in #1208
- Remove unnecessary memory include in subclass examples by @nak3 in #1210
- Update building.md to include flag syntax for msvc by @aaronrsiphone in #1203
- Latest clippy checks by @adetaylor in #1216
- Improve diagnostics for wrong filename by @adetaylor in #1218
- Fix doc build issue by @adetaylor in #1217
- Revise to 0.24.0 by @adetaylor in #1222
- Cargo publish now waits automatically. by @adetaylor in #1226
New Contributors
- @nak3 made their first contribution in #1213 (thanks!)
- @aaronrsiphone made their first contribution in #1203 (thanks!)
- Thanks also to those who raised bug reports
Full Changelog: v0.23.1...v0.24.0
v0.23.1
What's Changed
- Fix problem with field circular dependencies by @adetaylor in #1187
- Revise to 0.23.1 by @adetaylor in #1188
Full Changelog: v0.23.0...v0.23.1
v0.23.0
What's Changed
The major change here is a lot of rework of the safety!(unsafe_references_wrapped)
mode, based on the researches done here. This is a compatibility break, but only if you're using that mode.
- Rewrite reference_wrapper.rs to be structs. by @adetaylor in #1164
There are also significant bug fixes to extern_rust_type!()
as noted below.
Other features
- Support
extern_cpp_type!
with a different name by @bsilver8192 in #1150 (thanks!)
Bug fixes
- Fix problem with functions returning references which took non-reference parameters. by @adetaylor in #1156
- Merge bindgen upstream 0.62 by @adetaylor in #1183 (fixes an incompatibility with the latest clang, #1182)
- Fix 1161 by @adetaylor in #1162 (a problem with
extern_rust_type
) - Extern rust fun type checking by @adetaylor in #1168 (thanks to "Add failing test for extern_rust_function" by @Ravenslofty in #1166)
- Fix movability of structs with enum fields by @adetaylor in #1179
Misc changes
- Remove extra logging by @adetaylor in #1157
- Rust 1.64 clippy lint. by @adetaylor in #1160
- Partial fix for issue 1097. by @adetaylor in #1158
- Revise cxx to 1.0.78. by @adetaylor in #1163
- Slight reduction speedup. by @adetaylor in #1171
- Format tomls by @adetaylor in #1175
- Update deps, format TOML by @vorot93 in #1152
- Adding a test. by @adetaylor in #1173
- Remove dependency on rustc_version. by @adetaylor in #1176
- Reduce includes a call to
rustc
by @adetaylor in #1172 - Nightly clippies by @adetaylor in #1184
- Work towards handling
=default
functions by @adetaylor in #1180
New Contributors
- @Ravenslofty made their first contribution in #1166
- @vorot93 made their first contribution in #1152
Full Changelog: v0.22.4...v0.23.0
v0.22.4
What's Changed
- Pretty print using prettyplease instead of rustfmt by @dtolnay in #1127
- Disable windows GNU by @adetaylor in #1136
- Bump mdbook to fix build on nightly by @bsilver8192 in #1139
- Generate
impl UniquePtr
for abstract types too by @bsilver8192 in #1137 - Fix new clippy and doc warnings in 1.63.0 by @bsilver8192 in #1148
- Support multiple AUTOCXX_RS_JSON_ARCHIVE entries by @bsilver8192 in #1147
- Add failing test case, issue 1143 by @boydjohnson in #1145
- Revise to autocxx-bindgen 0.60.1 by @adetaylor in #1149
- Update autocxx-bindgen and bump version to 0.22.4 by @chbaker0 in #1153
- Revise to 0.22.4. by @adetaylor in #1154
New Contributors
- @boydjohnson made their first contribution in #1145
Full Changelog: v0.22.3...v0.22.4
v0.22.3
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.
- Detect segfaults in reduction by @adetaylor in #1123
- Add test for issue 1125. by @adetaylor in #1126
- Introduce C++ reference wrappers by @adetaylor in #1070
- Revise to 0.22.3. by @adetaylor in #1131
Full Changelog: v0.22.2...v0.22.3
v0.22.2
What's Changed
- Slight speed improvement: tell bindgen to skip rustfmt by @bsilver8192 in #1109
- Replace lingering tempdir usages with tempfile by @chbaker0 in #1120
- Minor doc updates. by @adetaylor in #1117
- Fix faulty test_fixed_num test. by @adetaylor in #1118
New Contributors
Full Changelog: v0.22.1...v0.22.2
v0.22.1
What's Changed
One new feature:
- Add a function to upcast UniquePtr by @bsilver8192 in #1112 (thanks!)
A roll of the minimum cxx version to work around a new clippy warning:
- Roll cxx minimal version. by @adetaylor in #1104
Lots of bug fixes:
- Solve anonymous namespaces and other problems by @adetaylor in #1088
- Ignore types named
_bindgen_ty
by @adetaylor in #1091 - Alter mdbook-mermaid installation. by @adetaylor in #1102
- Succeeding test for issue 1081 by @adetaylor in #1101
- Fix and test extern_cpp_type with type in a C++ namespace by @bsilver8192 in #1100
- Adding lots of ignored tests by @adetaylor in #1106
- Reject type params in typedefs by @adetaylor in #1108
- Issue 1094 by @adetaylor in #1095
- Fix #1092. by @adetaylor in #1093
- Reject typedefs to anon namespaces. by @adetaylor in #1107
- Fix and test subclass without
safety!(unsafe)
by @bsilver8192 in #1111 - Fix and test subclasses with C++ std in scope by @bsilver8192 in #1110
There is currently a known soundness problem, as noted in #1006.
Full Changelog: v0.22.0...v0.22.1