Global navigation

   Documentation Center
   eZ Studio & eZ Platform
     User Manual
     Technical Manual
   eZ Publish 4.x / legacy

eZ Publish (5.x)

eZ Publish 5.x | For eZ Platform & eZ Studio topics see Technical manual and User manual, for eZ Publish 4.x and Legacy topics see eZ Publish legacy

Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.


titleeZ Publish Platform 5.3 and higher

This page only applies to eZ Publish Platform 5.3 and higher, for earlier versions of the Enterprise version of eZ Publish consult Service Portal user guide available for download at This page is also generic about using Composer, for instructions specific to a release, see release notes.


Keeping your system up-to-date is important, to make sure your it is running optimally and securely. The update mechanism in eZ Publish Platform is using the de facto standard PHP packaging system called Composer.
This makes it easy to adapt package installs and updates to your workflow, allowing you to test new/updated packages in a development environment, put the changes in your version control system (git, Subversion, Mercurial, etc.), pull in those changes on a staging environment and, when approved, put it in production.


Excerpt Include
authoreZ Systems


To get access to these updates log in to your service portal on If your project is configured for eZ Publish Platform 5.3 or higher, you will see the following on the "Maintenance and Support agreement details" screen:

  1. Click "Create token" (This requires the "Portal administrator" access level.)
  2. Fill in a label describing the use of the token. This will allow you to revoke access later
    • Example, if you need to provide access to updates to a third party a good to example would be "53-upgrade-project-by-partner-x"
  3. Copy the password, you will not get access to this again!


as Password: the token password you retrieved in step 3. 

titleSupport agreement expiry

If your Support agreement expires, your authentication token(s) will no longer work. They will become active again if the agreement is renewed, but this process may take up to 24 hours. (If the agreement is renewed before the expiry date, there will be no disruption of service.)


Optional: Save authentication information in auth.json to avoid repeatedly typing it


The dumped file will be too big and can cause an overhead for any request, even Cache.

Common errors

Cloning failed using an ssh key

When dealing with packages, you might get this if you somehow tell composer to download dev packages, or tell it to download from source. Currently our service only support distribution packages in alpha stability or higher, so make sure to check what stability and avoid use of --prefer-source (this is the reason examples above are using --prefer-dist).

Best practice for Bundles

Best practice for Bundles is described in Symfony documentation under Best Practices for Reusable Bundles, with eZ bundles there is some notable exceptions:

  • You may write your documentation using markdown (.md) if you prefer, however .rst is recommended if you plan to use, as heavily used by many open source projects.
Composer Metadata
  • For defining "type", the following are at the moment known valid values:
    • ezpublish-legacy-extension | For standalone 4.x (legacy) extensions, to be used with ezpublish-legacy-installer
    • ezpublish-bundle | For eZ Publish Platform 5.x bundles, may optionally be a "legacy bundle".
    • symfony-bundle | Standard symfony bundles as described in Symfony doc.
  • For eZ Platform and eZ Studio there is also:
    • ezplatform-bundle | Symfony bundles that uses eZ Platform features (may also be used by bundles that work across 5.x and 6.x ezpublish-kernel)
    • ezstudio-bundle | Symfony bundles that uses eZ Studio features (and optionally also eZ Platform features)
      • Deprecated: Please use ezplatform-bundle and add dependencies on the ee packages you depend on instead.