Release Checklist: Difference between revisions

From Octave
Jump to navigation Jump to search
(→‎Post-Release: Overhaul section.)
m (update redirect to latest version)
Tag: Redirect target changed
 
(19 intermediate revisions by one other user not shown)
Line 1: Line 1:
Please use
#REDIRECT [[7.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.
 
=== File bug reports ===
: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.
 
=== 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]].
 
=== 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|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
 
 
== Repeat until all bugs are resolved ==
 
=== Run lint checker on code base ===
:Completion Date:
* Compiling with <code>-fsanitize=undefined</code> and running <code>make check</code>, <code>cppcheck</code>, etc.
** PVS static analyzer results [[PVS static analyzer - 5.0 Release]]
 
<!----------------------------------------------------------------------------->
# Verify 'make check' is passing on all buildbot combinations of OS and compilers
#* Start discussion on octave-maintainers list about which failing tests must be fixed
#* Identify and fix any tests determined critical in step above
#: Completion Date:
<!----------------------------------------------------------------------------->
# Compile and run Octave test suite with --enable-address-sanitizer-flags to check for memory leaks
#: Completion Date:
<!----------------------------------------------------------------------------->
# Review documentation
#* Grammar check documentation so that it conforms to Octave standards
#* 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
#* Update major version number in "@subtitle Edition XXX" in octave.texi
#: Completion Date:
<!----------------------------------------------------------------------------->
# Localization and Internationalization
#* 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
#: Completion Date:
<!----------------------------------------------------------------------------->
#  Update shared library and oct file API version numbers
#* Increment oct file API version number (configure.ac:OCTAVE_API_VERSION, increment number and drop "+" suffix)
#* Increment libtool versioning (liboctave/module.mk:%canon_reldir%_%canon_reldir%_current, libinterp/module.mk:%canon_reldir%_liboctinterp_current, libgui/module.mk:%canon_reldir%_liboctgui_current)
#: Completion Date:
<!----------------------------------------------------------------------------->
# Verify build process and create release candidates
#* Update configure.ac with new version information
#**  Update AC_INIT, OCTAVE_MAJOR_VERSION, OCTAVE_MINOR_VERSION, OCTAVE_PATCH_VERSION, OCTAVE_RELEASE_DATE
#* Verify 'make distcheck' passes
#* Create release candidate
#** 'make dist'
#** hg tag repository with release candidate ID
#** For Windows, create installer [[Windows Installer]]
#** Upload release candidate
#** Add release candidate version to Savannah bug tracker
#** Announce release candidate to Octave-Maintainers, Octave-Help, on web page
#** Repeat release candidate cycle until clean
#: Completion Date:
 
== Final Release ==
 
=== Update version information ===
:Completion Date:
* Update configure.ac (AC_INIT, OCTAVE_MAJOR_VERSION, OCTAVE_MINOR_VERSION, OCTAVE_PATCH_VERSION, OCTAVE_RELEASE_DATE).
* Update {{Path|NEWS}} (final release date).
* Update {{Path|CITATION}} (version, year, URL).
* 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.
* Remove release candidate versions from Savannah.
 
=== Announce final release ===
:Completion Date:
* Octave mailing-lists
* Octave web site
* This wiki
 
== Post-Release ==
:Completion Date:
* Update {{Path|configure.ac}} (AC_INIT, OCTAVE_MAJOR_VERSION, OCTAVE_MINOR_VERSION, OCTAVE_PATCH_VERSION) to next release cycle.
* Update oct file API version number ({{Path|configure.ac}} <code>OCTAVE_API_VERSION</code>).
* 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.
 
[[Category:Releases]]

Latest revision as of 17:13, 2 March 2022