5.0.0 Release Checklist
5.0.0 Release Tasks
Update gnulib to latest version- Must occur first as it could resolve existing, or create new, bug reports
Done. You should run bootstrap in the source tree after updating to the new gnulib version.- Completion Date: 12/13/2018
File bug reports for all outstanding bugs known, but not reportedPut out a general call for reports on Octave-Maintainers and Octave-Help list
- Completion Date: 12/20/2018
Review patch tracker/bug list for any patches submitted that may be included before release- Completion Date: 12/20/2018
Identify Bugs which *must* be fixed prior to release- Review bugs on tracker for possible inclusion in list
Review bugs and update to correct category, such as Patch submitted
- Completion Date: 12/31/18
- Clear all bugs identified as must-fix
- Completion Date:
- GPL License activities
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 contributors.in
- Completion Date:
- WON'T DO
Style-check code base- 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. Completion Date:
C++ style check. Completion Date:
Run lint checker on code basePossibilities include compiling with -fsanitize=undefined and running 'make check', cppcheck, etc.PVS static analyzer results PVS static analyzer - 5.0 Releaseclang static analyzer results #55400Compile with -fsanitize=undefined and run 'make check'
- Completion Date: 1/17/19
- 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: 1/18/19
- 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: 12/23/18
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: 1/16/19
- 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:
- Update configure.ac with new version information
- Final Release
- Update version information
- Update configure.ac (AC_INIT, OCTAVE_MAJOR_VERSION, OCTAVE_MINOR_VERSION, OCTAVE_PATCH_VERSION, OCTAVE_RELEASE_DATE)
- Update libtool versioning (configure.ac:OCTAVE_API_VERSION, liboctave/module.mk:%canon_reldir%_%canon_reldir%_current, libinterp/module.mk:%canon_reldir%_liboctinterp_current, libgui/module.mk:%canon_reldir%_liboctgui_current)
- Update NEWS (final release date)
Update CITATION (version, year, URL)- Update org.octave.Octave.appdata.xml (version number and release date)
- hg tag repository with release version number
merge default onto stable to become the current stable release- Savannah bug tracker version info
- add new release version to bug tracker
- remove release candidate versions from bug tracker
- Announce final release on Octave mailing lists and web site
- Completion Date:
- Update version information
- Post-Release
Update configure.ac (AC_INIT, OCTAVE_MAJOR_VERSION, OCTAVE_MINOR_VERSION, OCTAVE_PATCH_VERSION) to next release cycle- Remove all deprecated functions (either OCTAVE_DEPRECATED in C++ or scripts/deprecated for m-files) scheduled for deletion in default branch
- Move NEWS file to backup in etc/NEWS.X
Create new NEWS file
- Completion Date: 12/20/18