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.
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.
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:
JIRA server eZ Systems JIRA tracker serverId 841cf523-cc54-30bc-bc5d-89e63192498a key EZP-23328
- 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:
JIRA server eZ Systems JIRA tracker serverId 841cf523-cc54-30bc-bc5d-89e63192498a key EZP-23437
- 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:
JIRA server eZ Systems JIRA tracker serverId 841cf523-cc54-30bc-bc5d-89e63192498a key EZP-23441
- 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
JIRA server eZ Systems JIRA tracker columns key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution serverId 841cf523-cc54-30bc-bc5d-89e63192498a key EZP-22523
- 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
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.