Skip to content

v5.0.5 — Require database translator extension

Choose a tag to compare

@se7enxweb se7enxweb released this 16 Apr 04:51
· 4 commits to master since this release

What's Changed

Dependencies

  • Added se7enxweb/sevenx_exponential_platform_v5_database_translator as a required dependency (dev-main).

    The database translator extension is now installed automatically alongside the Legacy Bridge. It intercepts every SQL query issued by the eZ Publish Legacy kernel and rewrites legacy ez* table and column names to their Ibexa DXP 5.0+ ibexa_* equivalents, then reverse-maps result-row column names back to the legacy names the kernel expects — with no modifications to the kernel itself.

Translator extension highlights

  • Three driver subclassesQueryTranslatorDriverMySQLiDB, QueryTranslatorDriverSQLite3DB, QueryTranslatorDriverPostgreSQLDB — each activated via DatabaseSettings.ImplementationAlias in site.ini.
  • Shared rewriterQueryTranslatorSQLRewriter runs five passes: table-name substitution, safe global column renames, table-qualified version → status renames, context-aware unqualified version → status, and datatype-identifier literal rewrites ('ezstring' → 'ibexa_string' etc.).
  • Result-row remapping — Ibexa 5.0 column names are aliased back to legacy names on every arrayQuery() result, making SELECT * queries transparent to the kernel.
  • MySQL, SQLite3, and PostgreSQL all supported.

Full Changelog: v5.0.4...v5.0.5