Skip to the content
Documentation
Help Start
Reading in:
  • German: 9,059 of 9,059 pages
About the help in other languages
All help pages

Exponential 6 and Exponential Platform (Symfony only)

Moving between Exponential 6 and Exponential Platform 3.2.9, the Symfony-only distribution based on the last free eZ Platform 3.2 - when it is the right target, the route through the 2.5 generation and the 2.5 to 3.0…

Download as PDF

Address: https://doc.exponential.earth/learninminutes/exphelp/viewer/install/migration/exponential-platform.md

On this page

Exponential 6 and Exponential Platform (Symfony only)

Exponential Platform (se7enxweb/exponential-platform, default branch 3.2) is the Symfony-only distribution "based on the last free versions of eZ Platform", in its own words, with "No Exponential 6.x Legacy Support". Its one GitHub release is v3.2.9 (2025-09-28). Its composer.json requires the 3.2 generation's forks (se7enxweb/ezplatform-kernel ~1.3.42, se7enxweb/ezplatform-admin-ui ~2.3.39, REST, GraphQL, RichText, Matrix and Query field types, Solr), Symfony 5 and PHP ^7.3 || ^8.1 to ^8.4.

Migration hub · Checklist · Installation notes in the product's repository: doc/eng-us/INSTALL.md

Contents

1. Is it the right target?

The 3.2 generation is older than the 3.3 generation that the other Exponential products carry (Platform Legacy v3.3.44.x, Nexus 1.1.0.x, OSS v3.3.0.x). For new work, prefer:

You wantBetter target
Symfony only, current PHP and SymfonyDXP 2.x (v5, Symfony 7.4) or DXP 1.x (4.6)
Symfony plus the legacy kernelPlatform Legacy
A site with a page builderNexus

Choose Exponential Platform 3.2.9 when an existing project already runs on it or on eZ Platform 3.0 to 3.2, and you want to keep that generation.

2. From Exponential 6 to Exponential Platform 3.2

The content tables are shared, but the 3.x schema dropped the legacy-only tables, and the platform reads no XmlText and no legacy password types. The route:

  1. Arrive on the 2.5 generation with the legacy kernel next to it: Platform Legacy v2.5.0.x, section 3.
  2. Convert XmlText to RichText there (ezxmltext:convert-to-richtext, DXP page, step 2).
  3. Make every active user's hash type 6 or 7 (resets, or a sign-in on the legacy kernel, which re-hashes).
  4. Apply the 2.5 to 3.0 file of this product: upgrade/db/<engine>/ezplatform-2.5.latest-to-3.0.0.sql (MySQL and PostgreSQL, branch 3.2). The Platform Legacy book describes what it does: removes the ezpublish-version and ezplatform-release rows and inserts ezplatform-release 3.0.0, widens ezcontentclass_attribute.data_text1, adds is_thumbnail, adds and fills ezkeyword_attribute_link.version. There are no files for 3.0 to 3.1 or 3.1 to 3.2. There is no SQLite file.
  5. Create the 3.2.9 project (composer create-project se7enxweb/exponential-platform:v3.2.9 or a Git clone of the tag), point .env.local (DATABASE_URL) at the migrated database, and do not run the installer on it.
  6. Move the storage to the platform's var_dir/storage_dir below the web root, so that the paths stored in the image XML and in ezimagefile still point at files; the path schemes of both sides and the checks are in 17.7 and 17.8. Configure the image variations, rebuild the URL aliases and the search index.
  7. Rewrite the presentation: TPL to Twig, INI to YAML, extensions to bundles (17.4, 17.5).
  8. Archive the legacy-only tables you no longer use.

The vendor's pages for the 2.5 to 3.x step are listed in chapter 16.3.

3. From Exponential Platform 3.2 onward or back

DirectionRoute
3.2 to 3.3upgrade/db/<engine>/ezplatform-3.2.0-to-3.3.0.sql (creates ibexa_setting) and ezplatform-3.2.3-to-3.2.4.sql, on the master branch; then Platform Legacy v3.3.44.x, Nexus 1.1.0.x or OSS v3.3.0.x
3.2 to DXP3.3 first, then the DXP route from step 5
3.2 back to Exponential 6"path B" of chapter 16.6: ezsqldiff.php (reference first) recreates the legacy-only tables, the version rows are set, RichText is rendered or converted (16.6.3), YAML becomes INI and Twig becomes TPL; the "3.0 to 3.3" row of 16.6.9 lists the details, including the default that ezkeyword_attribute_link.version needs for the legacy kernel's inserts
3.2 next to the legacy kernelarrive on 3.3 and use Platform Legacy v3.3.44.x

4. Verify, roll back, checklist

Verify with counts per content type and language, the admin, one edit and publish, image variations, search, doctrine:schema:validate. Roll back with the backup taken before each step; keep the old installation until the new one has run in production.

  • To do: 3.2.9 confirmed as the right target (or a newer generation chosen).
  • To do: 2.5 generation reached through Platform Legacy; XmlText converted; hashes 6/7.
  • To do: ezplatform-2.5.latest-to-3.0.0.sql applied on a copy; errors read.
  • To do: Project from v3.2.9; installer not run on the data; storage moved; aliases and index rebuilt.
  • To do: Templates, configuration and code rewritten; legacy-only tables archived.
  • To do: Redirects for every address that changed.

Become an Exponential Partner

Partners share their information, provide funding, contribute back and develop the products with us, and that is how Exponential grows. A partner website and dashboard are planned for mid-2027: please become a partner today to speed up our growth rate and land new features faster.

This page is part of the Exponential documentation and is free documentation under the GNU Free Documentation License 1.3 or any later version (the license of this documentation).

Something wrong on this page? Report an error

Documentation license

This documentation is free documentation, licensed under the GNU Free Documentation License 1.3 or later.

Exponential Copyright © 1998-2026 Exponential Foundation and 7x