Skip to main content
Version: 2026.3

Upgrade Information

Following steps are necessary during updating to newer versions.

Upgrade to 2026.3.2​

  • The bundle no longer registers StatisticsController routes under /pimcore-statistics-explorer and no longer registers the route names pimcore_statisticsexplorer_statistics_*. If your application used these routes, register the controller yourself, see Setup Routes.
  • If your routing.yml imports @PimcoreStatisticsExplorerBundle/Controller (the former Setup Routes example), it also mounts the Pimcore Studio controllers under your prefix. Import @PimcoreStatisticsExplorerBundle/Controller/StatisticsController.php instead.
  • StatisticsController returns 403 for the data sources, data, field collection and field settings actions of a context without a user provider, for example customreports. 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_config permission.
  • 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 LoadConfigurationEvent listeners 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 NULL in bundle_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 asc and desc, the order key of aggregations only accepts _key and _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 when max is 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 (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.

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.4 support; ^7.2 is 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:

  • PimcoreStatisticsExplorerBundle no longer implements PimcoreBundleAdminClassicInterface and no longer uses BundleAdminClassicTrait
  • Removed method: PimcoreStatisticsExplorerBundle::getJsPaths()
  • Deleted ExtJS JavaScript assets:
    • src/Resources/public/js/pimcore/customreports/statisticsExplorerList.js
    • src/Resources/public/js/pimcore/customreports/statisticsExplorerStatistic.js
    • src/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\CustomReportsAdapterController has been removed; it is replaced by the new Pimcore\Bundle\StatisticsExplorerBundle\Controller\StatisticsController
  • Pimcore\Bundle\StatisticsExplorerBundle\Routing\StudioRouteLoader has been removed; routing is now handled via standard Symfony attribute routing

Routing Changes​

  • The custom route loader type pimcore_statistics_explorer_studio is no longer available
  • Studio backend routes are now loaded unconditionally (no longer conditional on PimcoreStudioBackendBundle presence)
  • A new route group pimcore_statistics_explorer is registered under the prefix /pimcore-statistics-explorer for all controllers in the Controller namespace (removed again in 2026.3.2)

Bundle Extension Changes​

  • PimcoreStatisticsExplorerExtension now unconditionally loads studio_backend.yaml and studio_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.