Skip to main content

update-emitter

Update the TypeSpec emitter for Rust and optionally regenerate all clients

Source facts

Repository
Azure/azure-sdk-for-rust
Last source activity
August 31, 2026 at 16:53
Detected SKILL.md language
English
Stars
885
Forks
375

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

Showing SKILL.md

SKILL.md
Source instructions · Read-only preview
name
update-emitter
description
Update the TypeSpec emitter for Rust and optionally regenerate all clients
# Update the TypeSpec emitter Run `eng/scripts/Update-Emitter.ps1` to update `eng/emitter-package.json` to the latest `@azure-tools/typespec-rust` version and regenerate the lock file. ## Regenerating clients After updating the emitter, service crates should be regenerated to pick up the new version. Use the repository-pinned `tsp-client`; do not invoke a globally installed binary. From the repository root, install its locked dependencies: ```bash _TspClientDir="$(pwd)/eng/common/tsp-client" npm ci --prefix "$_TspClientDir" ``` Run `tsp-client` with `npm exec --prefix "$_TspClientDir" --no --` while the current directory is the client library root. Service owners should regenerate only their own service crates. To regenerate a single crate: ```bash cd sdk/{service-directory}/{crate-directory} npm exec --prefix "$_TspClientDir" --no -- tsp-client update ``` To regenerate all crates under a service directory from the repository root: ```bash find sdk/{service-directory} -name tsp-location.yaml -execdir \ npm exec --prefix "$_TspClientDir" --no -- tsp-client update \; ``` See [`eng/common/tsp-client/README.md`](../../../eng/common/tsp-client/README.md) for prerequisites, additional commands, and package management details. ## After regenerating - Build and test each affected crate to verify correctness. - Review any changes to public APIs and update each crate's `CHANGELOG.md` accordingly.
View on GitHub