Skip to content

Release Checklist

PaulT edited this page Jun 23, 2019 · 32 revisions
  • Run the webERP/build/check_syntax.sh script (from the webERP/build directory) to check for php syntax errors that may not have been detected during testing or other general use. This script opens each script with php using the -l (lint) option to check that the syntax is valid.

    Any syntax errors are output to: ~/weberp/_date_.log Inspect this file and fix any reported syntax problems.

  • Add the new version number to includes/ConnectDB.inc

  • Ensure that the sql/mysql/upgrade_old_version*-new_version_ file has the necessary SQL statement: UPDATE config SET confvalue='_new_version_' WHERE confname='VersionNumber';

  • Re-run the sql/mysql/upgrade_old_version-new_version_ file against the database to ensure that all DB changes have been applied to your database - this will also update your DB version (the config table 'VersionNumber') to the new release number too.

  • Add the new SQL upgade script reference to UpgradeDatabase.php

  • Add any missing commit/update entries in CHANGELOG.md

  • Add a new heading with the release version number and date below 'Unreleased' in CHANGELOG.md.

    Also, at the bottom of this file:

    • Add a new link to a GitHub 'Comparing changes' page (follow the other link examples)
    • Update the Unreleased link to compare between the new version and HEAD.
  • Add a new table for upcoming changes below 'Unreleased' in CHANGELOG.md

  • Replace the old version number (just above the Download Now button) in README.md with the new release version number.

  • Starting with version 4.15, the webSHOP is included as part of the webERP release. So, the webSHOP tree must be added to exist at the same level in the web-server location as webERP. (NOT added as a webERP sub-directory)

    The webSHOP code can be retrieved from here. The make_release step will add both webERP/ and webSHOP/ to the zip file.

  • Script: build/make_release.sh. BEFORE THIS SCRIPT IS RUN, there are some edits to do within the file:

    • Change the BASE_DIR= to match your system's webERP location path.
    • Change the OUTPUT_DIR= to a path where the release webERP.zip file will be placed.
    • Set the MYSQL_USER= and the MYSQL_PWD= values. (the script runs 1 truncate and 3 mysqldump commands on the weberpdemo database)
    • Compare the list of languages in this file to the locale/ directory. Any missing xx_XX.utf8 directory entries should be added except for the en_GB.utf8 directory [has the .pot (template) file] should NOT be added to the list. Note that the languages listed are sorted by directory name. Simply follow the same format as the other lines and please keep the names sorted to ease referencing. (There are two language sections to edit)

    The make_release.sh script accomplishes a few tasks:

    • Rebuilds the translation files using the latest strings and then re-merges with the existing translations
    • Truncates the audittrail table
    • Creates the sql/mysql/country_sql/default.sql and the sql/mysql/country_sql/demo.sql files
    • Performs other SQL file manipulation (and cleanup)
    • Then finally creates the webERP.zip release file. (to the specified OUTPUT_DIR= path)
  • Rename the file webERP.zip to webERP__new_version_.zip

  • Commit and then push (via Pull Request) any changes to development branch(es)

  • Merge any development branch(es) into 'master' branch

  • Write the release notes (Phil - wondering if these should be in the doc/release_notes - or perhaps this is a poor duplication of the changelog.md ?)

  • Create a release on GitHub

  • Upload the release to Sourceforge

  • Upgrade the demo site to the latest release - Phil to do - he will need a reminder!!

  • Add details of the release to the 'Latest News' section on the website homepage - Phil to do - he will need a reminder!!

  • Promote the new release to the forum

  • Promote the new release to the mailing lists