Updating a DXP project
This page is for developers who keep a DXP project up to date. The guide's section 16 gives the commands; this page adds the order of work and the checks that keep an update from surprising you.
Contents
- Before an update
- Updating Composer packages
- Updating Node packages
- Recipes
- Development branches and pinning
- What to read
Before an update
- Work on a branch and a copy of the database.
- Note the current versions:
composer show "se7enxweb/*" "ibexa/*" > var/before-update.txt.
Updating Composer packages
composer update # everything within constraints
composer update se7enxweb/exponential-platform-dxp-core # a single package
php bin/console doctrine:migration:migrate --allow-no-migration
php bin/console cache:clear
php bin/console exponential:reindex # if the content model schema may have changedThen rebuild the admin assets if se7enxweb/admin-ui changed (The admin UI),
run the tests, and commit composer.lock:
git add composer.lock && git commit -m "Updated: Composer dependencies"Updating Node packages
yarn upgrade
yarn dev
git add yarn.lock && git commit -m "Updated: Node dependencies"Recipes
A package update can come with a newer Flex recipe. composer recipes lists the ones with updates;
composer recipes:update <package> applies one and shows the diff. Review it: it touches your configuration.
Development branches and pinning
The skeleton sets minimum-stability: dev and prefer-stable: false, and several packages are required at
5.0.x-dev branches (Reading the metapackage). A
composer update can therefore bring new commits, not only new tags. For production:
- commit
composer.lockand deploy only withcomposer install; - update on purpose, on a branch, and test before merging;
- where a se7enxweb fork has tags, you may require a tag range in your own
composer.json.
What to read
| Source | What it tells you |
|---|---|
| exponential-platform-dxp release notes | Changes of the metapackage |
| Admin UI releases | Changes of the administration fork |
| Platform package forks and command renames | Steps when moving from upstream names |
| Platform package map | Newest tags of every fork |
Related pages
- Deploying
- Doctrine migrations
- Troubleshooting
- Free documentation: this page is free to copy, translate and improve under the GNU FDL 1.3.
Become an Exponential Partner
Partners share their information, provide funding, contribute back and develop the products with us, and that is how Exponential grows. A partner website and dashboard are planned for mid-2027: please become a partner today to speed up our growth rate and land new features faster.