AccessKit / AccessKit/accesskit

Update to focused 0.100 windows crates to follow Microsoft guidance

Open
#802 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Rust
Stars
1.5k
Forks
114
Avg merge
8h 25m
Merged PRs (30d)
28

Description

Replace windows with focused Windows 0.100.0 bindings. This is done to follow Microsft Upstream guidance here:

https://github.com/microsoft/windows-rs

Prefer the focused crates below when they cover the functionality you need. For additional APIs, windows-bindgen can generate a minimal project-specific binding, while windows and windows-sys provide broad API coverage behind feature flags for binary applications.

Reusable libraries should avoid the windows and windows-sys umbrella crates. They add dependency weight and version churn, and several libraries can bring incompatible versions of the same large crate into one dependency tree. Prefer the focused crates for shared Windows types and generate any remaining private bindings with windows-bindgen.

https://github.com/AccessKit/accesskit/blob/main/adapters/windows/Cargo.toml#L26-L39

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the Windows dependency declarations in adapters/windows/Cargo.toml and compare them with the focused Windows 0.100.0 crates recommended by Microsoft. Trace the existing Windows API usage to identify required bindings, then run the relevant Cargo checks; done means the umbrella windows dependency is replaced without breaking the Windows adapter.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
build-system, operating-systems
Issue type
Refactor
Difficulty
3/5
Estimated time
1-2 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
68/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.