Skip to main content
Version: Next

Update Notes

Upgrade to 2026.2.3

Frontend Build Ships as a Packaged Archive

The compiled Studio frontend is no longer committed as an expanded src/Resources/public/studio/build/ directory. It now ships as a single archive (build-dist/build-<id>.zip) that is extracted into src/Resources/public/studio/build/ automatically during cache warmup.

pimcore/studio-ui-bundle ^2026.2.1 is now required, as it provides the archive extraction.

Note: Read-only filesystem deployments must run bin/console cache:warmup (or cache:clear) during the build/deploy phase while the bundle directory (usually under vendor/) is still writable. Standard Pimcore deployments already do this. When assets:install runs in copy mode, run cache:warmup before it, otherwise no frontend assets are copied. If the filesystem becomes read-only before the first warmup, the bundle fails with BuildArchiveNotWritableException because there is no build to serve.

Update to 2026.1.0

General

  • Added support to PHP 8.5.
  • Removed support to PHP 8.3 and Symfony v6.

Removed Admin Classic / ExtJS Support

  • Removed pimcore/admin-ui-classic-bundle dependency. The bundle no longer supports the ExtJS-based admin UI.
  • PimcoreTranslationsProviderInterfaceBundle no longer implements PimcoreBundleAdminClassicInterface and no longer uses BundleAdminClassicTrait. The methods getJsPaths() and getCssPaths() returning ExtJS assets have been removed.
  • Removed DependencyInjection\Compiler\ContentSecurityPolicyUrlsPass compiler pass which registered Bootstrap/jQuery CDN URLs for the admin CSP header.
  • The following legacy ExtJS JS/CSS assets have been removed:
    • public/js/ext_extensions.js
    • public/js/pimcore/startup.js
    • public/js/pimcore/configPanel.js
    • public/js/pimcore/translationsettings.js
    • public/css/admin.css
    • public/js/pimcore/vendor/ (Bootstrap datepicker and locale files)

Removed Legacy Controllers and Routing

  • Removed Controller\BackendController. Functionality moved to dedicated Studio controllers under Controller\Studio\.
  • Removed Controller\TranslationJobsController, replaced by granular Studio controllers under Controller\Studio\TranslationJobs\.
  • Removed Routing\StudioRouteLoader. Studio routes are now registered via standard Symfony configuration.
  • Removed Resources/config/pimcore/studio_routing.yaml as part of the Studio routing cleanup.

Xliff Bundle Moved from Pimcore Core

  • The XliffBundle has been moved from pimcore/pimcore into this bundle as a sub-bundle at Pimcore\TranslationsProviderInterfaceBundle\Bundle\XliffBundle\.
  • All references to Pimcore\Bundle\XliffBundle\* must be updated to Pimcore\TranslationsProviderInterfaceBundle\Bundle\XliffBundle\*. Affected namespaces include:
    • Pimcore\Bundle\XliffBundle\TranslationItemCollection\TranslationItemCollectionPimcore\TranslationsProviderInterfaceBundle\Bundle\XliffBundle\TranslationItemCollection\TranslationItemCollection
    • Pimcore\Bundle\XliffBundle\TranslationItemCollection\TranslationItemPimcore\TranslationsProviderInterfaceBundle\Bundle\XliffBundle\TranslationItemCollection\TranslationItem
    • Pimcore\Bundle\XliffBundle\ExportDataExtractorService\ExportDataExtractorServiceInterfacePimcore\TranslationsProviderInterfaceBundle\Bundle\XliffBundle\ExportDataExtractorService\ExportDataExtractorServiceInterface
    • Pimcore\Bundle\XliffBundle\ImporterService\ImporterServiceInterfacePimcore\TranslationsProviderInterfaceBundle\Bundle\XliffBundle\ImporterService\ImporterServiceInterface
    • Pimcore\Bundle\XliffBundle\ImportDataExtractor\TranslationItemResolver\TranslationItemResolverInterfacePimcore\TranslationsProviderInterfaceBundle\Bundle\XliffBundle\ImportDataExtractor\TranslationItemResolver\TranslationItemResolverInterface

Interface Changes

  • TranslationsJobServiceInterface: The use statement for TranslationItemCollection changed from Pimcore\Bundle\XliffBundle\TranslationItemCollection\TranslationItemCollection to Pimcore\TranslationsProviderInterfaceBundle\Bundle\XliffBundle\TranslationItemCollection\TranslationItemCollection. Update all implementations accordingly.

Update to Version 4.0

General

  • Dropped xplanation Integration. Please check your configuration (yaml/settings-store) and remove the xplanation key.

Update to Version 3.1

General

  • Dropped support of Pimcore 10, bumped minimum requirement of pimcore/pimcore to ^11.2. Replaced all $request->get() with their explicit input source.
  • Deprecate xplanation Integration