@@ -63,14 +63,12 @@ return RectorConfig::configure()
6363php vendor/bin/rector --dry-run
6464```
6565
66- ### TODO: Install all 4.6 LTS Updates? It could help with the DB schemas or configs…
67-
6866### Move from annotation to attribute
6967
7068Delete [ ` config/routes/annotations.yaml ` ] ( https://github.com/symfony/recipes/blob/main/doctrine/annotations/1.0/config/routes/annotations.yaml ) if you haven't customised it.
7169
7270If you have customized it, you have to move from ` type: annotation ` to ` type: attribute ` .
73- TODO: Any help or recommendation to provide to the reader?
71+ TODO: Any help or recommendation to provide to the reader? Rector?
7472
7573The ` config/routes.yaml ` file should start with the following declaration from [ its recipe] ( https://github.com/symfony/recipes/blob/main/symfony/routing/7.0/config/routes.yaml ) :
7674
@@ -218,6 +216,8 @@ composer recipes:install symfony/webpack-encore-bundle --reset --force --yes
218216
219217#### Sort commands
220218
219+ TODO: Is ibexa/ts-config-ibexa removal change this?
220+
221221Recipe appends a command to ` composer.json ` 's ` auto-scripts ` .
222222You have to manually resort the commands so the ` tsconfig.json ` file
223223is created by ` yarn ibexa-generate-tsconfig `
@@ -236,6 +236,10 @@ Your `auto-scripts` entry should look like this:
236236 },
237237```
238238
239+ #### Remove Ibexa Icons
240+
241+ Remove from your ` config/bundles.php ` the line about ` IbexaIconsBundle ` .
242+
239243#### Post update script
240244
241245``` bash
@@ -245,33 +249,21 @@ composer run-script post-update-cmd
245249
246250### Update database
247251
248- Apply the following database update script :
252+ The main schema has changed and the provided SQL file ` ibexa-4.6.latest-to-5.0.0.sql ` updates it :
249253
250254=== "MySQL"
251255
252256 ```bash
253257 mysql -u <username> -p <password> <database_name> < vendor/ibexa/installer/upgrade/db/mysql/ibexa-4.6.latest-to-5.0.0.sql
254- # LTS Update related schemas to inject only if the add-on was never installed
255- php bin/console ibexa:doctrine:schema:dump-sql vendor/ibexa/collaboration/src/bundle/Resources/config/schema.yaml | mysql -u <username> -p <password> <database_name>
256- php bin/console ibexa:doctrine:schema:dump-sql vendor/ibexa/share/src/bundle/Resources/config/schema.yaml | mysql -u <username> -p <password> <database_name>
257- php bin/console ibexa:doctrine:schema:dump-sql vendor/ibexa/connector-ai/src/bundle/Resources/config/schema.yaml | mysql -u <username> -p <password> <database_name>
258- php bin/console ibexa:doctrine:schema:dump-sql vendor/ibexa/discounts/src/bundle/Resources/config/schema.yaml | ddev mysql -u <username> -p <password> <database_name>
259- php bin/console ibexa:doctrine:schema:dump-sql vendor/ibexa/discounts-codes/src/bundle/Resources/config/schema.yaml | ddev mysql -u <username> -p <password> <database_name>
260258 ```
261259
262260=== "PostgreSQL"
263261
264262 ```bash
265263 psql <database_name> < vendor/ibexa/installer/upgrade/db/postgresql/ibexa-4.6.latest-to-5.0.0.sql
266- # LTS Update related schemas to inject only if the add-on was never installed
267- php bin/console ibexa:doctrine:schema:dump-sql vendor/ibexa/collaboration/src/bundle/Resources/config/schema.yaml | psql <database_name>
268- php bin/console ibexa:doctrine:schema:dump-sql vendor/ibexa/share/src/bundle/Resources/config/schema.yaml | psql <database_name>
269- php bin/console ibexa:doctrine:schema:dump-sql vendor/ibexa/connector-ai/src/bundle/Resources/config/schema.yaml | psql <database_name>
270- php bin/console ibexa:doctrine:schema:dump-sql vendor/ibexa/discounts/src/bundle/Resources/config/schema.yaml | psql <database_name>
271- php bin/console ibexa:doctrine:schema:dump-sql vendor/ibexa/discounts-codes/src/bundle/Resources/config/schema.yaml | psql <database_name>
272264 ```
273265
274- Many tables are renamed. Some columns are also renamed.
266+ Many tables and columns are renamed.
275267If you have custom code directly querying those, you will need to update them.
276268
277269You can track the renaming in the ` ibexa-4.6.latest-to-5.0.0.sql ` file or below.
@@ -379,23 +371,89 @@ You can track the renaming in the `ibexa-4.6.latest-to-5.0.0.sql` file or below.
379371
380372TODO: Compatibility "views" layers? Even if there is this layer to save time, it is recommended to update your code to use the new tables.
381373
374+ ### Install new features' schemas
375+
376+ Features which were optional 4.6 LTS Updates are now part of 5.0.0.
377+
378+ * If you have already installed the feature, its schema has been updated by the previous step.
379+ * If you haven't installed the feature, you need to add its schema to your database.
380+ * If you mistakenly reinstall a schema, no worries, you will encounter a "Table already exists" error which can be ignored.
381+
382+ #### Install AI actions schema
383+
384+ === "MySQL"
385+
386+ ```bash
387+ php bin/console ibexa:doctrine:schema:dump-sql vendor/ibexa/connector-ai/src/bundle/Resources/config/schema.yaml | mysql -u <username> -p <password> <database_name>
388+ ```
389+
390+ === "PostgreSQL"
391+
392+ ```bash
393+ php bin/console ibexa:doctrine:schema:dump-sql vendor/ibexa/connector-ai/src/bundle/Resources/config/schema.yaml | psql <database_name>
394+ ```
395+
396+ #### Install collaboration
397+
398+ TODO: collaboration will be out as a regular part of 5.0 before being released as a 4.6 LTS Update
399+
400+ === "MySQL"
401+
402+ ```bash
403+ php bin/console ibexa:doctrine:schema:dump-sql vendor/ibexa/collaboration/src/bundle/Resources/config/schema.yaml | mysql -u <username> -p <password> <database_name>
404+ php bin/console ibexa:doctrine:schema:dump-sql vendor/ibexa/share/src/bundle/Resources/config/schema.yaml | mysql -u <username> -p <password> <database_name>
405+ ```
406+
407+ === "PostgreSQL"
408+
409+ ```bash
410+ php bin/console ibexa:doctrine:schema:dump-sql vendor/ibexa/collaboration/src/bundle/Resources/config/schema.yaml | psql <database_name>
411+ php bin/console ibexa:doctrine:schema:dump-sql vendor/ibexa/share/src/bundle/Resources/config/schema.yaml | psql <database_name>
412+ ```
413+
414+ #### Install discounts [[ % include 'snippets/commerce_badge.md' %]]
415+
416+ === "MySQL"
417+
418+ ```bash
419+ php bin/console ibexa:doctrine:schema:dump-sql vendor/ibexa/discounts/src/bundle/Resources/config/schema.yaml | mysql -u <username> -p <password> <database_name>
420+ php bin/console ibexa:doctrine:schema:dump-sql vendor/ibexa/discounts-codes/src/bundle/Resources/config/schema.yaml | mysql -u <username> -p <password> <database_name>
421+ ```
422+
423+ === "PostgreSQL"
424+
425+ ```bash
426+ php bin/console ibexa:doctrine:schema:dump-sql vendor/ibexa/discounts/src/bundle/Resources/config/schema.yaml | psql <database_name>
427+ php bin/console ibexa:doctrine:schema:dump-sql vendor/ibexa/discounts-codes/src/bundle/Resources/config/schema.yaml | psql <database_name>
428+ ```
429+
382430### Clear cache pool
383431
384432The persistence cache pool needs to be cleared to be able to use the repository again.
385433
386- ```
434+ ``` bash
387435php bin/console cache:pool:clear --all
388436```
389437
390- TODO: Only Redis/Memcached?
438+ ### Migrations
391439
392- ### Migration file(s)
440+ #### Taxonomy
393441
394- TODO: Keep up to date
442+ ``` bash
443+ php bin/console ibexa:migrations:import vendor/ibexa/taxonomy/src/bundle/Resources/install/migrations/2025_08_09_14_47_mark_tag_as_container.yaml
444+ php bin/console ibexa:migrations:migrate --file=2025_08_09_14_47_mark_tag_as_container.yaml --siteaccess=admin
445+ ```
395446
396- On Experience or Commerce, the following migration file(s) must be applied.
447+ #### Product catalog
397448
449+ ``` bash
450+ php bin/console ibexa:migrations:import vendor/ibexa/product-catalog/src/bundle/Resources/migrations/2025_07_09_13_52_mark_product_category_container.yaml
451+ php bin/console ibexa:migrations:migrate --file=2025_07_09_13_52_mark_product_category_container.yaml --siteaccess=admin
398452```
453+
454+ #### Corporate accounts [[ % include 'snippets/experience_badge.md' %]] [[ % include 'snippets/commerce_badge.md' %]]
455+
456+ ``` bash
399457php bin/console ibexa:migrations:import vendor/ibexa/corporate-account/src/bundle/Resources/migrations/2025_07_08_09_27_set_container_to_company.yaml
400458php bin/console ibexa:migrations:migrate --file=2025_07_08_09_27_set_container_to_company.yaml --siteaccess=admin
401459```
0 commit comments