Release Process - Code Freeze and QA
Once Bug Parade is over, the fun part starts: Testing the code.
Freeze the Code
Send an email to the list announcing Code Freeze. Once the code is frozen, no commits should be pushed to the main project repository unless a specific blocker is found and it is agreed by the project team that the fix should go in. The only exception to this rule is updates to the Release Notes.
QA
Once the code is frozen, the components must be tested. Detailed instructions are provided on our Testing Fluid Components page.
QA testing tasks
Determine which areas of Infusion need to be tested, and what their priorities are (High: must complete before release, Medium: should complete before release, Low: would be nice to test, but won't hold up a release). Once this has been determined the Release Testing Tasks page should be updated. Each priority level has its own task list. Each task is represented by an area to test plus a browser/OS configuration. Areas to test include running all unit tests, checking all shipped examples, and executing the test plan for each component.
Create Release-related JIRAs
Issue Title | Issue Description |
---|---|
Update the | Be sure to update the version number, the zip file names (which include the version number), the "What's New" section with a list of features of the release, the list of supported browsers if it has changed, the third-party licenses if they have changed and the "Known Issues" section with highlights of the known issues. |
Generate and test release bundles | Compare the production bundle to the repository and ensure everything is present. Compare the two bundles - the only difference should be that the source bundle does not have a war file, the production bundle has minified javascript and the source bundle does not have minified javascript. |
Tag, package and post the release | See Tag, package and test the release for details. |
Update component landing pages | Each component landing page should be updated to ensure that: the progress indicators are up-to-date, and the links to the "latest release" demos refer to the posted bundles. |
Update the demos on the Fluid website | Once the release bundle is posted, the links on the website to demos of the latest release must be updated: http://fluidproject.org/infusion.html (currently these point at the build site which is up-to-date with master, but we may want to freeze these on the released version ) |
Try to identify any dependencies between JIRAs (for example, the bundle must be tested before it is posted) and create these links in JIRA.
Prepare the Download wiki page
Create a new copy of the "Current Release" page using the following process:
- Consider putting a disclaimer at the top of any affected pages, with the following text (or something similar):
- "This page is currently being edited in preparation for the pending X.X release. It's contents should be considered in flux and unreliable until this warning is removed. For the latest stable release, see Fluid Infusion X.X."
- Back up the old Fluid Infusion - Current Release page by copying it into a new page called "Fluid Infusion X.X" where X.X is the old release number.
- This new page should be a child of Fluid Infusion - Current Release.
- Update Fluid Infusion - Current Release to the latest release.
- Be mindful to follow the excerpt format. The links to the bundles at the top will be excerpted.