# in avro-rs Git clone
git switch main && git pull --rebase
# update the version in Cargo.toml files to 0.21.0
git commit -am "Update version to 0.21.0"
git tag -s rel/release-0.21.0-rc0 -m "Avro-rs 0.21.0 RC0 release."
git archive HEAD -o apache-avro-rs-0.21.0-RC0.tgz
git push origin rel/release-0.21.0-rc0
Note: make sure your GPG key is in https://dist.apache.org/repos/dist/release/avro/KEYS
# checkout the 'dev' dist SVN repo
svn co https://dist.apache.org/repos/dist/dev/avro/ dev-avro
cd dev-avro/avro-rs
mkdir 0.21.0 && cd 0.21.0
cp .../apache-avro-rs-0.21.0-RC0.tgz .
sha256sum apache-avro-rs-0.21.0-RC0.tgz > apache-avro-rs-0.21.0-RC0.tgz.sha256
gpg --armor --output apache-avro-rs-0.21.0-RC0.tgz.asc --detach-sig apache-avro-rs-0.21.0-RC0.tgz
cd ..
svn add 0.21.0
svn ci -m "Add sources of avro-rs 0.21.0 for voting"
Send an email with similar content to dev@avro.apache.org:
[VOTE] Release Apache Avro Rust 0.21.0
Hi everyone,
I'd like to propose the following RC0 to be released as the official
Apache Avro Rust 0.21.0 release.
The commit id is https://github.com/apache/avro-rs/commit/9cb265d29351d3d0454bba30662f0066e04c171b
* This corresponds to the tag: rel/release-0.21.0-rc0
* https://github.com/apache/avro-rs/releases/tag/rel%2Frelease-0.21.0-rc0
The release tarball, signature, and checksums are here (revision r75797)
* https://dist.apache.org/repos/dist/dev/avro/avro-rs/0.21.0/
You can find the KEYS file here:
* https://dist.apache.org/repos/dist/release/avro/KEYS
This release includes 17 issues:
* https://github.com/apache/avro-rs/issues?q=is%3Aissue%20state%3Aclosed
* https://github.com/apache/avro-rs/releases/tag/untagged-48f08e126ce819116c4b
The easiest way to test the release is:
* mkdir 0.21.0 && cd 0.21.0
* wget -q https://dist.apache.org/repos/dist/dev/avro/avro-rs/0.21.0/apache-avro-rs-0.21.0-RC0.tgz
* tar xvf apache-avro-rs-0.21.0-RC0.tgz
* cargo fmt --check && cargo test
* (optional) Update your project Cargo.toml to use `apache_avro = { path = "/path/to/0.21.0/avro" } and test your application
Please download, verify, and test. This vote will remain open for at
least 72 hours.
[ ] +1 Release this as Apache Avro-rs 0.21.0
[ ] 0
[ ] -1 Do not release this because...
Regards,
Martin
git checkout -b release-0.21.0-rc0 rel/release-0.21.0-rc0
cargo publish -p apache-avro-derive
cargo publish -p apache-avro-test-helper
cargo publish -p apache-avro
git tag -s rel/release-0.21.0 -m "Apache Avro Rust SDK 0.21.0 release."
git push --tags
- Go to https://github.com/apache/avro-rs/releases/new
- Select
rel/release-0.21.0as the release tag andautoas the previous one (or select one manually) - Click
Generate release notesto populate the body - Type a
Release title, e.g.Apache Avro Rust SDK 0.21.0 release - Make sure
Set as the latest releasecheckbox is checked - Press the
Publish releasebutton
- Send en email to dev@avro.apache.org and user@avro.apache.org with the following title and body:
1.1. Title:
[ANNOUNCE] Apache Avro Rust SDK 0.21.0 release1.2. Body:
Hello!
On behalf of the Apache Avro team I am happy to announce the release of Apache Avro Rust SDK version 0.21.0!
It is available at Crates.io:
- https://crates.io/crates/apache-avro
- https://crates.io/crates/apache-avro-derive
What's changed since vX.Y.Z:
* item 1
* item 2
New Contributors:
* contributor 1
* contributor 2
https://github.com/apache/avro-rs/releases/tag/rel%2Frelease-0.21.0```
The items could be taken from the body of the Github release ignoring the Dependabot updates:
1. Copy the body of the Github release and paste it in a temporary file, e.g. `/tmp/v0.21.0`
2. `cat /tmp/v0.21.0 | grep -v dependabot`
3. Paste the output in the email body