Releasing a new version of Jelix

What should be done to release a new version of jelix..

maintenance release

New version on an existing branch

  1. Update the manual content, update its version number etc..
  2. check if this files are updated:
    • README
    • lib/jelix/CREDITS
    • lib/jelix/INSTALL
    • lib/jelix-modules/CREDITS
  3. update changelogs in the web site: http://jelix.org/articles/en/changelog
    • the page dedicated to the branch should be updated with the list of improvements and bug fixed
    • don't forget similar pages in other languages, at least in french
  4. execute the php build/set_new_version.php $NEWVERSION $NEXTVERSION
    • it will update VERSION files and add a tag like RELEASE_JELIX_X_Y_Z
    • ex: NEWVERSION=1.7.2 NEXTVERSION=1.7.3-pre
  5. create a new tag on jelix-standard repos
  6. create packages locally with build/buildjelix.php and build/buildapp.php and test them
  7. push new commits and tag on the gitlab instance : it will generate packages and API doc, and it will publish packages on download.jelix.org
  8. push new commits and tag on github and create a release on github with built packages
  9. update version in api/ on jelix.org
  10. publish a news on jelix.org/news/, in mailing lists and on tweeter
New branch

For major releases (new 1.x or x.0.0 version)

  1. Update the manual content
  2. Create a new branch on the manual repository, and set the new version number both on the new branch and on the master branch
  3. reference the new manual branch in the configuration of docs.jelix.org
  4. create the changelogs page in the web site: http://jelix.org/articles/en/changelog
    • the page dedicated to the branch should be updated with the list of improvements and bug fixed
    • don't forget similar pages in other languages, at least in french
  5. check if this files are updated in the Jelix repository:
    • README
    • lib/jelix/CREDITS
    • lib/jelix/INSTALL
    • lib/jelix-modules/CREDITS
  6. create a new branch jelix-1.X.x in the jelix repository
  7. update scripts of the build machine for the CI, to take care of the new branch
  8. execute the php build/set_new_version.php $NEWVERSION $NEXTVERSION on the new branch
    • it will update VERSION files and add a tag like RELEASE_JELIX_X_Y_Z
    • ex: NEWVERSION=1.7.2 NEXTVERSION=1.7.3-pre
  9. execute the php build/set_new_version.php $NEXTMAJORVERSION on the master branch, where $NEXTMAJORVERSION is the new major version of master, with a suffix -pre
  10. create packages locally with build/buildjelix.php and build/buildapp.php and test them
  11. push new commits and tag on the gitlab instance : it will generate packages and API doc, and it will publish packages on download.jelix.org
  12. push new commits and tag on github and create a release on github with built packages
  13. create a new tag on jelix-standard repos
  14. update the controller of the homepage of the web site, add the branch number in the list
  15. update the template of home page to show the new stable branch
  16. update all menu bar in some pages to add link to the manual (references page, wiki template)
  17. create a new download page on the web site http://jelix.org/articles/en/download/stable/1.X
  18. publish a news on jelix.org/news/, in mailing lists and on tweeter