Pimcore X – The Latest Features
What has been done so far? A quick summary of Pimcore 10.1
More than 99 changes have been implemented into Pimcore 10.1. Like the Statig Page Generator, improved data cache performance, and a storage migration tool. If this doesn't ring a bell, have a look at our previous blog article about the added features of Pimcore 10.1.
For all Pimcore Academy subscribers: Do you want to deepen your knowledge about those topics? Have a look at the "What's new in Pimcore 10.1" course at Pimcore Academy. To access the course, please make sure to be logged into the Pimcore Academy.
10.2 - Summary
The release of Pimcore 10.2 comes with some great new features and PHP 8.1 support. Below you find our favorite selection. If you want to get more familiar with them, head over to the dedicated Pimcore Academy course.
Config Improvements
The storage for Pimcore configurations is now adaptable as per the environment and easily deployable. By default, all configurations are stored in var/config/ directory as YAML files and loaded as Symfony Config. These configurations are ready-only in the production environment. You can also change the storage to the SettingsStore database to enable users to change configurations on production or disable it entirely with the disabled option. (9330)
Symfony Messenger for Maintenance & Core tasks
Pimcore asynchronous tasks are now handled with Symfony Messenger. Instead of running additional core commands to serve the asynchronous jobs, users can set up workers (“messenger –consume”) responsible for consuming dispatched asynchronous jobs. (6371)
Asset Thumbnails: AVIF Image format support
Pimcore now automatically supports AVIF image format for thumbnails using `auto` format (only available for `Imagick`). (10554)
Data Objects: Added support for Twig content in Text Layout
It is now possible to render Twig content with Text layout attributes on Data Objects. Twig syntax is supported inside htmleditor and with the Renderer class. (10502)
Performance Guide
We have added a new performance best-practice guide for making your application even more performant with some helpful benchmarks to analyze the change impact for each topic.
Get the guide
What's ahead? A short outlook to Pimcore 10.3
UI Improvements
DataObject Grid – Filter by Relations
Folder grids allow the user to list data objects to filter and sort based on different attributes. So far, it was possible to filter the list based on simple attributes like text, select and system properties, etc. Soon you can also filter the list based on relation attributes like OneToMany, ManyToMany, images, etc. (10022)
Configuration Grids: Row editor
Configuration grids are more user-friendly and performant as editing will be handled with Row editor instead of cell editor. This also reduces the number of requests passed to a save configuration from Admin UI. (10646)
Better aggregation of validation exception messages
Throwing validations messages will be improved for hierarchal data object layouts. (10528)
Domain translations
Pimcore Translation component will support domains since Pimcore X. Soon it is possible to manage Admin & Frontend translations with domain filter within a single interface in Admin UI. Also, you will be able to add additional domains for easier management. (6568)
Technical
Data objects - Disable inheritance for single fields
Excluding some fields of a data object class from getting inherited values will soon be possible. This can be done by overriding implementing method getNextParentForInheritance method in the overriding class. (10719)
Symfony 6 Return type preparations
We have already started working on Symfony 6 preparations on Pimcore X, so fixing deprecations and migrating implementations on new Symfony features is what we constantly do with minor releases.
In the 10.3 release, we are starting to work on the most critical change for Symfony 6, which is adding return types for classes extending Symfony features. Keeping backward compatibility in mind, we introduce changes only on safe classes, e.g., classes marked as internal or final. If you are extending Pimcore classes, it is a must to look at these changes and adapt the return types already in your custom implementations to make your projects ready for Pimcore 11. (10846)
Documents: New interfaces for Editables
Introducing new interfaces for getDataEditmode, rewriteIds and load implementations on document editables. (8908)
Documents: Headless Chrome to generate Page Previews
Adding support for headless chrome to generate document page previews. The new library will replace wkhtmltoimage in Pimcore 11. (10934)
JavaScript events to enable virtual data folder integration
Adding JavaScript events will allow developers to integrate folders and objects as part of a virtual data object tree. (10721)