10.1 Release Checklist: Difference between revisions

From Octave
Jump to navigation Jump to search
mNo edit summary
m (Mark item done)
 
(38 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{Note|'''Timeline''' (tentative)
{{Note|'''Timeline''' (tentative)
* YYYY-MM-DD πŸš€ Release Kick-off ⚽ (default branch merged to stable)
* YYYY-MM-DD πŸ› οΈ 1st release candidate **10.0.90** on <https://alpha.gnu.org/gnu/octave/>
* YYYY-MM-DD 🏁 Final Release πŸŽ‰ **10.1.0** on <https://ftp.gnu.org/gnu/octave/>}}


:Please use <code>&lt;strike&gt; &lt;/strike&gt;</code> to mark items below as done.
* 2025-02-07 πŸš€ Release Kick-off ⚽ (default branch merged to stable)
* 2025-03-15 πŸ› οΈ 1st release candidate '''10.0.90''' on https://alpha.gnu.org/gnu/octave/
* 2025-04-01 🏁 Final Release πŸŽ‰ '''10.1.0''' on https://ftp.gnu.org/gnu/octave/}}
 
Please use <code>&lt;strike&gt; &lt;/strike&gt;</code> to mark items below as done.


== πŸš€ Kick-off ⚽ ==
== πŸš€ Kick-off ⚽ ==


------------------------------------------------------------
=== βš™οΈ <strike> Update stable and default branch to new version numbers </strike> ===


=== βš™οΈ Update stable and default branch to new version numbers ===
Completion Date: 2025-02-07


Completion Date:
* <strike> Merge default onto stable to become the current stable release (see instructions in <code>etc/HACKING.md</code>).
* Bump version numbers in <code>configure.ac</code> on stable branch (see <code>etc/HACKING.md</code>).
* Bump version numbers in <code>configure.ac</code> on default branch (see <code>etc/HACKING.md</code>).
* Create new <code>etc/NEWS.11.md</code> file on default branch by copying <code>etc/NEWS.10.md</code> and then removing text so that it is a template file with headings only. </strike>


* Merge default onto stable to become the current stable release (see instructions in `etc/HACKING.md`).
=== βš™οΈ <strike> Update gnulib to latest version </strike> ===
* Bump version numbers in `configure.ac` on stable branch (see `etc/HACKING.md`).
* Bump version numbers in `configure.ac` on default branch (see `etc/HACKING.md`).
* Create new `etc/NEWS.VERSION+1.md` file on default branch by copying `etc/NEWS.VERSION.md` and then removing text so that it is a template file with headings only.


=== βš™οΈ Update gnulib to latest version ===
Completion Date: 2025-02-08


Completion Date:
<strike> '''Must occur first''' as it could resolve existing, or create new, bug reports. The simple update command is <code>gnulib-tool --add-import</code> followed by running <code>./bootstrap</code> in the source tree. </strike>


**Must occur first** as it could resolve existing, or create new, bug reports.
=== πŸ“’ <strike> Call for bug reports </strike> ===
You should run `./bootstrap` in the source tree after updating to the new
gnulib version.


=== πŸ“’ Call for bug reports ===
Completion Date: 2025-02-07


Completion Date:
* WON'T DO <strike> Put out a general call for reports on [https://octave.discourse.group/ Octave Discourse] for all outstanding, but unreported, known bugs. </strike>
 
* <strike> Create Savannah <code>Release</code> tag <code>10.0.90</code> on bug tracker for 1st release candidate.
* Put out a general call for reports on [Octave Discourse](https://octave.discourse.group/) for all outstanding, but unreported, known bugs.
* Create Savannah `Release` tag `VERSION.0.90` on bug tracker for 1st release
  candidate.
* Mark items that should be fixed for the release with this tag.
* Mark items that should be fixed for the release with this tag.
* Update Savannah `Planned Release` and `Fixed Release` tags by adding
* Update Savannah <code>Planned Release</code> and <code>Fixed Release</code> tags by adding <code>10.1.0 (current stable)</code> and <code>11.1.0 (current default)</code>. </strike>
  `VERSION.1.0 (current stable)` and `VERSION+1.1.0 (current default)`.
* Review bug overview at https://octave.space/savannah/.
* Review bug overview at <https://octave.space/savannah/>.


=== πŸ“’ Update GUI translation files ===
=== πŸ“’ <strike> Update GUI translation files </strike> ===


Completion Date:
Completion Date: 2025-02-22


* Call for updates ([Octave Discourse](https://octave.discourse.group/)) that
* WON'T DO <strike> Call for updates ([https://octave.discourse.group/ Octave Discourse]) that might change GUI strings. </strike>
  might change GUI strings.
* String freeze date: 2025-02-07
* String freeze date:
* <strike> Update language translation files (<code>*.ts</code>). See instructions in <code>libgui/languages/build_ts/README.md</code>.
* Update language translation files (`*.ts`). See instructions in
* Create bug report on Savannah as a centralized location for uploading files and tracking status of translations.
  `libgui/languages/build_ts/README.md`.
* Call for translations of GUI strings on [https://octave.discourse.group/c/maintainers/7 Octave Discourse Maintainers], CC-ing the translators (see [https://hg.savannah.gnu.org/hgweb/octave/file/tip/libgui/languages/translators list of translators]). </strike>
* Create bug report on Savannah as a centralized location for uploading files
* <strike> Collect translation files on Savannah bug report and push to Mercurial. </strike>
  and tracking status of translations.
* Call for translations of GUI strings on [Octave Discourse Maintainers](https://octave.discourse.group/c/maintainers/7), CC-ing the translators (see [list of translators](https://hg.savannah.gnu.org/hgweb/octave/file/tip/libgui/languages/translators)).
* Collect translation files on Savannah bug report and push to Mercurial.


=== βš–οΈ GPL License activities ===
=== βš–οΈ <strike> GPL License activities </strike> ===


Completion Date:
Completion Date: 2025-02-09


* Update copyright statements for all source controlled files.
* <strike> Update copyright statements for all source controlled files.


    Command to update copyright notifications
:Command to update copyright notifications
:<code>hg locate | xargs sed -i 's/Copyright (C) \([0-9][0-9][0-9][0-9]\)-2023 The Octave Project Developers/Copyright (C) \1-2024 The Octave Project Developers/; s/Copyright (C) 2023 The Octave Project Developers/Copyright (C) 2023-2024 The Octave Project Developers/'</code>


    `hg locate | xargs sed -i 's/Copyright (C) \([0-9][0-9][0-9][0-9]\)-2023 The Octave Project Developers/Copyright (C) \1-2024 The Octave Project Developers/; s/Copyright (C) 2023 The Octave Project Developers/Copyright (C) 2023-2024 The Octave Project Developers/'`
:Command to check results before checking in
:<code>hg diff | grep ^[-+][^-+] | sed 's/[0-9][0-9][0-9][0-9]-/YYYY-/' | sort -u</code>


    Command to check results before checking in
* Update dates in any other locations
** MXE <code>README.html</code> file
** <code>octave.texi, liboctave.texi, refcard.tex</code> </strike>


    `hg diff | grep ^[-+][^-+] | sed 's/[0-9][0-9][0-9][0-9]-/YYYY-/' | sort -u`
* <strike> Add any new contributors to <code>doc/interpreter/contributors.in</code> who wish to be mentioned (don’t add them without permission). </strike>


* Update dates in any other locations (`CITATION`, MXE `README.html` file).
=== βœ… <strike> Style-check code base </strike> ===
* 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: 2025-02-26


Completion Date:
<strike> 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. </strike>


This will produce lots of whitespace changes, but no behavior changes. **Must
* <strike> [https://wiki.octave.org/Octave_style_guide m-file style check] </strike>
occur after patches have been added**, since whitespace changes can prevent
* <strike> [https://wiki.octave.org/C%2B%2B_style_guide C++ style check] </strike>
patches from applying.


* [m-file style check](https://wiki.octave.org/Octave_style_guide)
=== πŸ“– <strike> Review documentation </strike> ===
* [C++ style check](https://wiki.octave.org/C%2B%2B_style_guide)


=== πŸ“– Review documentation ===
Completion Date: 2026-02-025
 
Completion Date:


* Grammar check documentation (See `doc/interpreter/doccheck/README`).
* <strike> Grammar check documentation (See <code>doc/interpreter/doccheck/README</code>). </strike>
* Spell check documentation (`make spellcheck`).
* <strike> Spell check documentation (<code>make spellcheck</code>). </strike>
* Verify no functions missing from manual
* <strike> Verify no functions missing from manual (<code>make doc/interpreter/undocumented_list</code>). </strike>
  (`make doc/interpreter/undocumented_list`).
* <strike> Verify deprecated functions removed from manual (<code>*.txi</code>) and from β€œsee also” links. </strike>
* Verify deprecated functions removed from manual (`*.txi`) and from "see also"
* <strike> Verify all formats (Info, HTML, PDF) build correctly. </strike>
  links.
* <strike> Review <code>etc/NEWS.10.md</code> for any features which should be announced. </strike>
* Verify all formats (Info, HTML, PDF) build correctly.
* WON'T DO <strike> Review <code>__unimplemented__.m</code> for the latest changes to [https://wiki.octave.org/Octave_Forge Octave Forge] packages and new Matlab functions. </strike>
* Review `etc/NEWS.VERSION.md` for any features which should be announced.
* <strike> Update <code>installer-files/README.html</code> in MXE Octave with version highlights. </strike>
* Review `__unimplemented__.m` for the latest changes to
  [Octave Forge](https://wiki.octave.org/Octave_Forge) packages and new Matlab
  functions.
* Update `installer-files/README.html` in MXE Octave with version highlights.


== πŸ”ƒ Repeat until all bugs are resolved ==
== πŸ”ƒ Repeat until all bugs are resolved ==


------------------------------------------------------------


Completion Date of first iteration:
Completion Date of first iteration: 2025-03-06


=== ⚠️ Current state at Savannah ===
=== ⚠️ Current state at Savannah ===


Bug overview at <https://octave.space/savannah/>.
Bug overview at https://octave.space/savannah/.


=== βœ… `make check` ===
=== βœ… <code>make check</code> ===


* Verify `make check` is passing on all [buildbot combinations of OS and compilers](http://buildbot.octave.org:8010/=/waterfall) and [GitHub CI runners](https://github.com/gnu-octave/octave/actions). Also check [test suite runs on "freshly brewed Octave for Windows"](https://github.com/gnu-octave/octave-buildbot/actions) (Kai's buildbots on octave.space).
* <strike> Verify <code>make check</code> is passing on all [http://buildbot.octave.org:8010/#/waterfall buildbot combinations of OS and compilers] and [https://github.com/gnu-octave/octave/actions GitHub CI runners]. Also check [https://github.com/gnu-octave/octave-buildbot/actions test suite runs on β€œfreshly brewed Octave for Windows”] (Kai’s buildbots on octave.space). </strike>
* Use software tools to check quality of Octave code.
* <strike> Use software tools to check quality of Octave code.
  * Check for memory leaks by configuring with
** Check for memory leaks by configuring with <code>--enable-address-sanitizer-flags --disable-visibility-flags --disable-docs --disable-java</code> and compiling with <code>-g -O0</code> in <code>CFLAGS</code>, <code>CXXFLAGS</code>.
    `--enable-address-sanitizer-flags` and compiling with
** Check for bad memory accesses by configuring with <code>--disable-visibility-flags --disable-docs --disable-java</code> and compiling with <code>-g -O0 -fsanitize=undefined -fno-omit-frame-pointer</code> in <code>CFLAGS</code>, <code>CXXFLAGS</code>, and linking with <code>-fsanitize=undefined -fno-omit-frame-pointer</code> in <code>LDFLAGS</code>. </strike>
    `-g -O0 -fno-optimize-sibling-calls` in `CFLAGS`, `CXXFLAGS`, and
** WON'T DO <strike> Update static code analysis results.
    `LDFLAGS`.
*** For <code>clang</code>, do <code>scan-build make -j&lt;N&gt; all</code> and then <code>scan-view</code>.
  * Check for bad memory accesses by compiling with
*** See [https://wiki.octave.org/PVS_static_analyzer_-_5.0_Release PVS static analyzer - 5.0 Release]. </strike>
    `-g -O0 -fsanitize=undefined -fno-omit-frame-pointer
** WON'T DO <strike> Use other tools such as <code>cppcheck</code>, etc. </strike>
    -fno-optimize-sibling-calls` in `CFLAGS`, `CXXFLAGS`, and `LDFLAGS`.
* <strike> Start discussion on [https://octave.discourse.group/c/maintainers/8 Octave Discourse Maintainers] about which failing tests that must be fixed and which can be declared '''WON’T FIX'''. </strike>
  * Update static code analysis results.
      * For `clang`, do `scan-build make -j<N> all` and then `scan-view`.
      * See [PVS static analyzer - 5.0 Release](https://wiki.octave.org/PVS_static_analyzer_-_5.0_Release).
  * Use other tools such as `cppcheck`, etc.
* Start discussion on [Octave Discourse Maintainers](https://octave.discourse.group/c/maintainers/8) about which failing tests that must be fixed and which can be declared **WON'T FIX**.


=== πŸ› οΈ Create new release candidate ===
=== πŸ› οΈ Create new release candidate ===


* Ensure correct version information (see "Release Numbering" in
* <strike> Ensure correct version information (see β€œRelease Numbering” in <code>/etc/HACKING.md</code>).
  `/etc/HACKING.md`).
* Create <code>hg tag</code> in repository with release candidate version number (<code>rc-MAJOR-MINOR-PATCH</code>).
* Create `hg tag` in repository with release candidate version number
* Verify <code>make dist</code> works.
  (`rc-MAJOR-MINOR-PATCH`).
* Verify <code>make distcheck</code> passes. </strike>
* Verify `make dist` works.
* <strike> Create [https://wiki.octave.org/Windows_Installer Windows Installer].
* Verify `make distcheck` passes.
* Upload release candidates to https://alpha.gnu.org/gnu/octave/.
* Create [Windows Installer](https://wiki.octave.org/Windows_Installer).
* Check [https://wiki.octave.org/Windows_Installer Windows Installer] (executable and zip formats) against false positive detection at [https://virustotal.com/ virustotal.com].
* Upload release candidates to <https://alpha.gnu.org/gnu/octave/>.
* Check [Windows Installer](https://wiki.octave.org/Windows_Installer)
  (executable and zip formats) against false positive detection at
  [virustotal.com](https://virustotal.com/).
* Add release candidate version to Savannah bug tracker.
* Add release candidate version to Savannah bug tracker.
* Announce release candidate to
* Announce release candidate to [https://octave.discourse.group/ Octave Discourse]. </strike>
  [Octave Discourse](https://octave.discourse.group/).


== 🏁 Final Release πŸŽ‰ ==
== 🏁 Final Release πŸŽ‰ ==
------------------------------------------------------------


=== πŸ“ƒ Update version information ===
=== πŸ“ƒ Update version information ===
Line 151: Line 124:
Completion Date:
Completion Date:


* Ensure correct version information in `configure.ac` (see "Release Numbering"
* Ensure correct version information in <code>configure.ac</code> (see β€œRelease Numbering” in <code>/etc/HACKING.md</code>)
  in `/etc/HACKING.md`)
** Set <code>OCTAVE_RELEASE_DATE</code> to the current date.
  * Set `OCTAVE_RELEASE_DATE` to the current date.
** Set the year in <code>OCTAVE_COPYRIGHT</code> to the current year.
  * Set the year in `OCTAVE_COPYRIGHT` to the current year.
* Create <code>hg tag</code> in repository with release candidate version number (<code>release-10-1-0</code>).
* Create `hg tag` in repository with release candidate version number
* Update <code>etc/NEWS.10.md</code> (final release date in Summary header).
  (`release-VERSION-1-0`).
* Update <code>CITATION</code> (version, year, URL) if not already done as part of &quot;GPL License activities.
* Update `etc/NEWS.VERSION.md` (final release date in Summary header).
* Update <code>etc/icons/org.octave.Octave.appdata.xml</code> (version number and release date).
* Update `CITATION` (version, year, URL) if not already done as part of "GPL
* Upload all tarballs to https://ftp.gnu.org/gnu/octave/.
  License activities.
* Update web site files: <code>NEWS-10.html</code>, <code>index.in</code>, <code>news.in</code>, and <code>download.in</code>.
* Update `etc/icons/org.octave.Octave.appdata.xml` (version number and release
* Update https://wiki.octave.org/Release_History page.
  date).
* Update Savannah bug tracker <code>Release</code> field to have new release number.
* Upload all tarballs to <https://ftp.gnu.org/gnu/octave/>.
* Update Savannah bug tracker: '''OPEN''' bugs marked as '''WON’T FIX''' should be marked as '''CONFIRMED''' (or more appropriate) for the final release.
* Update web site files: `NEWS-VERSION.html`, `index.in`, `news.in`, and
* Hide release candidate versions for <code>Release</code> field on Savannah.
  `download.in`.
* Update <https://wiki.octave.org/Release_History> page.
* Update Savannah bug tracker `Release` field to have new release number.
* Update Savannah bug tracker: **OPEN** bugs marked as **WON'T FIX** should be
  marked as **CONFIRMED** (or more appropriate) for the final release.
* Hide release candidate versions for `Release` field on Savannah.


=== πŸ“’ Announce final release ===
=== πŸ“’ Announce final release ===
Line 175: Line 142:
Completion Date:
Completion Date:


* Octave mailing-lists (yes, still) <help@octave.org> and <info-gnu@gnu.org>.
* Octave mailing-lists (yes, still) [mailto:help@octave.org help@octave.org] and [mailto:info-gnu@gnu.org info-gnu@gnu.org].
* Octave web site (<https://hg.octave.org/web-octave>)
* Octave web site (https://hg.octave.org/web-octave)
* Steps documented in this
* Steps documented in this [https://hg.octave.org/web-octave/rev/fe59d0118a2b changeset].
  [changeset](https://hg.octave.org/web-octave/rev/fe59d0118a2b).
* Upload documentation (manual HTML + PDF <code>octave.org/doc</code> and version in <code>octave.org/.htaccess</code>, Doxygen <code>octave.org/doxygen</code>)
* Upload documentation (manual HTML + PDF `octave.org/doc` and version in
  `octave.org/.htaccess`, Doxygen `octave.org/doxygen`)
* This wiki
* This wiki
* Template:Release = 7.3.0
* [[Template:Release]] = {{Template:Release}}
* Template:Release Date = November 2, 2022
* [[Template:Release Date]] = {{Template:Release Date}}
* Template:Release Year = 2022
* [[Template:Release Year]] = {{Template:Release Year}}


=== β˜‘οΈ Post-Release ===
=== <strike> β˜‘οΈ Post-Release </strike> ===


Completion Date:
Completion Date: 2025-02-08
 
* <strike> Remove all deprecated functions scheduled for deletion on default branch. These functions are tagged with <code>OCTAVE_DEPRECATED</code> in C++ or are m-files located in the directory <code>scripts/deprecated</code>. Check file <code>etc/NEWS.9.md</code> for list of features that have been deprecated. </strike>


* Remove all deprecated functions scheduled for deletion on default
[[Category:Releases]]
  branch.  These functions are tagged with `OCTAVE_DEPRECATED` in C++ or are
  m-files located in the directory `scripts/deprecated`.  Check file
  `etc/NEWS.VERSION-2.md` for list of features that have been deprecated.

Latest revision as of 16:38, 9 March 2025

Info icon.svg
Timeline (tentative)

Please use <strike> </strike> to mark items below as done.

πŸš€ Kick-off ⚽

βš™οΈ Update stable and default branch to new version numbers

Completion Date: 2025-02-07

  • Merge default onto stable to become the current stable release (see instructions in etc/HACKING.md).
  • Bump version numbers in configure.ac on stable branch (see etc/HACKING.md).
  • Bump version numbers in configure.ac on default branch (see etc/HACKING.md).
  • Create new etc/NEWS.11.md file on default branch by copying etc/NEWS.10.md and then removing text so that it is a template file with headings only.

βš™οΈ Update gnulib to latest version

Completion Date: 2025-02-08

Must occur first as it could resolve existing, or create new, bug reports. The simple update command is gnulib-tool --add-import followed by running ./bootstrap in the source tree.

πŸ“’ Call for bug reports

Completion Date: 2025-02-07

  • WON'T DO Put out a general call for reports on Octave Discourse for all outstanding, but unreported, known bugs.
  • Create Savannah Release tag 10.0.90 on bug tracker for 1st release candidate.
  • Mark items that should be fixed for the release with this tag.
  • Update Savannah Planned Release and Fixed Release tags by adding 10.1.0 (current stable) and 11.1.0 (current default).
  • Review bug overview at https://octave.space/savannah/.

πŸ“’ Update GUI translation files

Completion Date: 2025-02-22

  • WON'T DO Call for updates (Octave Discourse) that might change GUI strings.
  • String freeze date: 2025-02-07
  • Update language translation files (*.ts). See instructions in libgui/languages/build_ts/README.md.
  • Create bug report on Savannah as a centralized location for uploading files and tracking status of translations.
  • Call for translations of GUI strings on Octave Discourse Maintainers, CC-ing the translators (see list of translators).
  • Collect translation files on Savannah bug report and push to Mercurial.

βš–οΈ GPL License activities

Completion Date: 2025-02-09

  • Update copyright statements for all source controlled files.
Command to update copyright notifications
hg locate | xargs sed -i 's/Copyright (C) \([0-9][0-9][0-9][0-9]\)-2023 The Octave Project Developers/Copyright (C) \1-2024 The Octave Project Developers/; s/Copyright (C) 2023 The Octave Project Developers/Copyright (C) 2023-2024 The Octave Project Developers/'
Command to check results before checking in
hg diff | grep ^[-+][^-+] | sed 's/[0-9][0-9][0-9][0-9]-/YYYY-/' | sort -u
  • Update dates in any other locations
    • MXE README.html file
    • octave.texi, liboctave.texi, refcard.tex
  • 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: 2025-02-26

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: 2026-02-025

  • Grammar check documentation (See doc/interpreter/doccheck/README).
  • Spell check documentation (make spellcheck).
  • Verify no functions missing from manual (make doc/interpreter/undocumented_list).
  • Verify deprecated functions removed from manual (*.txi) and from β€œsee also” links.
  • Verify all formats (Info, HTML, PDF) build correctly.
  • Review etc/NEWS.10.md for any features which should be announced.
  • WON'T DO Review __unimplemented__.m for the latest changes to Octave Forge packages and new Matlab functions.
  • Update installer-files/README.html in MXE Octave with version highlights.

πŸ”ƒ Repeat until all bugs are resolved

Completion Date of first iteration: 2025-03-06

⚠️ 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 and GitHub CI runners. Also check test suite runs on β€œfreshly brewed Octave for Windows” (Kai’s buildbots on octave.space).
  • Use software tools to check quality of Octave code.
    • Check for memory leaks by configuring with --enable-address-sanitizer-flags --disable-visibility-flags --disable-docs --disable-java and compiling with -g -O0 in CFLAGS, CXXFLAGS.
    • Check for bad memory accesses by configuring with --disable-visibility-flags --disable-docs --disable-java and compiling with -g -O0 -fsanitize=undefined -fno-omit-frame-pointer in CFLAGS, CXXFLAGS, and linking with -fsanitize=undefined -fno-omit-frame-pointer in LDFLAGS.
    • WON'T DO Update static code analysis results.
    • WON'T DO Use other tools such as cppcheck, etc.
  • Start discussion on Octave Discourse Maintainers about which failing tests that must be fixed and which can be declared WON’T FIX.

πŸ› οΈ Create new release candidate

  • Ensure correct version information (see β€œRelease Numbering” in /etc/HACKING.md).
  • Create hg tag in repository with release candidate version number (rc-MAJOR-MINOR-PATCH).
  • Verify make dist works.
  • Verify make distcheck passes.
  • Create Windows Installer.
  • Upload release candidates to https://alpha.gnu.org/gnu/octave/.
  • Check Windows Installer (executable and zip formats) against false positive detection at virustotal.com.
  • 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 in configure.ac (see β€œRelease Numbering” in /etc/HACKING.md)
    • Set OCTAVE_RELEASE_DATE to the current date.
    • Set the year in OCTAVE_COPYRIGHT to the current year.
  • Create hg tag in repository with release candidate version number (release-10-1-0).
  • Update etc/NEWS.10.md (final release date in Summary header).
  • Update CITATION (version, year, URL) if not already done as part of "GPL License activities.
  • Update etc/icons/org.octave.Octave.appdata.xml (version number and release date).
  • Upload all tarballs to https://ftp.gnu.org/gnu/octave/.
  • Update web site files: NEWS-10.html, index.in, news.in, and download.in.
  • Update https://wiki.octave.org/Release_History page.
  • Update Savannah bug tracker Release field to have new release number.
  • Update Savannah bug tracker: OPEN bugs marked as WON’T FIX should be marked as CONFIRMED (or more appropriate) for the final release.
  • Hide release candidate versions for Release field on Savannah.

πŸ“’ Announce final release

Completion Date:

β˜‘οΈ Post-Release

Completion Date: 2025-02-08

  • Remove all deprecated functions scheduled for deletion on default branch. These functions are tagged with OCTAVE_DEPRECATED in C++ or are m-files located in the directory scripts/deprecated. Check file etc/NEWS.9.md for list of features that have been deprecated.