5.0.0 Release Checklist: Difference between revisions

From Octave
Jump to navigation Jump to search
(Create new checklist for 5.0.0. release)
 
(Strip redundant Category:Development.)
 
(32 intermediate revisions by 5 users not shown)
Line 2: Line 2:


<!----------------------------------------------------------------------------->
<!----------------------------------------------------------------------------->
# Update gnulib to latest version
# <strike>Update gnulib to latest version
#: Must occur first as it could resolve existing, or create new, bug reports
#: Must occur first as it could resolve existing, or create new, bug reports
#: Completion Date:
#: Done.  You should run bootstrap in the source tree after updating to the new gnulib version.</strike>
#: Completion Date: 12/13/2018
<!----------------------------------------------------------------------------->
<!----------------------------------------------------------------------------->
# File bug reports for all outstanding bugs known, but not reported
# <strike> File bug reports for all outstanding bugs known, but not reported
#* Put out a general call for reports on Octave-Maintainers and Octave-Help list
#* Put out a general call for reports on Octave-Maintainers and Octave-Help list </strike>
#: Completion Date:
#: Completion Date: 12/20/2018
<!----------------------------------------------------------------------------->
<!----------------------------------------------------------------------------->
# Review patch tracker/bug list for any patches submitted that may be included before release
# <strike> Review patch tracker/bug list for any patches submitted that may be included before release </strike>
#: Completion Date:
#: Completion Date: 12/20/2018
<!----------------------------------------------------------------------------->
<!----------------------------------------------------------------------------->
# Identify Bugs which *must* be fixed prior to release
# <strike> Identify Bugs which *must* be fixed prior to release
#* Review bugs on tracker for possible inclusion in list
#* Review bugs on tracker for possible inclusion in list
#* Review bugs and update to correct category, such as Patch submitted
#* Review bugs and update to correct category, such as Patch submitted </strike>
#: Completion Date:
#: Completion Date: 12/31/18
<!----------------------------------------------------------------------------->
<!----------------------------------------------------------------------------->
# Clear all bugs identified as must-fix
# Clear all bugs identified as must-fix
Line 23: Line 24:
<!----------------------------------------------------------------------------->
<!----------------------------------------------------------------------------->
# GPL License activities
# GPL License activities
#* Update Copyright statements for all source controlled files
#* <strike> Update Copyright statements for all source controlled files </strike>
#* Update dates in any other locations (launch message, citation, MXE files, etc.)
#* Update dates in any other locations (launch message, citation, MXE files, etc.)
#* Add any new contributors to contributors.in
#* Add any new contributors to contributors.in
#: Completion Date:
#: Completion Date:
<!----------------------------------------------------------------------------->
<!----------------------------------------------------------------------------->
# Style-check code base
# WON'T DO <strike> Style-check code base
#* This will produce lots of whitespace changes, but no behavior changes
#* 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
#* Must occur after patches have been added since whitespace changes can prevent patches from applying
#* m-file style check. Completion Date:
#* m-file style check. Completion Date:
#* C++ style check.  Completion Date:
#* C++ style check.  Completion Date: </strike>
<!----------------------------------------------------------------------------->
<!----------------------------------------------------------------------------->
# Run lint checker on code base
# <strike> Run lint checker on code base </strike>
#* Possibilities include compiling with -fsanitize=undefined and running 'make check', cppcheck, etc.
#* <strike> Possibilities include compiling with -fsanitize=undefined and running 'make check', cppcheck, etc. </strike>
#: Completion Date:
#* <strike> PVS static analyzer results [[PVS static analyzer - 5.0 Release]] </strike>
#* <strike> clang static analyzer results {{bug #55400|55400}} </strike>
#* <strike> Compile with -fsanitize=undefined and run 'make check' </strike>
#: Completion Date: 1/17/19
<!----------------------------------------------------------------------------->
<!----------------------------------------------------------------------------->
# Verify 'make check' is passing on all buildbot combinations of OS and compilers
# Verify 'make check' is passing on all buildbot combinations of OS and compilers
Line 43: Line 47:
#: Completion Date:
#: Completion Date:
<!----------------------------------------------------------------------------->
<!----------------------------------------------------------------------------->
# Compile and run Octave test suite with --enable-address-sanitizer-flags to check for memory leaks
# <strike> Compile and run Octave test suite with --enable-address-sanitizer-flags to check for memory leaks
#* Results posted to bug report:
#* Results posted to bug report: {{bug #55415|55415}}
#: Completion Date:
#* Memory leak in graphics subsystem {{bug #55287|55287}} </strike>
#: Completion Date: 1/18/19
<!----------------------------------------------------------------------------->
<!----------------------------------------------------------------------------->
# Review documentation
# <strike> Review documentation </strike>
#* Grammar check documentation so that it conforms to Octave standards
#* <strike> Grammar check documentation so that it conforms to Octave standards  
#* Spell check documentation
#* Spell check documentation
#* Verify no functions missing from manual
#* Verify no functions missing from manual
Line 54: Line 59:
#* Verify all formats (Info, HTML, pdf) build correctly
#* Verify all formats (Info, HTML, pdf) build correctly
#* Review NEWS for any features which should be announced
#* Review NEWS for any features which should be announced
#* Update major version number in "@subtitle Edition XXX" in octave.texi
#* Update major version number in "@subtitle Edition XXX" in octave.texi </strike>
#: Completion Date:
#: Completion Date: 12/23/18
<!----------------------------------------------------------------------------->
<!----------------------------------------------------------------------------->
# Localization and Internationalization
# <strike> Localization and Internationalization
#* Update language translation files (*.ts)
#* Update language translation files (*.ts)
#* Create issue report on Savannah as a centralized location for uploading files
#* Create issue report on Savannah as a centralized location for uploading files
#* Submit call for translations for GUI strings
#* Submit call for translations for GUI strings
#: Completion Date:
#* Push translations provided by translators </strike>
#: Completion Date: 1/16/19
<!----------------------------------------------------------------------------->
# <strike> 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) </strike>
#: Completion Date: 1/23/19
<!----------------------------------------------------------------------------->
<!----------------------------------------------------------------------------->
# Verify build process and create release candidates
# <strike> Verify build process and create release candidates </strike>
#* Update configure.ac with new version information
#* <strike> Update configure.ac with new version information </strike>
#** Update AC_INIT, OCTAVE_MAJOR_VERSION, OCTAVE_MINOR_VERSION, OCTAVE_PATCH_VERSION, OCTAVE_RELEASE_DATE
#** <strike> Update AC_INIT, OCTAVE_MAJOR_VERSION, OCTAVE_MINOR_VERSION, OCTAVE_PATCH_VERSION, OCTAVE_RELEASE_DATE </strike>
#* Verify 'make distcheck' passes
#* <strike> Verify 'make distcheck' passes </strike>
#* Create release candidate
#* <strike>Create release candidate </strike>
#** 'make dist'
#** <strike>'make dist' </strike>
#** hg tag repository with release candidate ID
#** <strike>hg tag repository with release candidate ID </strike>
#** For Windows, create installer [[Windows Installer]]
#** <strike>For Windows, create installer [[Windows Installer]] </strike>
#** Upload release candidate
#** <strike>Upload release candidate </strike>
#** Add release candidate version to Savannah bug tracker
#** <strike>Add release candidate version to Savannah bug tracker </strike>
#** Announce release candidate to Octave-Maintainers, Octave-Help, on web page
#** <strike>Announce release candidate to Octave-Maintainers, Octave-Help, on web page </strike>
#** Repeat release candidate cycle until clean
#** <strike>Repeat release candidate cycle until clean </strike>
#: Completion Date:
#: Completion Date: 2/25/2019
<!----------------------------------------------------------------------------->
<!----------------------------------------------------------------------------->
# Final Release
# Final Release
#* Update version information
#* <strike> Update version information </strike>
#** Update configure.ac (AC_INIT, OCTAVE_MAJOR_VERSION, OCTAVE_MINOR_VERSION, OCTAVE_PATCH_VERSION, OCTAVE_RELEASE_DATE)
#** <strike> Update configure.ac (AC_INIT, OCTAVE_MAJOR_VERSION, OCTAVE_MINOR_VERSION, OCTAVE_PATCH_VERSION, OCTAVE_RELEASE_DATE) </strike>
#** 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)
#** <strike> Update NEWS (final release date) </strike>
#** Update NEWS (final release date)
#** <strike>Update CITATION (version, year, URL)</strike>
#** Update CITATION (version, year, URL)
#** <strike> Update org.octave.Octave.appdata.xml (version number and release date) </strike>
#** Update org.octave.Octave.appdata.xml (version number and release date)
#* <strike> hg tag repository with release version number </strike>
#* hg tag repository with release version number
#* <strike> merge default onto stable to become the current stable release </strike>
#* merge default onto stable to become the current stable release
#* <strike> Savannah bug tracker version info
#* Savannah bug tracker version info
#** add new release version to bug tracker
#** add new release version to bug tracker
#** remove release candidate versions from bug tracker
#** remove release candidate versions from bug tracker </strike>
#* Announce final release on Octave mailing lists and web site
#* Announce final release on
#** Octave mailing lists
#** Octave web site
#** <strike> This wiki </strike>
#: Completion Date:
#: Completion Date:
<!----------------------------------------------------------------------------->
<!----------------------------------------------------------------------------->
# Post-Release
# <strike> Post-Release </strike>
#* Update configure.ac (AC_INIT, OCTAVE_MAJOR_VERSION, OCTAVE_MINOR_VERSION, OCTAVE_PATCH_VERSION) to next release cycle
#* <strike> Update configure.ac (AC_INIT, OCTAVE_MAJOR_VERSION, OCTAVE_MINOR_VERSION, OCTAVE_PATCH_VERSION) to next release cycle </strike>
#* Remove all deprecated functions (either OCTAVE_DEPRECATED in C++ or scripts/deprecated for m-files) scheduled for deletion in default branch
#* <strike> Update oct file API version number (configure.ac:OCTAVE_API_VERSION, add "+" suffix) </strike>
#* <strike> 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
#* Move NEWS file to backup in etc/NEWS.X
#* Create new NEWS file
#* Create new NEWS file </strike>
#: Completion Date:
#: Completion Date: 2/25/19


[[Category:Releases]]
[[Category:Releases]]
[[Category:Development]]

Latest revision as of 06:46, 10 December 2019

5.0.0 Release Tasks[edit]

  1. 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
  2. File bug reports for all outstanding bugs known, but not reported
    • Put out a general call for reports on Octave-Maintainers and Octave-Help list
    Completion Date: 12/20/2018
  3. Review patch tracker/bug list for any patches submitted that may be included before release
    Completion Date: 12/20/2018
  4. 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
  5. Clear all bugs identified as must-fix
    Completion Date:
  6. 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:
  7. 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:
  8. Run lint checker on code base
    • Possibilities include compiling with -fsanitize=undefined and running 'make check', cppcheck, etc.
    • PVS static analyzer results PVS static analyzer - 5.0 Release
    • clang static analyzer results #55400
    • Compile with -fsanitize=undefined and run 'make check'
    Completion Date: 1/17/19
  9. 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:
  10. Compile and run Octave test suite with --enable-address-sanitizer-flags to check for memory leaks
    • Results posted to bug report: #55415
    • Memory leak in graphics subsystem #55287
    Completion Date: 1/18/19
  11. 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
  12. 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
  13. 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: 1/23/19
  14. 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: 2/25/2019
  15. Final Release
    • Update version information
      • Update configure.ac (AC_INIT, OCTAVE_MAJOR_VERSION, OCTAVE_MINOR_VERSION, OCTAVE_PATCH_VERSION, OCTAVE_RELEASE_DATE)
      • 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
      • Octave web site
      • This wiki
    Completion Date:
  16. Post-Release
    • Update configure.ac (AC_INIT, OCTAVE_MAJOR_VERSION, OCTAVE_MINOR_VERSION, OCTAVE_PATCH_VERSION) to next release cycle
    • Update oct file API version number (configure.ac:OCTAVE_API_VERSION, add "+" suffix)
    • 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: 2/25/19