Description
Ruta has no binary tarball release in which we would have to update LICENSE/NOTICE files. However, it has the ruta-ep-engine module which bundles third-party JARs also used by the other Ruta bundles. It is the only bundle that declares Embed-Dependency. So when updating dependencies, we need to check the files in ruta-ep-engine/src/main/readme_bin are up-to-date.
Prepare the code
- Create release branch
- Update README file
- Update RELEASE_NOTES.md file (https://issues.apache.org/jira/projects/UIMA/versions/12351726)
- Check the LICENSE and NOTICE files for the binary release
- Make sure to remove all SNAPSHOT repositories and SNAPSHOT dependencies
- Update API reference version in POM api_check_oldVersion
Release build
- Clean local .m2/repository
- Do a test build locally with -Papache-release
- Check the issues report in issuesFixed if it looks ok
- Do the release build (mvn release:prepare release:perform)
Stage release candidate
- Close the staging repository at https://repository.apache.org/ -> https://repository.apache.org/content/repositories/orgapacheuima-1286
- Check auto-staged artifacts at https://dist.apache.org/repos/dist/dev/uima/ -> https://dist.apache.org/repos/dist/dev/uima/ruta-3.2.0-RC-202206101311-283fca6/
Vote
- Call for a vote
- VOTE (wait at least for 72 hours, at least 3 +1 votes required for release)
- Post vote results (sign mail using same GPG key that was used to sign release)
Publish release
- Move existing Eclipse update site to the archive spot: svn move -m "create eclipse plugin archive for ruta-3.0.0-3.1.0" https://dist.apache.org/repos/dist/release/uima/eclipse-update-site-v3/ruta https://dist.apache.org/repos/dist/release/uima/archive-eclipse-update-site/ruta-3.0.0-3.1.0
- Move new Eclipse update site from the staging to the release spot: svn mv -m "Installing Ruta 3.2.0 update site from accepted RC1" https://dist.apache.org/repos/dist/dev/uima/ruta-3.2.0-RC-202206101311-283fca6/eclipse-update-site https://dist.apache.org/repos/dist/release/uima/eclipse-update-site-v3/ruta
- Move the other release artifacts from the staging spot to the dist spot in SVN: svn mv -m "Installing UIMAJ 3.3.0 final to release spot" https://dist.apache.org/repos/dist/dev/uima/uima-uimaj-3.3.0-RC3 https://dist.apache.org/repos/dist/release/uima/uimaj-3.3.0
- Release staging repository at https://repository.apache.org/
- Create a new git tag e.g. rel/uimaj-3.2.0 and remove the one not prefixed with rel
- Merge the release branch into the development branch (e.g. main)
- Create new maintenance branch (when doing feature releases)
- Update the version on the main branch (when doing feature releases). Also sync Eclipse plugin versions: mvn org.eclipse.tycho:tycho-versions-plugin:2.7.3:update-eclipse-metadata
- Update the "current" release on the website with the new content (and delete anything no longer part of the "current" release)
- Copy the "current" release to a versioned release svn copy -m "Current Ruta release is 3.2.0" https://svn.apache.org/repos/asf/uima/site/trunk/uima-website/docs/d/ruta-current https://svn.apache.org/repos/asf/uima/site/trunk/uima-website/docs/d/ruta-3.2.0
- Copy the versioned release to the archive spot already: svn copy -m "Archiving Ruta 3.2.0 documentation" https://svn.apache.org/repos/asf/uima/site/trunk/uima-website/docs/d/ruta-3.2.0 https://svn.apache.org/repos/asf/uima/site/archive/docs/d/ruta-3.2.0
- Close release in Jira and GitHub
- Post release announcement to announce@apache.org (Cc: dev@uima.apache.org, user@uima.apache.org – once release has arrived at https://repo1.maven.org/maven2/org/apache/uima – sign mail using same GPG key that was used to sign release)
Attachments
Issue Links
- links to