Version 4 (modified by butler, 9 years ago) (diff)

Release Process

The following outlines the SasView? release process.

Reminders

Planning a new major release

  • Releases are discussed at the bi-weekly meeting. Only planned released are acceptable.
  • Once the developers are completely done with their changes and have tested their own code, they should close their ticket and announce it to the rest of the team.
  • Once all developers are done with their work, the release will be discussed at the following conference call.
  • During that call, a "release manager" will be appointed for that release. That person is responsible for following the release process below and communicating progress to the team. The release manager will need to have release priviledges on the repository.
  • After a release manager has been appointed, a code freeze is declared.

Testing a new major release

  • After the code freeze, developers and chosen users will test the release candidate.
  • All bugs and issues identified will be ticketed and either fixed or discussed on the conference call to ascertain if they must be fixed (blockers) or can remain known issues to be reported in release notes and fixed in a future release.
  • Once everyone agrees that the release candidate is ready, the release manager will start the actual release process.

Preparing a new major release

  • The release manager will make sure that the version number is correctly placed in all the correct places. That currently includes:

— sasview/init.py — sasview/README.txt — docs/sphynx-docs/source/conf.py (change both version and release numbers) — sasview.latestversion has now been superseded by the json file stored at the sasview site.

  • The release manager will download the mac and windows builds from the build site.
  • The release manager will then tag the current repo for release and execute the release process as described at https://help.github.com/articles/creating-releases/. Note that the mac and windows builds will need to be renamed appropriately and uploaded as binaries along with the .
  • An abbreviated version of the release notes in the README.txt should be entered in the Release Description section.
  • The release manager will email the team to announce the release.
  • The team will download the new release to make sure it installs.

Patch releases

  • Currently patch releases follow the same process as major releases but the cycle is usually much abbreviated.