...
Tag the release:
No Format svn move https://svn.apache.org/repos/asf/avro/tags/release-X.Y.Z-rcR \ https://svn.apache.org/repos/asf/avro/tags/release-X.Y.Z -m "Avro X.Y.Z release."
Copy release files to the release repository.
No Format svn copy https://dist.apache.org/repos/dist/dev/avro/avro-X.Y.Z-rcR \ https://dist.apache.org/repos/dist/release/avro/avro-X.Y.Z -m "Avro X.Y.Z release."
The release directory usually contains just two releases, the most recent from two branches, with a link named 'stable' to the most recent recommended version.
No Format svn co https://dist.apache.org/repos/dist/release/avro/ avro-release-dist cd avro-release-dist svn rm avro-A.B.C; rm stable ln -s avro-X.Y.Z stable svn commit -m "Avro X.Y.Z release."
- Publish Java artifacts to the Maven repository:
Find the Staging Repository and release it. Publish Python artifacts to PyPI. To do this you'll need an account on PyPi, and write access to the Avro package - ask the existing owners for permission if you don't have it.
No Format mkdir -p tmp/py cd tmp/py tar xzf ../../dist/py/avro-X.Y.X.tar.gz cd avro-X.Y.Z python setup.py sdist upload
Publish Python3 artifacts to PyPI. To do this you'll need an account on PyPi, and write access to the Avro package - ask the existing owners for permission if you don't have it.
No Format mkdir -p tmp/py3 cd tmp/py3 tar xvf ../../dist/py3/avro-python3-X.Y.Z.tar.gz cd avro-python3-X-Y-Z python3 ./setup.py sdist upload
Publish Ruby artifacts to RubyGems. Again, you'll need an account and you need to be an owner.
No Format gem push dist/ruby/avro-X.Y.Z.gem
- Wait 24 hours for release to propagate to mirrors.
Prepare to edit the website.
No Format svn co https://svn.apache.org/repos/asf/avro/site
- Update the documentation links in
author/content/xdocs/site.xml
. - Update the release news in
author/content/xdocs/releases.xml
. Regenerate the site, review it, then commit it. Note that Forrest 0.9 is easiest (not currently in the Docker image), since it doesn't require Java 5.
No Format cd site ant firefox publish/index.html svn commit -m "Updated site for release X.Y.Z."
Copy the new release docs to website and update the
docs/current
link:No Format tar xzf dist/avro-doc-X.Y.Z.tar.gz mv avro-doc-X.Y.Z ../site/publish/docs/X.Y.Z cd ../site/publish svn add X.Y.Z rm current ln -s X.Y.Z current svn commit -m "Adding documentation for release X.Y.Z."
- Send announcements to the user and developer lists once the site changes are visible.
- Update the version number in
share/VERSION.txt
to be ''avro-X.Y.N-SNAPSHOT'', where ''N'' is one greater than the release just made. Update the version in the Maven POM files to match with
No Format mvn versions:set -DnewVersion=X.Y.N-SNAPSHOT -DgenerateBackupPoms=false
- In Jira, ensure that only issues in the "Fixed" state have a "Fix Version" set to release X.Y.Z.
- In Jira, "release" the version. Visit the "Administer Project" page, then the "Manage versions" page. You need to have the "Admin" role in Avro's Jira for this step and the next.
- In Jira, close issues resolved in the release. Disable mail notifications for this bulk change.
...