Update with new Commerce packages¶
This update procedure applies if you have a v4.3 installation, and you don't use Commerce packages.
Temporary need of Composer conflict
To go through this update, map the conflicting packages in your composer.json
file as following:
1 2 3 4 |
|
Update from v4.3.x to v4.3.latest¶
Before you update to v4.4, you need to go through the following steps to update to the latest maintenance release of v4.3 (v4.3.5).
Update the application to v4.3.latest¶
Run:
1 |
|
1 |
|
1 |
|
Remove deprecated field types¶
By default, every v4.3 installation has a set of built-in content types.
Some of them use field types deprecated in v4.4, which need to be removed manually.
Make sure to remove all occurrences of sesspecificationstype
, uivarvarianttype
, sesselection
, sesprofiledata
field types from your content types.
This step should be performed on the working installation, omitting it results in an error during update:
1 2 |
|
In that case, you can use Null field type to define a replacement for deprecated field types in config/services.yaml
:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 |
|
Update from v4.3.latest to v4.4¶
When you have the latest version of v4.3, you can update to v4.4.
Update the application to v4.4¶
First, run:
1 2 |
|
1 2 |
|
1 2 |
|
The recipes:install
command installs new YAML configuration files.
Review the old YAML files and move your custom configuration to the relevant new files
Flysystem v2¶
Local adapters' directory
key changed to location
.
It's defined in config/packages/oneup_flysystem.yaml
:
1 2 3 4 5 |
|
oneup/flysystem-bundle
recipe by executing:
1 |
|
Remove ibexa/commerce-*
packages with dependencies¶
Remove the following bundles from config/bundles.php
.
You don't have to remove third-party bundles (FOS\
to JMS\
) if they're used by your installation.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
|
Next, remove related extensions' configuration.
You don't have to remove third-party bundles (for example config/packages/fos_rest.yaml
) if they're used by your installation.
1 2 3 4 5 6 7 8 |
|
1 2 3 4 5 6 7 8 |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
|
Finally, remove related routes by deleting config/routes/ibexa_commerce.yaml
file.
Update the database¶
Next, update the database if you're using Ibexa Commerce. Ibexa Content and Ibexa Experience don't require the database update.
Caution
Always back up your data before running any database update scripts.
After updating the database, clear the cache.
Don't use --force
argument for mysql
/ psql
commands when performing update queries.
If there is any problem during the update, it's best if the query fails immediately, so you can fix the underlying problem before you execute the update again.
If you leave this for later you risk ending up with an incompatible database, though the problems might not surface immediately.
Apply the following database update scripts:
1 |
|
1 |
|
If you used old Commerce packages before, and have migrated everything, you can remove the old tables.
The tables that can be removed are prefixed with ses_
and sve_
.
To switch to the right database, issue the following command:
1 |
|
Then, to remove all the old tables, run the following queries:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
|
To switch to the right database, issue the following command:
1 |
|
Then, to remove all the old tables, run the following queries:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
|
Ibexa Open Source¶
If you have no access to Ibexa DXP's ibexa/installer
package, database upgrade isn't necessary.
Ensure password safety¶
Following Security advisory: IBEXA-SA-2022-009, unless you can verify based on your log files that the vulnerability has not been exploited, you should revoke passwords for all affected users.
Finish code update¶
Finish the code update by running:
1 |
|
Run data migration¶
Customer Portal self-registration¶
If you're using Ibexa Experience or Ibexa Commerce, you can now run data migration required by the Customer Portal applications feature to finish the update process:
1 2 |
|