==== 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 - Update the manual content, update its version number etc.. - check if this files are updated: * README * lib/jelix/CREDITS * lib/jelix/INSTALL * lib/jelix-modules/CREDITS - 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 - 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 - create a new tag on jelix-standard repos - create packages locally with build/buildjelix.php and build/buildapp.php and test them - 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 - push new commits and tag on github and create a release on github with built packages - update version in api/ on jelix.org - 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) - Update the manual content - Create a new branch on the manual repository, and set the new version number both on the new branch and on the master branch - reference the new manual branch in the configuration of docs.jelix.org - 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 - check if this files are updated in the Jelix repository: * README * lib/jelix/CREDITS * lib/jelix/INSTALL * lib/jelix-modules/CREDITS - create a new branch jelix-1.X.x in the jelix repository - update scripts of the build machine for the CI, to take care of the new branch - 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 - 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 - create packages locally with build/buildjelix.php and build/buildapp.php and test them - 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 - push new commits and tag on github and create a release on github with built packages - create a new tag on jelix-standard repos - update the controller of the homepage of the web site, add the branch number in the list - update the template of home page to show the new stable branch - update all menu bar in some pages to add link to the manual (references page, wiki template) - create a new download page on the web site http://jelix.org/articles/en/download/stable/1.X - update http://jelix.org/articles/en/download/stable and http://jelix.org/articles/en/download/nightly - publish a news on jelix.org/news/, in mailing lists and on tweeter