Jump to navigation Jump to search
15,942 bytes added ,  02:46, 27 October 2021
Create page.
{{Note|'''Timeline''' (tentative)
* 2021-10-26 🚀 '''Release Kick-off''']
* 2022-xx-yy 1️⃣ First Release candidate '''7.0.90''' on
* ...
* 2022-xx-yy 🏁 Final Release 🎉 '''7.1.0''' on}}

:Please use <code>&lt;strike&gt; &lt;/strike&gt;</code> to mark items below as done.

== Kick-off ==

=== 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 and for all outstanding unreported known bugs.

=== Review Savannah bug and patch tracker ===
:Completion Date:
* Review open bugs and update to correct category, such as "Patch submitted", correct title if necessary.

== 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/}} 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.
* [[Octave style guide|m-file style check]]
* <strike> [[C++ style guide|C++ style check]] </strike>

=== Review documentation ===
:Completion Date:
* <strike> Grammar check documentation. </strike>
* <strike> Spell check documentation. </strike>
* <strike> Verify no functions missing from manual. </strike>
* <strike> Verify deprecated functions removed from "see also" links. </strike>
* <strike> Verify all formats (Info, HTML, PDF) build correctly. </strike>
* <strike> Review {{Path|NEWS}} for any features which should be announced. </strike>
* Review {{Path|__unimplemented__.m}} for the latest changes to [[Octave Forge]] packages and new Matlab functions.
* <strike> Update major version number in "@subtitle Edition XXX" in {{Path|octave.texi}}. </strike>
* <strike> Update {{Path|[ installer-files/README.html]}} in MXE Octave with version highlights. </strike>

=== Call for translations ===
:Completion Date:
* <strike>Update language translation files (*.ts).</strike> ([ Changeset])
* <strike>Create issue report on Savannah as a centralized location for uploading files.</strike> ([ Bug #57490])
* <strike>Call for translations for GUI strings on</strike> ([ Dec, 28 2019]) ([ Jan, 14 2020])
* Collect and push all translated files

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

=== Current state at Savannah ===

The Savannah links are created by using the "Display criteria", "Browse with the Advanced query form and MULTIPLE selection" form.

{{Note|Visit to get an overview about open bugs for the next stable release.}}

* Bugs to be fixed
** [ Bugs marked as Crash]
** [ Bugs marked Configuration and Build System]
** [ Bugs marked as Build Failure]
** [ Bugs with severity >= 4]
** [ Bugs marked as regressions]

* '''OPEN''' bugs marked as '''WON'T FIX''' are
** [ Not fixed for Octave 6.1]

=== Merge submitted patches ===
* Push translations provided by translators.
* Push patches from Savannah.

==== Bug tracker ====
:* [ Patch submitted]
:* [ Patch reviewed]
:* [ Ready for test]

==== Patch tracker ====
:* [ Patch submitted].

* '''OPEN''' items marked as '''POSTPONED''' are
** [ Not included for Octave 6.1].

=== <code>make check</code> ===
* Verify <code>make check</code> is passing on all [ 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 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, 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.
* 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 (
** Steps documented in [ this changeset].
** Upload documentation (manual HTML + PDF {{Path|}} and version in {{Path|}}, Doxygen {{Path|}})
* This wiki
** [[Template:Release]] = {{Release}}
** [[Template:Release Date]] = {{Release Date}}
** [[Template:Release Year]] = {{Release Year}}

== 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 [ <code>etc/</code>] carefully!!}}

* Update {{Path|}}:
** <code>AC_INIT</code>
** <code>OCTAVE_API_VERSION</code>
** <code>OCTAVE_RELEASE_DATE</code>
* Update libtool versioning:
** {{Path|liboctave/}} <code>%canon_reldir%_%canon_reldir%_current</code>
** {{Path|libinterp/}} <code>%canon_reldir%_liboctinterp_current</code>
** {{Path|libgui/}} <code>%canon_reldir%_liboctgui_current</code>


Navigation menu