Discover eZ Publish Platform 5.4 "Castor"
7th November 2014
eZ Publish Platform 5.4 is our last 5.x release before we launch eZ Platform (aka 6.0) next year, based on the Platform parts that have been introduced and matured during the 5.x releases starting with 5.0 two years ago.
5.4 is a sibling release to 5.3, meaning it will be supported as a LTS (Long term supported) together with it. Where 5.3 provides already very high stability, 5.4 provides further forward compatibility with eZ Platform, and in addition to shipping with new "eZ Platform" features as showcased below, 5.4 will thus receive some additional improvements during first part of 2015 when necessary to make sure upgrading from 5.4 to eZ Platform will be as smooth as possible.
Practical information for beta testers
Rolling update: This beta is a rolling update, there are beta / RC updates via composer until final release is out, where you should re-install with the final.
Download: This release is available in TTL license for eZ Partners in Partner Portal, alternatively the open source parts of the product comparable to this beta is available as part of 2014.11 Community release.
Reporting bugs: Make sure to mark affected version to be the same version you currently have, so if you just downloaded beta1 report it as 5.4.0-beta1, but if you have done composer update and received RC packages, report as 5.4.0-RC1. If on Community release mark affected as v2014.11 if that is what you have.
5.3 introduces several new features which makes it easier to use, faster to develop on and also continues to improve performance.
Batteries included: Symfony 2.5, later update to 2.6 & 2.7 LTS
Given the theme of this release compared to 5.3 is to provider access to all the latests features and be as close to what you would expect from eZ Platform next year, we bundle it with Symfony 2.5 which provide a slew of new features and improvements to make your life easier. We further plan to bump the Symfony version to Symfony 2.6 in December, and lastly update to 2.7LTS in beginning of summer 2015. Symfony 2.7LTS is the Symfony version 5.4 will be supported with for the rest of it's long term supported life.
New features since Symfony 2.3LTS:
Binary files / IO improvements
Native IO support, using Flysystem as a default handler
Handling of binary files input/output is now native. The default configuration uses thephpleague/flysystem, an abstract Flysystem library. This will allow eZ Platform to support all kind of solutions for binary storage in the future.
- Pull-request: ezsystems/ezpublish-kernel#1017
- JIRA issue: EZP-23328 - Split the IO handler interface Closed
- Documentation: https://doc.ez.no/display/EZP6/Binary+files+handling
Native support for legacy DFS cluster
Building on top of the Native IO system, a legacy metadata handler has been added, compatible with the legacy database, the official solution for multi-server eZ Publish 4.x and 5.x. This avoids the overhead of legacy fallbacks for binary file lookups in 5.4.
- Pull-request: ezsystems/ezpublish-kernel#1031
- JIRA issue: EZP-23437 - Finish the native DFS IO metadata handler Closed
- Documentation: https://doc.ez.no/display/EZP6/Legacy+DFS+cluster
The revamp of the IO architecture brings much flexibility in how URL of images and binary files are handled. It is now very easy to serve images from a static server by means of semantic configuration.
- Pull-request: ezsystems/ezpublish-kernel#1039
- JIRA issue: EZP-23441 - IO Url decorator configuration Closed
- Documentation: https://doc.ez.no/display/EZP6/Binary+files+URL+handling
New ImageAlias system using Imagine
Image alias system can be considered as one of the oldest features in eZ Publish. It is a very flexible mechanism for managing content images and has long proven its efficiency. For 5.4 we have migrated the feature to nbeing Symfony based using LiipImagineBundle and Imagine library. This allows for new functionality in terms of extensibility for develipng your own filters and built in support for image handling via GD (default), ImageMagick (through Imagick PHP extension) and GraphicsMagick (through Gmagick PHP extension).
- Blog post: New in eZ 5.4: Image alias system revamped
Improved HTTPCache system using FOSHTTPCache
Being built on top of Symfony, a HTTP framework, Varnish support in eZ Publish is implicit. In 5.2 we introduced context-aware Http cache, allowing cache to be shared even for authenticated users. Version 5.4 goes one step further, adding native support for Varnish 4, and more.
- Blog post: New in eZ 5.4: HTTP cache reloaded
SiteAccess aware "dynamic settings injection"
For those that have already started to create services in Symfony with eZ Publish Platform and encountered having to read SiteAccess settings, you have up until this point had to depend on a service called ConfigResolver which would allow you to lookup settings depending on the currently SiteAccess. However as of 5.4 this is no longer necessary, with a new syntax your able to specify the settings you want in normal service configuration and get the resulting scalar value directly in your service.
- Blog post: New in eZ 5.4: Dynamic settings injection
Improved Search API Performance
eZ Publish Platform 5.4 and 5.3.3 included noticeable (significant when using several languages) performance improvements when using the Platform Search API.
- Blog post: http://share.ez.no/blogs/core-development-team/new-in-5.3.3-and-5.4-improved-api-performance
- ez_field_name, ez_field_description and ez_trans_prop Twig helpers
- eZ Matrix FieldType added as a optional community bundle
- eZ Price FieldType added as a optional community bundle
- EZP-22523 - Support locking with Memcached SessionHandler Closed
- eZ Find now using Solr 4.10.1
- Demo Bundle:
- Search page using Repository API
- Breadcrumbs now using whiteoctober/breadcrumbs-bundle
- Menu now using knplabs/knp-menu-bundle
- crevillo ( "Winner of the 5.4 contributor award" )
In addition, ezpublish-legacy is still receiving a lot of pull requests. The equally brave contributors to this part of the release can be found here.
5.4.0 Full Changelog
For the full 5.3 changelog please refer to the 5.4.0 Changelog dedicated page.
5.4 Known issues
The complete list of know issues is available in the 5.4 Known issues page.