New Release Check-List¶
Efficiently upgrading AF3 sources from version a.b.c to d.e.f¶
Upgrading AF3 (and TK2 version) mainly involves updating the plugin manifest files, few plugin-specific pom.xml files for maven, and the product/build configurations.
This procedure ensures that this can be done manually, but efficiently by using the Eclipse multi-file search and replace function.
Preparing the Release Build¶
- Setup a local AF3 maven-releng eclipse according to the instructions found at: AF3_Build_Management
- Create a release ticket in the issue tracker, and create a matching branch for each submodule.
- Select the project
org.fortiss.af3.rootin the Package Explorer and execute an Eclipse File Search with the following settings (
Ctrl + H)
- Containing text = a.b.c (Current version number, e.g., 2.14.0)
- File name patterns = *.product, MANIFEST.MF, category.xml, feature.xml, pom.xml, plugin.xml
- Scope = Selected resource in 'Package Explorer'
- No other search option active.
- You may want to inspect the results of this search before launching the replace action.
- If the changes are fine, right-click in the Search view, select Replace all, and replace the current version string with the update one:
- Add the new version number into the upcoming dialog and hit "OK"
- Replace: "a.b.c"
- With: "d.e.f"
- Run a local build by selecting "Run As > Build All" and observe if any error occurs.
- If the build succeeds, commit the changes. NOTE: You must commit to multiple repositories. Since these are submodules, you may need to specify the remote branch: The issue number from the previously created ticket shall be used.
- Issue a MR for the plugin
org.fortiss.af3.rootand each of the submodules where there has been a version update.
- After merging, ensure that the AF3 version is configured correctly in the Jenkins Trigger Jobs.
Update "What's new" Page¶
- (Manually) filter the previously created "Release Notes" for changes, that a user would experience.
- In your workspace, open org.fortiss.af3.rcp.application/intro/newFeatures.html.
- Update version number.
- Remove old Entries.
- Add entries for the filtered changes in the respective sections.
- Commit: It will be automatically added to the MRs imposed earlier.
Building the release¶
- Ask a master to merge all the MRs created before.
- Go to Jenkins and change the default versions of the jobs af3-phoenix-release-trigger, af3-phoenix-nightly-trigger, and af3-phoenix-continuous-trigger to the updated version string (subpage: configure).
- Execute the af3-phoenix-release-trigger job: The resulting artifacts reside in the job af3-phoenix-release-artifacts.
- Once it is finished, check if the artifacts are up-to-date (timestamp ~30min after the build was issued).
Quality management: Ensure that the final product is behaving correctly¶
- Launch the product. Go to "Help"-> "About autoFOCUS3" and check that the version number matches the release version
- Verify the test for the binary product listed in AF3 core test cases are successfully completed.
- Especially note that the product must start on all platforms, and that the help functionality is working: Ask the platform maintainers for assitance.
Tag the release¶
- Add a tag d.e[.f] indicating the current AF3 version to the following repositories. Suggested log message:
Tag AutoFOCUS3 d.e[.f]
- Push the above repos (including tags)
- Download the release zips from each of the product jobs.
- Change their name, write the correct version number (i.e., the new one)
- Copy them on downloads.fortiss.org (\\FS01\Download\public\projects\af3\stable\phoenix)
- Update the webpage with TYPO3 to refer to these artifacts
Help page on the website¶
- Empty the smb://fs01/download/public/projects/af3/help directory (\\FS01\Download\public\projects\af3\help)
- Copy the contents of the org.fortiss.af3.rcp.help/html directory into smb://fs01/download/public/projects/af3/help
- Delete all
.ratingsfiles in this folder
Release Notes: detailed list of issues¶To insert the detailed list of issues in the release notes:
- Display the relevant issues in Redmine (using the various filtering options of Redmine) (all Closed and Resolved issues from Target Version)
- Down the page, to the right, there's a field "Also available in:": click on "CSV"
- Select "only the selected columns" and export to CSV
- Import the CSV file in LibreOffice or any other Office suite of your choice
- Delete the columns you don't want, format the alignment how you want, etc. (do not care about the colors or fonts)
- Copy-paste into GVim or any serious text editor of your choice
- Replace all the spaces between columns by "|"
- Copy/paste the content in typo3
Announcements¶Announce the release on:
- AF3 main page
- Mailing lists af_user and af_devel
- fortiss main page