Releases: microsoft/windows-rs
0.48.4
A user reported issues with using Rust 1.48 with windows-targets
. It is quite difficult to validate as that is such an old version of Rust, but this tweak should address the compatibility concern.
This just flips windows-targets
and the arch-specific crates to use Rust edition 2018.
What's Changed
- 0.48.4 by @kennykerr in #2613
Full Changelog: 0.51.1...0.48.4
0.51.1
This is mainly for publishing an update of the windows-bindgen
crate but also fixes a few minor readme and version issues to avoid confusion.
- The
windows
andwindows-core
crates are updated to 0.51.1 to update the readme but are otherwise unchanged. - The
windows-targets
crate and arch-specific crates are updated to 0.48.3 to update the readme and bring the lib file names in line with the crate version.
Those are all semver-compatible updates.
- The
windows-bindgen
crate is updated to 0.51.1 and includes the new riddle-based metadata processing capabilities and is compatible with thewindows
andwindows-core
crates. - The
windows-metadata
crate is updated to 0.51.1 and includes many refinements but is largely for internal use.
Those are major breaking changes.
The windows-sys
crate will not be updated at this time.
What's Changed
- Make
riddle
available as a library by @kennykerr in #2609 - Improve
windows-bindgen
forstd
usage by @kennykerr in #2610 - Version 0.51.1 by @kennykerr in #2611
Full Changelog: 0.51.0...0.51.1
0.51.0
As requested by #2603, this update includes the first published update to the windows crate in 5 months. As a reminder, updates are only published by request.
- This includes a semver-compatible update to the windows-targets crate.
- The
windows
crate now depends on the windows-core crate. - The
windows
,windows-core
,windows-implement
, andwindows-interface
crates have been bumped to version 0.51.0 as there have been breaking changes. - The
windows-targets
crate has been bumped to version 0.48.2 as it remains compatible with previous versions. - Notably, an expanded set of WDK APIs are now available.
- Other crates will not be updated at this time.
What's Changed
- Ensure that all nullable params support
None
by @kennykerr in #2535 - Lock readme samples to last published version by @kennykerr in #2538
- Consolidate code generation by @kennykerr in #2544
- Add reference for spurious warning about
cdylib
dependency by @kennykerr in #2545 - Minor refactoring following #2544 by @kennykerr in #2546
- Test cross platform code generation by @kennykerr in #2547
- Run code formatting workflow on Linux by @kennykerr in #2548
- Riddle fixes and improvements by @kennykerr in #2549
- Improve rust output and formatting by @kennykerr in #2550
- Improve panic diagnostics by @kennykerr in #2551
- Update metadata readme.md by @kennykerr in #2553
- Add initial riddle support for methods and parameters by @kennykerr in #2554
windows-targets
0.48.1 by @kennykerr in #2558- Add CredEnumerate sample by @riverar in #2559
- Tweak riddle arguments by @riverar in #2563
AsImpl::as_impl
should be unsafe by @kennykerr in #2565- Add comment for suspect clippy warning by @kennykerr in #2567
- Move to Rust edition 2021 and version 1.56 by @kennykerr in #2568
- Resolve clippy warning in tear-off by @kennykerr in #2569
- Update Win32 and WDK metadata by @kennykerr in #2573
- Metadata parsing and indexing improvements by @kennykerr in #2581
- Prefer explicit casts by @kennykerr in #2582
- Riddle dialects by @kennykerr in #2586
- Metadata parsing improvements by @kennykerr in #2592
- Metadata processing improvements by @kennykerr in #2598
- Version 0.51.0 by @kennykerr in #2605
Full Changelog: 0.50.0...0.51.0
windows-targets 0.48.1
This is a semver-compatible update to the windows-targets crate to improve gnullvm compatibility by including #2515 as requested in #2557.
Other crates will not be updated at this time.
windows-core 0.50.0
This update includes the first published version of the windows-core
crate (#2475) as requested in #2527.
Other crates will not be updated at this time.
What's Changed
- Preliminary support for variadic functions by @kennykerr in #2457
- Workaround for variadic API function support by @kennykerr in #2458
- Improve metadata reader's
type_def_extends
to returnOption
by @kennykerr in #2460 - Add baseline readme by @kennykerr in #2461
- Smarter filtering for
windows-sys
generation by @kennykerr in #2465 - Introduce
windows-core
crate by @kennykerr in #2475 - Transform
BOOL
andWin32
return values by @kennykerr in #2476 - Hide
standalone_std
function by @kennykerr in #2477 - Include nested dependencies in standalone code generation by @Jake-Shadle in #2480
- Improve bindings in
windows-core
crate by @kennykerr in #2482 - Further simplify
windows-core
bindings by @kennykerr in #2483 - Support overloads in standalone code generation by @kennykerr in #2486
- Stabilize
raw_dylib
anddebugger_visualizer
by @kennykerr in #2497 - Collect all typedefs with same name by @Jake-Shadle in #2495
- Remove unused field by @kennykerr in #2503
- Fix constant type collection by @Jake-Shadle in #2505
- Only exclude inline function constants by @kennykerr in #2506
- Update to riddle and metadata generation by @kennykerr in #2510
- Tweak web syndication sample to work with more web servers by @kennykerr in #2512
- Metadata generation progress by @kennykerr in #2516
- Avoid using unstable target abi feature by @mati865 in #2515
- Improved attribute parsing and generation by @kennykerr in #2518
- Update
syn
dependency by @kennykerr in #2519 - Metadata parsing and generation by @kennykerr in #2525
- Use
std::mem::zeroed
with type inference by @kennykerr in #2526 - Implement
std::error::Error
for new metadataError
type by @MarijnS95 in #2528 - Version 0.50.0 by @kennykerr in #2529
Full Changelog: 0.49.0...0.50.0
0.49.0
An update to the windows-bindgen
and windows-metadata
crates, as requested in rust-lang/rust#110152 (comment).
Other crates will not be updated at this time.
What's Changed
- Standalone code generation now includes dependencies automatically by @kennykerr in #2416
- Limit core types for standalone code generation by @kennykerr in #2421
- Improved metadata diagnostic for invalid or missing nested types by @kennykerr in #2423
- Support multi-arch definitions in standalone code generation by @kennykerr in #2426
- Improve link formatting by @kennykerr in #2428
- Produce conservative enum definitions in standalone code generation by @kennykerr in #2430
- Enable additional
raw-dylib
testing by @kennykerr in #2433 - Small fix for standalone generation of individual enumerators by @kennykerr in #2434
- Add standalone code generation support for the Rust Standard Library by @kennykerr in #2439
- Adds
link_name
support to thewindows-targets
crate by @kennykerr in #2440 - Win32 metadata workarounds by @kennykerr in #2441
- Consolidate formatting code by @kennykerr in #2442
- Streamlined Win32 metadata iteration by @kennykerr in #2444
- Simplified link generation by @kennykerr in #2445
- Hardening for empty structs by @kennykerr in #2447
- Update Win32 v49 and WDK v4 by @kennykerr in #2446
- Remove metadata workarounds by @kennykerr in #2448
- Fix
link_name
generation in standalone code generation by @kennykerr in #2450 - Version 0.49.0 by @kennykerr in #2454
Full Changelog: 0.48.0...0.49.0
0.48.0
This release includes an update to all crates to address a target version reliability issue. This issue is detailed here: #2410 (comment)
What's Changed
- Improve target version reliability by @kennykerr in #2412
Full Changelog: 0.47.0...0.48.0
0.47.0
As a reminder, updates are only published by request (#2397; microsoft/win32metadata#1507). This release provides an update to the windows
crate. It does not include an update to the windows-sys
crate.
This update adds support for standalone code generation (#2396) as well as requested fixes to the Win32 metadata that prevented some APIs from being used.
What's Changed
- Workaround for
rustdoc
regression by @kennykerr in #2381 - Token privilege samples by @kennykerr in #2382
- Apply
const
parameter metadata by @kennykerr in #2384 - Advanced metadata filtering by @kennykerr in #2385
- Update Win32 metadata v46 by @kennykerr in #2387
- Support standalone code generation by @kennykerr in #2396
- Update readme to include
windows-targets
andwindows-bindgen
by @kennykerr in #2399 - Update Win32 metadata v47 by @kennykerr in #2400
- Version 0.47.0 by @kennykerr in #2401
- Add CLR test for lib validation by @kennykerr in #2403
- Restore reproducible libs by @riverar in #2402
- Check diff for all targets by @kennykerr in #2404
Full Changelog: 0.46.0...0.47.0
0.46.0
As a reminder, updates are only published by request (#2380). This release provides an update to the windows
crate. It does not include an update to the windows-sys
crate.
This is the first update to the windows
crate in about 2 months and includes numerous improvements as well as updated API definitions via the Win32 metadata. Notably, the windows
crate now sports streamlined and much simpler type traits (#2343) and parameter bindings (#2360). It includes the first steps towards WDK support (#2358), and it finally includes stock collection implementations (#91).
Please note that the ComInterface
trait is now required to call the cast
function (#2360).
What's Changed
- Add link from docs.rs to full API documentation by @ChrisDenton in #2297
- Simplify COM implementation traits by @kennykerr in #2301
- Fix test component re-build reliability by @kennykerr in #2303
- Metadata writer refactoring by @kennykerr in #2309
- Lower MSRV for the
windows
crate by @kennykerr in #2318 - Ongoing metadata writer improvements and new command line tool by @kennykerr in #2319
- Improve clippy workflow by @kennykerr in #2320
- Improve crates.io metadata by @kennykerr in #2321
- Add
raw-dylib
testing withnightly-i686-pc-windows-gnu
by @kennykerr in #2312 - Update Win32 metadata by @kennykerr in #2322
- Generate
contains
method for enum flags by @kennykerr in #2323 - Improved
riddle
syntax parsing and testing by @kennykerr in #2324 - metadata
Reader::attribute_args
enhancements by @ChrisDenton in #2329 - Metadata reader: Preserve type when reading enum values in attributes by @ChrisDenton in #2331
- Simplify namespace extensions in the
windows-bindgen
crate by @kennykerr in #2339 - Simplify
windows::core
type traits by @kennykerr in #2343 - Stock collection support for
IIterable
by @kennykerr in #2346 - Specifically exclude
Windows.Win32.Web.MsHtml
by @kennykerr in #2348 - Move
IInspectable
extensions fromwindows::core
towindows::Foundation
by @kennykerr in #2349 - Stock collection support for
IVectorView
by @kennykerr in #2350 - Stock collection support for
IMapView
by @kennykerr in #2353 - Update Win32 metadata by @kennykerr in #2357
- Add support for the WDK metadata by @kennykerr in #2358
- Simplify parameter bindings by @kennykerr in #2360
- Drop
ManuallyDrop
by @kennykerr in #2361 - Simplify
Array
usage with non-WinRT types by @kennykerr in #2362 - Don't store redundant copy of assembly name by @kennykerr in #2363
- Update Win32 metadata by @kennykerr in #2364
- Enable hosted lib generation by @kennykerr in #2365
- Remove
prettyplease
dependency by @kennykerr in #2367 - Support aggregate constant initialization by @kennykerr in #2371
- Simplify parameter binding for
BSTR
by @kennykerr in #2372 - Update Win32 metadata by @kennykerr in #2374
- Minor polish of
windows::core
docs by @kennykerr in #2376 - Remap
CHAR
tou8
by @kennykerr in #2378 - Version 0.46.0 by @kennykerr in #2380
Full Changelog: 0.44.0...0.46.0
0.45.0
As a reminder, updates are only published by request (#2299). This release provides an update to the windows-sys
crate. It does not include an update to the windows
crate.
This is the first update to the windows-sys
crate in 4 months and primarily includes a number of fixes stemming from improvements to the Win32 metadata. Optional support for raw-dylib
is now also provided.
What's Changed
- Remove field
cfg
attribute queries by @kennykerr in #2280 - Only show visible windows and include x/y in output by @jessemcdowell in #2284
- Linux build support by @kennykerr in #2290
- Slices should use default (optional) type by @kennykerr in #2293
- Version 0.45 by @kennykerr in #2299
New Contributors
- @jessemcdowell made their first contribution in #2284
Changelog for windows-sys
crate: 0.42.0...0.45.0