32 lines
811 B
Markdown
32 lines
811 B
Markdown
# Releasing
|
|
|
|
Releasing involves upgrading dependencies, bumping versions,
|
|
tagging in git, and publishing to crates.io.
|
|
|
|
### Upgrading dependencies
|
|
|
|
Using VS Code and [the crates extension](https://marketplace.visualstudio.com/items?itemName=serayuzgur.crates), upgrade any outdated dependencies.
|
|
|
|
Commit this change to current release branch.
|
|
|
|
### Release new version
|
|
|
|
```
|
|
cargo set-version --bump patch
|
|
VERSION="$(tomlq -r .package.version Cargo.toml)"
|
|
git add Cargo.toml Cargo.lock
|
|
git commit -m "release $VERSION"
|
|
git merge main
|
|
git checkout main
|
|
git merge dev
|
|
git tag "$VERSION"
|
|
git checkout dev
|
|
cargo set-version --bump alpha
|
|
NEW_VERSION="$(tomlq -r .package.version Cargo.toml)"
|
|
git add Cargo.toml Cargo.lock
|
|
git commit -m "a new version appears: $NEW_VERSION
|
|
```
|
|
|
|
### Publish to crates.io
|
|
|
|
cargo publish |