This file includes only the most important items that should be addressed before attempting to upgrade or during the upgrade of a vanilla Oro application.
Please refer to CHANGELOG.md for a list of significant changes in the code that may affect the upgrade of some customizations.
The minimum required PHP version is 7.4.11.
The var/attachment
and var/import_export
directories are no longer used for storing files and have been removed from the default directory structure.
All files from these directories must be moved to the new locations:
- from
var/attachment/protected_mediacache
tovar/data/protected_mediacache
; - from
var/attachment
tovar/data/attachments
; - from
var/import_export
tovar/data/importexport
.
Files for standard import should be placed into var/data/import_files
instead of var/import_export/files
.
- The feature toggle for WEB API was implemented. After upgrade, the API feature will be disabled. To enable it please follow the documentation Enabling an API Feature.
oro:assets:install
command was removed, use [assets:install
] instead.oro:assetic:dump
command was removed, useoro:assets:build
instead.nodejs
andnpm
are required dependencies noworo_entity.database_exception_helper
service was removed. CatchDoctrine\DBAL\Exception\RetryableException
directly instead of helper usage.
- To successfuly upgrade to 3.0.0 version which uses Symfony 3 you need to replace all form alias by their respective FQCN's in entity configs and embedded forms. Use the following script to find out which values should be changed.
php vendor/oro/platform/bin/oro-form-alias-checker/oro-form-alias-checker
- Changed minimum required php version to 7.1
- A full rebuilding of the backend search index is required due to tokenizer configuration has been changed.
- Changed minimum required php version to 7.0
- Updated dependency to fxpio/composer-asset-plugin composer plugin to version 1.3.
- Composer updated to version 1.4.
composer self-update
composer global require "fxp/composer-asset-plugin"
- The
oro:search:reindex
command now works synchronously by default. Use the--scheduled
parameter if you need the old, async behaviour