From 2c3457399e472b23f369b675c6cee3471ecddb7a Mon Sep 17 00:00:00 2001 From: Max Kellermann <noreply@example.com> Date: Mon, 6 Feb 2023 12:14:30 +0000 Subject: [PATCH] [TASK] sysext/install/Check: check PHP extension "tokenizer" Various libraries incorporated by TYPO3 use the "token_get_all" function, crashing PHP execution if the "tokenizer" extension is not loaded. The system environment pre-check now checks the presence of the PHP extension. Also, Composer now requires the presence of the `ext-tokenizer` module. Releases: main Resolves: #99842 Change-Id: I57cb6244d8eb3d8364eae5d23430370e60fd9658 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/77711 Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch> Tested-by: core-ci <typo3@b13.com> Tested-by: Christian Kuhn <lolli@schwarzbu.ch> Tested-by: Markus Klein <markus.klein@typo3.org> Reviewed-by: Oliver Klee <typo3-coding@oliverklee.de> Reviewed-by: Markus Klein <markus.klein@typo3.org> Tested-by: Benni Mack <benni@typo3.org> Reviewed-by: Benni Mack <benni@typo3.org> --- composer.json | 1 + composer.lock | 3 ++- typo3/sysext/core/composer.json | 1 + typo3/sysext/install/Classes/SystemEnvironment/Check.php | 1 + 4 files changed, 5 insertions(+), 1 deletion(-) diff --git a/composer.json b/composer.json index b574959656ce..dc53aa8295ab 100644 --- a/composer.json +++ b/composer.json @@ -45,6 +45,7 @@ "ext-mbstring": "*", "ext-pcre": "*", "ext-session": "*", + "ext-tokenizer": "*", "ext-xml": "*", "composer-runtime-api": "^2.1", "bacon/bacon-qr-code": "^2.0.7", diff --git a/composer.lock b/composer.lock index f2492b51e7e7..38de88a13332 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "95c552d41acec33b145ec7bea700127a", + "content-hash": "2b08a93fffec94932c4952ce844ef7f3", "packages": [ { "name": "bacon/bacon-qr-code", @@ -8980,6 +8980,7 @@ "ext-mbstring": "*", "ext-pcre": "*", "ext-session": "*", + "ext-tokenizer": "*", "ext-xml": "*", "composer-runtime-api": "^2.1" }, diff --git a/typo3/sysext/core/composer.json b/typo3/sysext/core/composer.json index 00dad5132778..34953af2373a 100644 --- a/typo3/sysext/core/composer.json +++ b/typo3/sysext/core/composer.json @@ -28,6 +28,7 @@ "ext-mbstring": "*", "ext-pcre": "*", "ext-session": "*", + "ext-tokenizer": "*", "ext-xml": "*", "composer-runtime-api": "^2.1", "bacon/bacon-qr-code": "^2.0.7", diff --git a/typo3/sysext/install/Classes/SystemEnvironment/Check.php b/typo3/sysext/install/Classes/SystemEnvironment/Check.php index 1da1b695372a..016a9297d537 100644 --- a/typo3/sysext/install/Classes/SystemEnvironment/Check.php +++ b/typo3/sysext/install/Classes/SystemEnvironment/Check.php @@ -74,6 +74,7 @@ class Check implements CheckInterface 'session', 'SPL', 'standard', + 'tokenizer', 'xml', 'zip', 'zlib', -- GitLab