Meet the future eZ Platform
27th May 2014
eZ Publish Platform 5.3 offers large improvements of the future proof Symfony based "Platform stack", as well as a stable foundation to upgrade legacy (4.x) to with it's 3+2 years LTS (Long term supported) release with much improved integrations and documentation. The main theme of 5.3 has been to complete the integration with the Symfony ecosystem, embracing standard components making the transition from Symfony development to eZ development a lot easier, while also providing more features eZ developers have traditionally been used to. From 5.3 on, while it is still possible to use the legacy stack and templating system, we think using the "Platform stack" (previously referred as "New/Symfony/6.x") and the Symfony framework is the main way to go. This will be the foundation for the future eZ Platform where it will operate without dependencies on the legacy stack. Quick links |
5.3 Features
5.3 introduces several new features which makes it easier to use, faster to develop on and also continues to improve performance.
Doctrine DBAL / DoctrineBundle use
eZ Publish 5.3 now uses Doctrine DBAL instead of Zeta Components Database. This allows users to reuse database connection and settings with other pure Symfony2 bundles which uses Doctrine ORM (default choice in Symfony2 documentation and code generators).
- Documentation:
- Implementation details: Original JIRA issue, DoctrineBundle integration pull-request, Legacy storage engine refactoring pull-request, Legacy storage engine refactoring pull-request
User authentication using Symfony security component
New login / logout functionality that uses Symfony's authentication system. This enables any kind of login handler or SSO handler made for Symfony to also work with eZ Publish 5., including handlers for LDAP.
- Documentation:
- Implementation details: Original issue, Original pull request, Multiple user providers issue, Multiple user providers pull request
Full Composer support
With 5.3 there is no longer two ways to deal with updates. Now it is only composer updates also for eZ Publish related software.
- Documentation: Using Composer, 5.3.1 Release Notes, 5.3.2 Release Notes
Legacy SSO support
Allows use of existing legacy SSO handlers with the new user login system in 5.3 which is powered by Symfony.
- Documentation: Authentication with Legacy SSO Handlers
- Implementation details: Original issue, Original pull request
Content Preview using "eZ Platform" stack
With 5.3 your content previewing needs, also from the current legacy based admin interface will run on the new "eZ Platform" stack, avoiding that you need to also create all templates in legacy to be able to preview correctly.
- Implementation details: Original Issue, Original pull request
Solr 4.x support in eZ Find and API
Preview of Solr 4.x support in API and bundled Solr 4.7.0 support for ezfind allows for use of new functionality provided by Solr 4.x such as improved performance for indexing and new options like soft commit to control this.
- eZ Find:
- Documentation: What is new in eZ Find LS 5.3.0?
- Implementation details: Original pull request
- Technology preview of Solr search in API
- Documentation: Solr Search Engine Bundle introduced in 5.4.5-beta1
Ubuntu 14.04 support
- Documentation: Requirements 5.3
Twig & Tpl Template debug in Symfony Web debug Toolbar
Developer feature known from legacy which allows you to see which templates are used on a page, how many times and how much time they spend being executed.
- Documentation: Templates informations in Web Debug Toolbar
- Implementation details: Original issue, Original pull request
Admin Interface: Comment moderation
Following the Comments integration added in 5.2 we have in this release exposed this also in backend as a tab per content, allowing you to easily get access to Disqus moderation per content within backend of eZ Publish.
- Documentation: Comments Tab
Language Switcher
The language switcher is built on the Symfony stack and is improved for a simpler usage.
- Documentation: Language Switcher
- Implementation details: Original issue, Original pull request
Location Search API
Tree based "fetches" are now allowed be performed with the new Location Search API, allowing generation of tree structures much more easily by returning the location instead of content, as done by existing Content Search API, and by applying any location filters on the specific location instead of any of the locations of a Content object.
- Documentation: Working with Locations
- Implementation details: Original issue ,Original pull request
REST API v2 improvements
HTTP Cache aware, CORS support and support for OPTIONS method.
- Documentation: REST API v2
- Implementation details: Issue for HTTP Cache aware, Issue for CORS support, Issue for REST OPTIONS, Pull request for HTTP Cache aware, Pull request for CORS support, Pull request for OPTIONS
Search API support for MapLocation Criterion and SortClause
Search API is now able to search for content with geolocation making it possible to do geolocation range searches and sorting by distance from a point; on Demo site this is shown using a restaurants-close-to-you page.
Documentation: 2. Browsing, finding, viewing#2.Browsing,finding,viewing-Search
Implementation details: Original issue, Original pull request
Legacy extensions in bundles
With this new feature mixing legacy and "eZ Platform" needs has become a whole lot easier. Easily said it allows you to place legacy extensions within a Bundle structure and eZ Publish 5.3+ will make sure it is injected into legacy kernel.
Example use case: CommentsBundle with a light admin tab in legacy allowing you to moderate comments.
- Documentation: Legacy code and features - Legacybundles
- Implementation details: Original issue, Original pull request
Legacy Website Toolbar
Not to be mixed with the Web Debug Toolbar provided by Symfony and extended by eZ Publish, this feature is about allowing "ezwt" (Website Toolbar) extension to also work in DemoBundle to provide the front-end editing functionality that you know from 4.x.
- Documentation: Display the eZ Website Toolbar
- Implementation details: Original JIRA Issue, Original pull request
Demo Site: Places
Taking advantage of the MapLocation feature a new feature is exposed in the demo showing how to implement listing and map views of content using the maplocation field.
- Documentation: The MapLocation FieldType
- Implementation details: Original issue, Original pull request
Other Improvements
- Lazy services (issue, pull request, symfony documentation)
- Configurable IndexPage (issue, pull request, documentation)
- ez_is_field_empty, updated to support passing field object as second parameter.
5.3 Contributors
For 5.3 we want to reach out a special thank you to those that have contributed to this release, especially the brave few who have helped out on the "eZ Platform stack":
- crevillo
- hhamon
- bchoquet-heliopsis
- beberlei
- is06
- stof
- kore
- Plopix
- taenadil
- iosolinf
- Djamy
- jeromegamez
- gabriperego
- nlescure
- peterkeung
- rolebi
- emodric
- dymissy
- henningp
And our two students over this period which has helped on all aspects of Platform stack:
In addition ezpublish-legacy is still receiving a lot of pull requests, the also brave contributions to this part of the release can be found here.
5.3.0 Full Changelog
For the full 5.3 changelog please refer to the 5.3.0 Changelog dedicated page.
5.3 Known issues
The complete list of know issues is available in the 5.3 Known issues page.