mirror of
https://github.com/quickwit-oss/tantivy.git
synced 2025-12-22 18:19:58 +00:00
39 lines
1.2 KiB
Markdown
39 lines
1.2 KiB
Markdown
# Releasing a new Tantivy Version
|
|
|
|
## Steps
|
|
|
|
1. Identify new packages in workspace since last release
|
|
2. Identify changed packages in workspace since last release
|
|
3. Bump version in `Cargo.toml` and their dependents for all changed packages
|
|
4. Update version of root `Cargo.toml`
|
|
5. Publish version starting with leaf nodes
|
|
6. Set git tag with new version
|
|
|
|
|
|
[`cargo-release`](https://github.com/crate-ci/cargo-release) will help us with steps 1-5:
|
|
|
|
Replace prev-tag-name
|
|
```bash
|
|
cargo release --workspace --no-publish -v --prev-tag-name 0.24 --push-remote origin minor --no-tag
|
|
```
|
|
|
|
`no-tag` or it will create tags for all the subpackages
|
|
|
|
cargo release will _not_ ignore unchanged packages, but it will print warnings for them.
|
|
e.g. "warning: updating ownedbytes to 0.10.0 despite no changes made since tag 0.24"
|
|
|
|
We need to manually ignore these unchanged packages
|
|
```bash
|
|
cargo release --workspace --no-publish -v --prev-tag-name 0.24 --push-remote origin minor --no-tag --exclude tokenizer-api
|
|
```
|
|
|
|
Add `--execute` to actually publish the packages, otherwise it will only print the commands that would be run.
|
|
|
|
### Tag Version
|
|
```bash
|
|
git tag 0.25.0
|
|
git push upstream tag 0.25.0
|
|
```
|
|
|
|
|