7.1 Release Checklist
Timeline (tentative)
- 2021-11-24 π Release Kick-off β½ (default branch merged to stable)
- 2022-xx-yy π οΈ First Release candidate 7.0.90 on https://alpha.gnu.org/gnu/octave/
- ...
- 2022-xx-yy π Final Release π 7.1.0 on https://ftp.gnu.org/gnu/octave/
- Please use
<strike> </strike>
to mark items below as done.
π Kick-off β½
π’ Call for bug reports
- Completion Date:
- Put out a general call for reports on Octave Discourse for all outstanding unreported known bugs.
- Create Savannah tag 7.0.90 on bug tracker.
- Mark items that should be fixed for the release with this tag.
- Bug overview at https://octave.space/savannah/ .
π’ Call for translations
- Completion Date:
- Update language translation files (*.ts).
- Create issue report on Savannah as a centralized location for uploading files.
- Call for translations for GUI strings on Octave Discourse.
- Collect and push all translated files.
βοΈ Update gnulib to latest version
- Completion Date: 2021-11-18
- Must occur first as it could resolve existing, or create new, bug reports. You should run
./bootstrap
in the source tree after updating to the new gnulib version.
βοΈ GPL License activities
- Completion Date:
- Update copyright statements for all source controlled files.
- Update dates in any other locations (launch message, citation, MXE files, etc.).
- Add any new contributors to doc/interpreter/contributors.in who wish to be mentioned (don't add them without permission).
β Style-check code base
- Completion Date:
- This will produce lots of whitespace changes, but no behavior changes. Must occur after patches have been added, since whitespace changes can prevent patches from applying.
π Review documentation
- Completion Date:
- Grammar check documentation.
- Spell check documentation.
- Verify no functions missing from manual.
- Verify deprecated functions removed from "see also" links.
- Verify all formats (Info, HTML, PDF) build correctly.
- Review NEWS for any features which should be announced.
- Review __unimplemented__.m for the latest changes to Octave Forge packages and new Matlab functions.
- Update major version number in "@subtitle Edition XXX" in octave.texi.
- Update installer-files/README.html in MXE Octave with version highlights.
π Repeat until all bugs are resolved
- Completion Date first iteration:
β οΈ Current state at Savannah
- Bug overview at https://octave.space/savannah/ .
β
make check
- Verify
make check
is passing on all buildbot combinations of OS and compilers. - Compiling with
-fsanitize=undefined
,--enable-address-sanitizer-flags
to check for memory leaks. Use other toolscppcheck
, etc.- Update PVS static analyzer results PVS static analyzer - 5.0 Release.
- Start discussion on maintainers@octave.org about which failing tests that must be fixed and which can be declared WON'T FIX.
π οΈ Create new release candidate
- Ensure correct version information.
- Create hg tag in repository with release candidate version number.
- Verify
make distcheck
passes. - Verify
make dist
works. - Create Windows Installer.
- Upload release candidates.
- Add release candidate version to Savannah bug tracker.
- Announce release candidate to Octave Discourse.
π Final Release π
π Update version information
- Completion Date:
- Ensure correct version information.
- Create hg tag in repository with release version number.
- Update NEWS (final release date).
- Update CITATION (version, year, URL).
- Update org.octave.Octave.appdata.xml (version number and release date).
- Update Savannah bug tracker version info.
- Update Savannah bug tracker: OPEN bugs marked as WON'T FIX should be marked as CONFIRMED (or more appropriate) for the final release.
- Remove release candidate versions from Savannah.
π’ Announce final release
- Completion Date:
- Octave mailing-lists
- Octave web site (https://hg.octave.org/web-octave)
- Steps documented in this changeset.
- Upload documentation (manual HTML + PDF octave.org/doc and version in octave.org/.htaccess, Doxygen octave.org/doxygen)
- This wiki
- Template:Release = 9.2.0
- Template:Release Date = June 1, 2024
- Template:Release Year = 2024
βοΈ Post-Release
- Completion Date:
- Merge default onto stable to become the current stable release.
- Ensure correct version information.
- Remove all deprecated functions (either
OCTAVE_DEPRECATED
in C++ or scripts/deprecated for m-files) scheduled for deletion in "default" branch. - Move NEWS file to backup in etc/NEWS.X.
- Create new NEWS file.
βΉοΈ Versioning hints
Read
etc/HACKING.md
carefully!!- Update configure.ac:
AC_INIT
OCTAVE_API_VERSION
OCTAVE_MAJOR/MINOR/PATCH_VERSION
OCTAVE_RELEASE_DATE
- Update libtool versioning:
- liboctave/module.mk
%canon_reldir%_%canon_reldir%_current
- libinterp/module.mk
%canon_reldir%_liboctinterp_current
- libgui/module.mk
%canon_reldir%_liboctgui_current
- liboctave/module.mk