Release Checklist: Difference between revisions

Jump to navigation Jump to search
295 bytes added ,  10 December 2019
(12 intermediate revisions by the same user not shown)
Line 13: Line 13:
=== Call for bug reports ===
=== Call for bug reports ===
:Completion Date:
:Completion Date:
* Put out a general call for reports on maintainers@octave.org and help@octave.org mailing-list for all outstanding unreported known bugs.
* Put out a general call for reports on maintainers@octave.org and help@octave.org for all outstanding unreported known bugs.


=== Review submitted patches on Savannah ===
=== Review submitted patches on Savannah ===
Line 31: Line 31:
* Update copyright statements for all source controlled files.
* Update copyright statements for all source controlled files.
* Update dates in any other locations (launch message, citation, MXE files, etc.).
* Update dates in any other locations (launch message, citation, MXE files, etc.).
* Add any new contributors to {{Path|contributors.in}} who wish to be mentioned (don't add them without permission).
* Add any new contributors to {{Path|doc/interpreter/contributors.in}} who wish to be mentioned (don't add them without permission).


=== Style-check code base ===
=== Style-check code base ===
:Completion Date:
: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
: 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.
* m-file style check
* m-file style check
* C++ style check
* C++ style check
Line 48: Line 48:
* Review {{Path|NEWS}} for any features which should be announced.
* Review {{Path|NEWS}} for any features which should be announced.
* Update major version number in "@subtitle Edition XXX" in {{Path|octave.texi}}.
* Update major version number in "@subtitle Edition XXX" in {{Path|octave.texi}}.
=== 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 maintainers@octave.org.


== Repeat until all bugs are resolved ==
== Repeat until all bugs are resolved ==
:Completion Date first iteration:
:Completion Date first iteration:


=== Localization and Internationalization ===
=== Merge submitted patches ===
* Update language translation files (*.ts).
* Create issue report on Savannah as a centralized location for uploading files.
* Submit call for translations for GUI strings.
* Push translations provided by translators.
* Push translations provided by translators.
 
* Push reviewed patches from Savannah.
=== Run lint checker on code base ===
* Compiling with <code>-fsanitize=undefined</code>, <code>--enable-address-sanitizer-flags</code> and running <code>make check</code> to check for memory leaks. Other tools <code>cppcheck</code>, etc.
** PVS static analyzer results [[PVS static analyzer - 5.0 Release]].


=== <code>make check</code> ===
=== <code>make check</code> ===
* Verify <code>make check</code> is passing on all buildbot combinations of OS and compilers.
* Verify <code>make check</code> is passing on all [http://buildbot.octave.org:8010/#/waterfall buildbot combinations of OS and compilers].
* Start discussion on maintainers@octave.org about which failing tests that must be fixed.
* Compiling with <code>-fsanitize=undefined</code>, <code>--enable-address-sanitizer-flags</code> to check for memory leaks. Use other tools <code>cppcheck</code>, etc.
* Identify and fix any tests determined critical in step above.
** 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 ===
=== Create new release candidate ===
* Update {{Path|configure.ac}}:
* Ensure correct [[#Versioning hints|version information]].
** <code>AC_INIT</code>
* Create hg tag in repository with release candidate version number.
** <code>OCTAVE_API_VERSION</code>
** <code>OCTAVE_MAJOR/MINOR/PATCH_VERSION</code>
** <code>OCTAVE_RELEASE_DATE</code>
* Verify <code>make distcheck</code> passes.
* Verify <code>make distcheck</code> passes.
* Verify <code>make dist</code> works.
* Verify <code>make dist</code> works.
* hg tag repository with release candidate ID
* Create [[Windows Installer]].
* Create [[Windows Installer]].
* Upload release candidates.
* Upload release candidates.
* Add release candidate version to Savannah bug tracker.
* Add release candidate version to Savannah bug tracker.
* Announce release candidate to Octave-Maintainers, Octave-Help, on web page.
* Announce release candidate to maintainers@octave.org, help@octave.org mailing-list, on web page.


== Final Release ==
== Final Release ==
Line 85: Line 82:
=== Update version information ===
=== Update version information ===
:Completion Date:
:Completion Date:
* Update {{Path|configure.ac}}:
* Ensure correct [[#Versioning hints|version information]].
** <code>AC_INIT</code>
* Create hg tag in repository with release version number.
** <code>OCTAVE_API_VERSION</code>
** <code>OCTAVE_MAJOR/MINOR/PATCH_VERSION</code>
** <code>OCTAVE_RELEASE_DATE</code>
* Update {{Path|NEWS}} (final release date).
* Update {{Path|NEWS}} (final release date).
* Update {{Path|CITATION}} (version, year, URL).
* Update {{Path|CITATION}} (version, year, URL).
* Update {{Path|org.octave.Octave.appdata.xml}} (version number and release date).
* Update {{Path|org.octave.Octave.appdata.xml}} (version number and release date).
* Create hg tag in repository with release version number.
* Merge default onto stable to become the current stable release.
* Update Savannah bug tracker version info.
* Update Savannah bug tracker version info.
* Remove release candidate versions from Savannah.
* Remove release candidate versions from Savannah.
Line 107: Line 98:
== Post-Release ==
== Post-Release ==
:Completion Date:
:Completion Date:
* Update {{Path|configure.ac}} (AC_INIT, OCTAVE_MAJOR_VERSION, OCTAVE_MINOR_VERSION, OCTAVE_PATCH_VERSION) to next release cycle.
* Merge default onto stable to become the current stable release.
* Update oct file API version number ({{Path|configure.ac}} <code>OCTAVE_API_VERSION</code>).
* Ensure correct [[#Versioning hints|version information]].
* Remove all deprecated functions (either <code>OCTAVE_DEPRECATED</code> in C++ or scripts/deprecated for m-files) scheduled for deletion in "default" branch.
* Remove all deprecated functions (either <code>OCTAVE_DEPRECATED</code> in C++ or scripts/deprecated for m-files) scheduled for deletion in "default" branch.
* Move {{Path|NEWS}} file to backup in {{Path|etc/NEWS.X}}.
* Move {{Path|NEWS}} file to backup in {{Path|etc/NEWS.X}}.
* Create new {{Path|NEWS}} file.
* Create new {{Path|NEWS}} file.
== Versioning hints ==
{{Note|Read [https://hg.savannah.gnu.org/hgweb/octave/file/tip/etc/HACKING.md <code>etc/HACKING.md</code>] carefully!!}}
* Update {{Path|configure.ac}}:
** <code>AC_INIT</code>
** <code>OCTAVE_API_VERSION</code>
** <code>OCTAVE_MAJOR/MINOR/PATCH_VERSION</code>
** <code>OCTAVE_RELEASE_DATE</code>
* Update libtool versioning:
** {{Path|liboctave/module.mk}} <code>%canon_reldir%_%canon_reldir%_current</code>
** {{Path|libinterp/module.mk}} <code>%canon_reldir%_liboctinterp_current</code>
** {{Path|libgui/module.mk}} <code>%canon_reldir%_liboctgui_current</code>


[[Category:Releases]]
[[Category:Releases]]

Navigation menu