diff --git a/typo3/sysext/core/Documentation/Changelog/master/Important-90236-RespectExtensionStateExcludeFromUpdatesDuringLanguageUpdates.rst b/typo3/sysext/core/Documentation/Changelog/master/Important-90236-RespectExtensionStateExcludeFromUpdatesDuringLanguageUpdates.rst new file mode 100644 index 0000000000000000000000000000000000000000..e347e1c8f121445c7c72f7a2394eb92adf6f05dd --- /dev/null +++ b/typo3/sysext/core/Documentation/Changelog/master/Important-90236-RespectExtensionStateExcludeFromUpdatesDuringLanguageUpdates.rst @@ -0,0 +1,18 @@ +.. include:: ../../Includes.txt + +======================================================================================== +Important: #90236 - Respect extension state `excludeFromUpdates` during language updates +======================================================================================== + +See :issue:`90236` + +Description +=========== + +If the state property inside :file:`ext_emconf.php` is set to `excludeFromUpdates`, +the extension will be skipped while updating the language files in the Install Tool. + +This setting is especially helpful if you create a custom extension which uses the same extension +key as an existing TER extension. + +.. index:: Backend, ext:core diff --git a/typo3/sysext/install/Classes/Service/LanguagePackService.php b/typo3/sysext/install/Classes/Service/LanguagePackService.php index 1ea8fb9183e6419f9a9dd77e357bf75ec72964f8..275bb8a7f3f866f3a339a86c107060fb4c75395c 100644 --- a/typo3/sysext/install/Classes/Service/LanguagePackService.php +++ b/typo3/sysext/install/Classes/Service/LanguagePackService.php @@ -159,6 +159,11 @@ class LanguagePackService implements LoggerAwareInterface $EM_CONF = []; include $path . 'ext_emconf.php'; $title = $EM_CONF[$key]['title'] ?? $title; + + $state = $EM_CONF[$key]['state'] ?? ''; + if ($state === 'excludeFromUpdates') { + continue; + } } $extension = [ 'key' => $key,