Chapter: Migrating from a previous version
« New features | ^ Introduction |
− Table of content
When you migrate from an old version of jelix to a newer one, you always must do these tasks:
- If you are using Composer, change the version into your composer.json.
- If you installed Jelix from a zip/tar.gz package, replace the
lib/
directory by the one provided in the new version. - remove all the files in the
temp/yourapp/
directory - update your code as specified hereafter.
- launch the migration tool which will probably modify some files and directories
- In each instance of the application, launch the configurator and the installer of Jelix
Updating from Jelix 1.6 or lower ¶
Migrate to Jelix 1.7 first.
Read the upgrade instructions of all previous versions and then follow instructions below.
Upgrading from jelix 1.7.x ¶
Here are all steps to follow to migrate your application.
Requirements ¶
Jelix 1.8 needs PHP 7.4 minimum. Verify that you have this version of PHP on your server, or an higher one. At the time this page was edited, PHP 8.2 or higher is recommended, as PHP 7.4 and 8.0 are not maintained anymore (except in Debian 11). Check the good version to use on https://www.php.net/supported-versions.p(..).
Backup ¶
First, do a backup of your databases, and of your application files (modules, configuration etc.).
Temp directories ¶
As usual, you must remove every files into the temp/yourapp/
directory.
Installing files of Jelix ¶
If you are using Composer ¶
Install Composer by reading its instructions.
In the directory of your project, you have a composer.json
file. It should indicate
the package jelix/jelix
or jelix/jelix-standard
as a dependency, in the
require
section. You should set it to ^1.8.1
.
Example:
{
"name": "mycompany/myapp",
"type": "application",
"require": {
"jelix/jelix": "^1.8.1"
}
}
Then on the command line, type:
composer update
Skip the following section.
If you don't use Composer ¶
Download the Jelix package from the download site of Jelix, as usual.
Replace the lib/
directory by the new one. Take care about librairies stored
in the previous lib/ that were not provided by Jelix.
Upgrading your modules ¶
Update sources of vendor's modules that you have installed, with version compatible with Jelix 1.8.
For your own modules, in module.xml
files, indicate that the module is compatible with Jelix 1.8
(change the attribute maxversion
). Example:
<jelix minversion="1.6" maxversion="1.8.*"/>
Updating your code ¶
See the detailed changelog to know what are the new classes and methods you can use.
There is no API removed or changed.
Update of Jelix instances ¶
Now that the source code and main configuration of the application have been updated, you should save files into your source code manager, deploy sources to your test server (in particularly your local server).
Each time you deploy new sources on a server, you should launch the local configurator, and the installer.
In the current specific case, the local configurator will end the configuration and the migration of some configuration parameters tied to the server context. The installer will launch the update of data into the database.
So, erase any files from your temp directory, then launch:
php install/configurator.php
php install/installer.php
The end ¶
After all these operations, your application should work.