From 4af5abc5867cd941aa81c7ae402dc448d14c45d8 Mon Sep 17 00:00:00 2001 From: Benjamin Franzke <bfr@qbus.de> Date: Wed, 27 May 2020 08:58:39 +0200 Subject: [PATCH] [TASK] Cleanup runtimeActivatedPackages deprecation removal Remove a stale comment wrt PackageManager->activePackageDuringRuntime() as that method has been removed in #91477. Drop the setSingletonInstance workaround which was only needed for the runtime activated packages feature to work. Also remove some left over runtimeActivatedPackages logic in various places. Resolves: #91500 Related: #91477 Related: #91473 Releases: master Change-Id: Ia2830c230e2a8b7443bb24a79c81dbf7f2f86226 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/64588 Tested-by: Benni Mack <benni@typo3.org> Tested-by: TYPO3com <noreply@typo3.com> Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de> Reviewed-by: Benni Mack <benni@typo3.org> Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de> --- typo3/sysext/core/Classes/Core/Bootstrap.php | 14 +++++--------- .../Classes/Utility/ExtensionManagementUtility.php | 6 +++--- .../core/Configuration/DefaultConfiguration.php | 1 - .../ToggleExtensionInstallationStateViewHelper.php | 4 ++-- .../ExtensionScanner/Php/ArrayDimensionMatcher.php | 1 + 5 files changed, 11 insertions(+), 15 deletions(-) diff --git a/typo3/sysext/core/Classes/Core/Bootstrap.php b/typo3/sysext/core/Classes/Core/Bootstrap.php index fa2822f94e96..1e4c94182502 100644 --- a/typo3/sysext/core/Classes/Core/Bootstrap.php +++ b/typo3/sysext/core/Classes/Core/Bootstrap.php @@ -106,12 +106,6 @@ class Bootstrap $coreCache ); - // Push PackageManager instance to ExtensionManagementUtility - // Should be fetched through the container (later) but currently a PackageManager - // singleton instance is required by PackageManager->activePackageDuringRuntime - GeneralUtility::setSingletonInstance(PackageManager::class, $packageManager); - ExtensionManagementUtility::setPackageManager($packageManager); - static::setDefaultTimezone(); static::setMemoryLimit(); @@ -142,10 +136,12 @@ class Bootstrap // makeInstance() method creates classes using the container from now on. GeneralUtility::setContainer($container); - // Reset singleton instances in order for GeneralUtility::makeInstance() to use - // ContainerInterface->get() for early services from now on. + // Reset LogManager singleton instance in order for GeneralUtility::makeInstance() + // to proxy LogManager retrieval to ContainerInterface->get() from now on. GeneralUtility::removeSingletonInstance(LogManager::class, $logManager); - GeneralUtility::removeSingletonInstance(PackageManager::class, $packageManager); + + // Push PackageManager instance to ExtensionManagementUtility + ExtensionManagementUtility::setPackageManager($packageManager); if ($failsafe) { $bootState->done = true; diff --git a/typo3/sysext/core/Classes/Utility/ExtensionManagementUtility.php b/typo3/sysext/core/Classes/Utility/ExtensionManagementUtility.php index 9e2a69487077..2ae4f6c718fc 100644 --- a/typo3/sysext/core/Classes/Utility/ExtensionManagementUtility.php +++ b/typo3/sysext/core/Classes/Utility/ExtensionManagementUtility.php @@ -1621,7 +1621,7 @@ tt_content.' . $key . $suffix . ' { */ protected static function getExtLocalconfCacheIdentifier() { - return 'ext_localconf_' . sha1((string)(new Typo3Version()) . Environment::getProjectPath() . 'extLocalconf' . serialize($GLOBALS['TYPO3_CONF_VARS']['EXT']['runtimeActivatedPackages'])); + return 'ext_localconf_' . sha1((string)(new Typo3Version()) . Environment::getProjectPath() . 'extLocalconf'); } /** @@ -1759,7 +1759,7 @@ tt_content.' . $key . $suffix . ' { */ protected static function getBaseTcaCacheIdentifier() { - return 'tca_base_' . sha1((string)(new Typo3Version()) . Environment::getProjectPath() . 'tca_code' . serialize($GLOBALS['TYPO3_CONF_VARS']['EXT']['runtimeActivatedPackages'])); + return 'tca_base_' . sha1((string)(new Typo3Version()) . Environment::getProjectPath() . 'tca_code'); } /** @@ -1844,7 +1844,7 @@ tt_content.' . $key . $suffix . ' { */ protected static function getExtTablesCacheIdentifier() { - return 'ext_tables_' . sha1((string)(new Typo3Version()) . Environment::getProjectPath() . 'extTables' . serialize($GLOBALS['TYPO3_CONF_VARS']['EXT']['runtimeActivatedPackages'])); + return 'ext_tables_' . sha1((string)(new Typo3Version()) . Environment::getProjectPath() . 'extTables'); } /** diff --git a/typo3/sysext/core/Configuration/DefaultConfiguration.php b/typo3/sysext/core/Configuration/DefaultConfiguration.php index d4ba12d8afd7..fdcb930239e5 100644 --- a/typo3/sysext/core/Configuration/DefaultConfiguration.php +++ b/typo3/sysext/core/Configuration/DefaultConfiguration.php @@ -1112,7 +1112,6 @@ return [ 'allowGlobalInstall' => false, 'allowLocalInstall' => true, 'excludeForPackaging' => '(?:\\.(?!htaccess$).*|.*~|.*\\.swp|.*\\.bak|node_modules|bower_components)', - 'runtimeActivatedPackages' => [], ], 'BE' => [ // Backend Configuration. diff --git a/typo3/sysext/extensionmanager/Classes/ViewHelpers/ToggleExtensionInstallationStateViewHelper.php b/typo3/sysext/extensionmanager/Classes/ViewHelpers/ToggleExtensionInstallationStateViewHelper.php index bceeadcc4b83..6937fd9cbdee 100644 --- a/typo3/sysext/extensionmanager/Classes/ViewHelpers/ToggleExtensionInstallationStateViewHelper.php +++ b/typo3/sysext/extensionmanager/Classes/ViewHelpers/ToggleExtensionInstallationStateViewHelper.php @@ -63,11 +63,11 @@ class ToggleExtensionInstallationStateViewHelper extends ActionViewHelper public function render() { $extension = $this->arguments['extension']; - // Early return if package is protected or is a runtime activated package and can not be unloaded + // Early return if package is protected and can not be unloaded /** @var \TYPO3\CMS\Core\Package\PackageManager $packageManager */ $packageManager = $this->objectManager->get(PackageManager::class); $package = $packageManager->getPackage($extension['key']); - if ($package->isProtected() || in_array($extension['key'], $GLOBALS['TYPO3_CONF_VARS']['EXT']['runtimeActivatedPackages'])) { + if ($package->isProtected()) { return ''; } diff --git a/typo3/sysext/install/Configuration/ExtensionScanner/Php/ArrayDimensionMatcher.php b/typo3/sysext/install/Configuration/ExtensionScanner/Php/ArrayDimensionMatcher.php index 2c5ad379191f..cc73306a01c4 100644 --- a/typo3/sysext/install/Configuration/ExtensionScanner/Php/ArrayDimensionMatcher.php +++ b/typo3/sysext/install/Configuration/ExtensionScanner/Php/ArrayDimensionMatcher.php @@ -429,6 +429,7 @@ return [ '$GLOBALS[\'TYPO3_CONF_VARS\'][\'EXT\'][\'runtimeActivatedPackages\']' => [ 'restFiles' => [ 'Deprecation-91030-Runtime-ActivatedPackages.rst', + 'Breaking-91473-DeprecatedFunctionalityRemoved.rst' ], ], ]; -- GitLab