Upgrade Information
Following steps are necessary during updating to newer versions.
Upgrade to 2026.3.2
- The bundle no longer registers
StatisticsControllerroutes under/pimcore-statistics-explorerand no longer registers the route namespimcore_statisticsexplorer_statistics_*. If your application used these routes, register the controller yourself, see Setup Routes. - If your
routing.ymlimports@PimcoreStatisticsExplorerBundle/Controller(the former Setup Routes example), it also mounts the Pimcore Studio controllers under your prefix. Import@PimcoreStatisticsExplorerBundle/Controller/StatisticsController.phpinstead. StatisticsControllerreturns403for the data sources, data, field collection and field settings actions of a context without a user provider, for examplecustomreports. Only users of the context see the users and roles to share configurations with. The controller does not check who is logged in: Portal Engine protects its routes (/_portal-engine/stats/...) itself, so also update Portal Engine to its next bugfix release.- The Pimcore Studio endpoints for data sources and fields of the custom report adapters require the
reports_configpermission. - Saving and deleting a configuration require a logged-in user. Loading, saving and deleting only accept configurations of the context in the URL.
- Global configurations and configurations from
LoadConfigurationEventlisteners that belong to another context are no longer loaded or listed. Those without a context are used for the requested context. - Configurations saved without a logged-in user have no owner (
ownerId IS NULLinbundle_statistics_explorer_configuration) and are listed as global configurations. Review and remove those you did not create on purpose. - Sort directions in the field settings only accept
ascanddesc, the order key of aggregations only accepts_keyand_count, and the result size (max) only accepts positive integers. Other values fall back to the defaults (MySQL lists now return up to 500 rows instead of none whenmaxis missing).
Upgrade to 2026.2.2
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(orcache:clear) during the build/deploy phase while the bundle directory (usually undervendor/) is still writable. Standard Pimcore deployments already do this. Whenassets:installruns in copy mode, runcache:warmupbefore it, otherwise no frontend assets are copied. If the filesystem becomes read-only before the first warmup, the bundle fails withBuildArchiveNotWritableExceptionbecause there is no build to serve.
Upgrade to 2026.1.0
PHP / Symfony Requirements
- Added support for PHP 8.5
- Dropped PHP 8.3 and Symfony 6 support; upgrade to PHP 8.4+ and Symfony 7 before updating to this version
- Dropped
symfony/scheduler^6.4support;^7.2is now required
Removed Admin Classic UI (ExtJS) Support
The bundle no longer supports the Pimcore Admin Classic UI (ExtJS). All ExtJS-related code and assets have been removed:
PimcoreStatisticsExplorerBundleno longer implementsPimcoreBundleAdminClassicInterfaceand no longer usesBundleAdminClassicTrait- Removed method:
PimcoreStatisticsExplorerBundle::getJsPaths() - Deleted ExtJS JavaScript assets:
src/Resources/public/js/pimcore/customreports/statisticsExplorerList.jssrc/Resources/public/js/pimcore/customreports/statisticsExplorerStatistic.jssrc/Resources/public/js/pimcore/customreports/statisticsFilter.js
The bundle now exclusively supports Pimcore Studio. pimcore/studio-ui-bundle is now a required dependency.
Removed / Replaced Classes
Pimcore\Bundle\StatisticsExplorerBundle\Controller\CustomReportsAdapterControllerhas been removed; it is replaced by the newPimcore\Bundle\StatisticsExplorerBundle\Controller\StatisticsControllerPimcore\Bundle\StatisticsExplorerBundle\Routing\StudioRouteLoaderhas been removed; routing is now handled via standard Symfony attribute routing
Routing Changes
- The custom route loader type
pimcore_statistics_explorer_studiois no longer available - Studio backend routes are now loaded unconditionally (no longer conditional on
PimcoreStudioBackendBundlepresence) - A new route group
pimcore_statistics_exploreris registered under the prefix/pimcore-statistics-explorerfor all controllers in theControllernamespace (removed again in 2026.3.2)
Bundle Extension Changes
PimcoreStatisticsExplorerExtensionnow unconditionally loadsstudio_backend.yamlandstudio_ui.yaml; previously these were only loaded when the respective bundles were detected in the container
Upgrade to 2.0.0
- Removed support for Elasticsearch 6 and 7, added Elasticsearch 8 support
- Changed Elasticsearch client configuration, details see Configuration.
Upgrade to 1.3.0
- Execute all migrations of the bundle.
Upgrade to Pimcore X
- Update to latest (allowed) bundle version in Pimcore 6.9 and execute all migrations.
- Then update to Pimcore X.