mirror of https://github.com/smithy-lang/smithy-rs
6ffd99000b
This PR implements a build tool to audit runtime crate versions as part of CI and release. If a runtime crate doesn't have the special `0.0.0-smithy-rs-head` version number, then it is assumed to be independently versioned, and the audit tool will verify it is version bumped when any changes are made to it. Given that there isn't a complete/reliable semver checking tool for Rust yet, this tool isn't smart. It will rely on devs to correctly bump the version number when that is done. ---- _By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice._ |
||
---|---|---|
.. | ||
src | ||
Cargo.lock | ||
Cargo.toml | ||
README.md |
README.md
sdk-versioner
This is a CLI tool that will recursively update all references to the AWS Rust SDK in Cargo.toml files in a given directory. That is, it finds every Cargo.toml file nested within that directory, and modifies dependency lines that point to the AWS Rust SDK or its supporting crates. These dependencies can be updated to be based on file-system path, crates.io version, or both.
Example updating SDK examples to use SDK version 0.5.0 with Smithy version 0.35.0:
$ sdk-versioner \
--sdk-version 0.5.0 \
--smithy-version 0.35.0 \
path/to/aws-doc-sdk-examples/rustv1
Example updating SDK examples to refer to local generated code:
$ sdk-versioner \
--sdk-path path/to/smithy-rs/aws/sdk/build/aws-sdk/sdk \
path/to/aws-doc-sdk-examples/rustv1