Skip to content

Conversation

@anakrish
Copy link
Collaborator

@anakrish anakrish commented Jan 14, 2026

  • split the xtask crate into structured modules for
    • bindings
    • ci
    • dev
    • util
    • no-std
  • Adding commands for
    • ci-release/ci-debug
    • MUSL/no-std
    • per- binding language smoke tests
    • developer tasks (fmt, clippy, pre-commit, pre-push)
  • refresh Cargo manifests/locks, binding readmes, and shared FFI helpers so every binding reuses the same preparation steps
  • refactor GitHub Actions (release/debug, extensions, CodeQL, clippy, bindings) to call the new xtask commands
  • Use rust-cache in ci workflows (microsoft qdk also does this)
  • extend README with a contributor workflow section describing how xtask mirrors CI expectations
  • update pre-commit and pre-push hooks to use the xtask dev commands

WORKAROUND:
When dotnet is run from an xtask, codeql tracer intercepts it an routes to a nonexistent binary.
Therefore in codeql workflow, xtask is not used for c# and instead dotnet is directly invoked.
Tracked by #545

closes #475

@anakrish anakrish force-pushed the bindings-xtasks branch 13 times, most recently from 92139f9 to 90f21f1 Compare January 16, 2026 16:21
- split the xtask crate into structured modules for
  - bindings
  - ci
  - dev
  - util
  - no-std
- Adding commands for
  - ci-release/ci-debug
  - MUSL/no-std
  - per- binding language smoke tests
  - developer tasks (fmt, clippy, pre-commit, pre-push)
- refresh Cargo manifests/locks, binding readmes, and shared FFI helpers so every binding reuses the same preparation steps
- refactor GitHub Actions (release/debug, extensions, CodeQL, clippy, bindings) to call the new xtask commands
- Use rust-cache in ci workflows (microsoft qdk also does this)
- extend README with a contributor workflow section describing how xtask mirrors CI expectations
- update pre-commit and pre-push hooks to use the xtask dev commands

WORKAROUND:
When dotnet is run from an xtask, codeql tracer intercepts it an routes to a nonexistent binary.
Therefore in codeql workflow, xtask is not used for c# and instead dotnet is directly invoked.
Tracked by microsoft#545

closes microsoft#475

Signed-off-by: Anand Krishnamoorthi <anakrish@microsoft.com>
@anakrish anakrish marked this pull request as ready for review January 18, 2026 00:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Provide tooling to check language binding generation on pre-push

1 participant