Difference between revisions of "Release Checklist"

From Octave
Jump to navigation Jump to search
(Make redirect page to avoid duplication of efforts. This template evolves with each release.)
Tag: New redirect
 
Line 1: Line 1:
Please use
+
#REDIRECT [[6.1 Release Checklist ]]
 
 
<strike></strike>
 
 
 
to mark items as done.
 
 
 
== Kickoff ==
 
 
 
=== Update gnulib to latest version ===
 
:Completion Date:
 
:Must occur first as it could resolve existing, or create new, bug reports. You should run <code>./bootstrap</code> in the source tree after updating to the new gnulib version.
 
 
 
=== Call for bug reports ===
 
:Completion Date:
 
* 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 ===
 
:Completion Date:
 
* Submitted patches from '''bug tracker''' included.
 
* Submitted patches from '''patch tracker''' included.
 
 
 
=== Review open bugs on Savannah ===
 
:Completion Date:
 
* Review bugs and update to correct category, such as "Patch submitted", correct title if necessary.
 
* Add "must-fix" items to [[6.1 Release Bug Fix List]].
 
 
 
== One time tasks ==
 
 
 
=== 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 {{Path|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.
 
* m-file style check
 
* C++ style check
 
 
 
=== 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 {{Path|NEWS}} for any features which should be announced.
 
* 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 ==
 
:Completion Date first iteration:
 
 
 
=== Merge submitted patches ===
 
* Push translations provided by translators.
 
* Push reviewed patches from Savannah.
 
 
 
=== <code>make check</code> ===
 
* Verify <code>make check</code> is passing on all [http://buildbot.octave.org:8010/#/waterfall buildbot combinations of OS and compilers].
 
* Compiling with <code>-fsanitize=undefined</code>, <code>--enable-address-sanitizer-flags</code> to check for memory leaks. Use other tools <code>cppcheck</code>, 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 [[#Versioning hints|version information]].
 
* Create hg tag in repository with release candidate version number.
 
* Verify <code>make distcheck</code> passes.
 
* Verify <code>make dist</code> works.
 
* Create [[Windows Installer]].
 
* Upload release candidates.
 
* Add release candidate version to Savannah bug tracker.
 
* Announce release candidate to maintainers@octave.org, help@octave.org mailing-list, on web page.
 
 
 
== Final Release ==
 
 
 
=== Update version information ===
 
:Completion Date:
 
* Ensure correct [[#Versioning hints|version information]].
 
* Create hg tag in repository with release version number.
 
* Update {{Path|NEWS}} (final release date).
 
* Update {{Path|CITATION}} (version, year, URL).
 
* Update {{Path|org.octave.Octave.appdata.xml}} (version number and release date).
 
* Update Savannah bug tracker version info.
 
* Remove release candidate versions from Savannah.
 
 
 
=== Announce final release ===
 
:Completion Date:
 
* Octave mailing-lists
 
* Octave web site
 
* This wiki
 
 
 
== Post-Release ==
 
:Completion Date:
 
* Merge default onto stable to become the current stable release.
 
* 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.
 
* Move {{Path|NEWS}} file to backup in {{Path|etc/NEWS.X}}.
 
* 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]]
 

Latest revision as of 23:54, 9 June 2020