Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Deprecation: #105279 - Replace TYPO3 EnumType with Doctrine DBAL EnumType #4328

Open
simonschaufi opened this issue Oct 15, 2024 · 0 comments

Comments

@simonschaufi
Copy link
Collaborator

Deprecation: #105279 - Replace TYPO3 EnumType with Doctrine DBAL EnumType

https://docs.typo3.org/c/typo3/cms-core/main/en-us/Changelog/13.4/Deprecation-105279-ReplaceTYPO3EnumTypeWithDoctrinedbalEnumType.html

Deprecation: #105279 - Replace TYPO3 EnumType with Doctrine DBAL EnumType

See 105279

Description

TYPO3 did provide a custom Doctrine DBAL column type implementation for
the native SQL type ENUM that was only compatible with MySQL and
MariaDB connections.

The Doctrine DBAL Team implemented ENUM support with Release
4.2.0
in class
\Doctrine\DBAL\Types\EnumType, only supporting MySQL and MariaDB as
well.

TYPO3 removed its custom implementation with TYPO3 v13.4.0.

Class \TYPO3\CMS\Core\Database\Schema\Types\EnumType has been marked
as deprecated and is replaced with an class alias of
\Doctrine\DBAL\Types\EnumType. The alias will be removed with TYPO3
v14.

See Release
4.2.0

Impact

doctrine/dbal >= 4.2.0 is incompatible with TYPO3 versions before
v13.4.0. Composer-based instances using TYPO3 v13.3 or older should add
an according conflict to their composer.json.

Affected installations

Instances using the the ENUM type directly or by any third party
extension using TYPO3 13.0 to 13.3 in Composer mode will break, when the
doctrine/dbal Composer packages is updated to version 4.2.0 or newer.

Migration

Upgrade (directly) to TYPO3 v13.4 or ensure to avoid updating Doctrine
DBAL to 4.2.x or newer versions in Composer-based instances.

Replace \TYPO3\CMS\Core\Database\Schema\Types\EnumType type
declarations with \Doctrine\DBAL\Types\EnumType.

Database, PHP-API, NotScanned, ext:core

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant