0.58.0
This release includes updates to metadata for new or fixed API definitions (#3111, #3136), various improvements and fixes to code generation, compliance with new Rust warnings, additional COM authoring support improvements (#3065), limited non-Windows support (#3135), and more.
It includes major updates to the following crates, mainly due to breaking changes in metadata for API definitions.
riddle
0.58.0windows
0.58.0windows-bindgen
0.58.0windows-core
0.58.0windows-implement
0.58.0windows-interface
0.58.0windows-metadata
0.58.0
It also includes major updates to the following utility crates.
windows-result
0.2.0windows-registry
0.2.0
The windows-result
crate now provides limited non-Windows support, and the windows-registry
crate offers new lossless queries for binary and wide string values.
And it includes minor updates to the windows-targets
crates, with the addition of several new APIs.
windows-targets
0.52.6
This release also includes the first published version of the windows-strings
crate, moving the string types from the windows-core
crate into a dedicated crate as a smaller dependency. It also offers an efficient HSTRING
builder (#3133).
To clarify, the only crates that continue to support limited non-Windows builds are:
windows-bindgen
andwindows-metadata
for code generation on non-Windows platforms.windows-core
andwindows-result
for COM support on non-Windows platforms.
What's Changed
- Fix default
rustfmt
for repo by @kennykerr in #3084 - Simplify standalone test by calling
windows-bindgen
directly by @kennykerr in #3086 - Disable docs and tests for test crates by @kennykerr in #3085
- Simplify pointer writes in generated code by @kennykerr in #3089
- Infer return type in generated bindings by @kennykerr in #3090
- Allow
windows-result
to work on non-Windows platforms by @sivadeilra in #3082 - Change tests/standalone so that a tool regenerates its sources by @sivadeilra in #3091
- Bump braces from 3.0.2 to 3.0.3 in /web/features by @dependabot in #3092
- Use malloc on non-Windows platforms by @sivadeilra in #3095
- COM interface impls move from MyApp to MyApp_Impl ("outer" object) by @sivadeilra in #3065
- Workaround for false dead code warning by @kennykerr in #3098
- The
Debug
derive macro does not need to be qualified by @kennykerr in #3097 - Harden detection of missing nested types by @kennykerr in #3099
- Use tools to generate bindings for library crates by @kennykerr in #3102
- Allow
unused
to deal with new warning about "unused" private fields in structs by @kennykerr in #3103 - Remove
mio
dependency by @kennykerr in #3107 - Support some edge cases for the next Win32 metadata update by @kennykerr in #3109
- Simplify how extension code for
windows
crate works by @sivadeilra in #3110 - Directly invoke bindgen instead of recursively calling
cargo run ...
by @sivadeilra in #3113 - Update Win32 metadata by @kennykerr in #3111
- Don't compile
windows
andwindows-sys
in unit test mode by @sivadeilra in #3112 - Remove unused dependencies by @kennykerr in #3117
- Test cross-compilation with stable gnullvm targets by @mati865 in #3104
- Add flexible registry type and byte query support by @kennykerr in #3120
- Remove unnecessary test cfg checks by @kennykerr in #3124
- Add
windows-strings
crate by @kennykerr in #3125 - Lock down
windows-core
internals by @kennykerr in #3129 - Remove "std" writer from
windows-bindgen
by @kennykerr in #3130 - Allow
Error
andResult<()>
to be the same size asHRESULT
by @sivadeilra in #3126 - Remove boxing support from
windows-core
crate by @kennykerr in #3131 - Use conventional testing for
windows_slim_errors
by @kennykerr in #3132 - Clarify support for non-Windows targets by @kennykerr in #3135
- Add
HSTRING
builder and registry support by @kennykerr in #3133 - Update Windows metadata to 10.0.26100.1 by @kennykerr in #3136
- Implement
Send
andSync
forWeak<T>
by @kennykerr in #3138 - Remove
Future
implementation by @kennykerr in #3142 - Ensure that
HSTRING
builder provides initialized memory by @kennykerr in #3141 - Make new
windows-strings
crate Windows-only by @kennykerr in #3143 - Release 0.58.0 by @kennykerr in #3140
Full Changelog: 0.57.0...0.58.0