Release Process
[Release processes can be documented here for any Samvera technology but Hyrax is the only process documented here right now.]
Hyrax Release Process
For each release cycle, there will be at least one designated Release Testing facilitator (could be Hyrax Product Owner or someone else) from the Hyrax Maintenance Working Group to facilitate the process. Instructions for conducting release testing can be found here.
For each cycle the Release Testing facilitator will:
Communicate with testers and demo site committers about timing of upcoming release.
Ensure the Managers Guide, UI Interactions, Test Tracking Spreadsheet and demo site are up to date for the process of testing and documentation.
Recruit help with testing, bug reporting and documentation.
Ensure testing and documentation is complete.
This testing process complements test coverage and regression testing in the code but does not replace it. This testing is meant to facilitate browser, platform, feature, (basic) usability and completion, and accessibility.
Major release process:
Beta Release: All major features are complete.
Beta release on demo site
Testing for user acceptance and general readiness for systematic testing (no major issues identified that would impede testing).
Beta release is announced
First draft of documentation is done
First round of testing and bug reporting begins
Institutions have a chance to report bugs or ask for a PR to be considered for inclusion in release
Release Candidate (RC): Feature Freeze and bug fixes only.
RC goes to demo site
RC is announced
Finalize feature documentation by end of phase
Finalize testing document by end of phase
Distributed testing of all features, supported browsers, accessibility testing.
Report bugs
Confirm bugs (Hyrax Product Owner) and determine priority (need to establish process for this)
Fix all priority bugs
Repeat above with additional versions of RCx until release is confirmed stable.
Final Release:
Once Final Release is ready, at least 1 in-production institutions should upgrade before wide release (This may not be doable, but would be good if there are institutions willing to do this, could rotate and plan ahead to help curb)
Make sure to update the README if the release requires any new system dependencies or startup steps.
Update the Hyrax Feature Matrix
Final Release is announced widely
Minor release process:
Follows the Major release process on a much more compressed timeline.
Upgrade demo site, retaining data. In the occasion that data needs to be wiped for whatever reason, this is fine. Mostly we want to test that data and users migrate smoothly.
Hyrax Shared Testing Tools:
DEV.NURAX: shared testing and demo instance of Hyrax running on the most recent stable release of Hyrax.
Github repo: https://github.com/samvera-labs/nurax
Maintained and updated by committers in Samvera Community
Hyrax Feature Guide: describes features, set up and concepts for Hyrax repositories
Maintained and updated by [TBD].
Hyrax test tracking document: google doc that helps us track what is tested (including browsers and accessibility) for each release.
Template testing spreadsheet (make a copy for each new release)
Testing list will include the following:
All features (including “bonus” features that require configuration)
Browsers (browser version popularity)
Chrome on Windows
Chrome on Mac OS X
Chrome on Android (for public interactions) (most popular android versions)
Safari on iPhone (for public interactions)
Firefox and Safari should be added (for public interactions?)
Accessibility
Use Firefox for NVDA testing with a screen reading. Either Windows or Mac