Skip to content
Snippets Groups Projects
Commit 29db88c3 authored by Oliver Bartsch's avatar Oliver Bartsch Committed by Benni Mack
Browse files

[!!!][FEATURE] New Module Registration API

This change introduces a new way to register
TYPO3 Backend Modules.

Each module is now registered during build-time
in a dedicated registry. Therefore, The registration
is moved from ext_tables.php to the
Configuration/Backend/Modules.php file.

Accessing the registered modules can be done via
a central API, the ModuleProvider class. This class
takes care of access permissions and further
processing (e.g. module menu generation).

$GLOBALS[TBE_MODULES] is fully removed as no sane
backwards-compatibility (for a use-case) is available.

A new PSR-14 event BeforeModuleCreationEvent is added,
which allows to manipulate a module configuration, before
it is used to create and register the module.

Existing registrations do no longer work. However, to support
extenion authors in maintaining multiple versions, the previously
used API methods (e.g. `addModule` and `registerModule`) will
stay until TYPO3 v13.0. No trigger_error() is used, so extension
authors use the Extension Scanner to detect usages.

Executed commands:

   composer u typo3/cms-styleguide

Resolves: #96733
Releases: main
Change-Id: I07f4bc417e6effb1215cf0e373cc60f2b13ba8ad
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/73058


Tested-by: default avatarcore-ci <typo3@b13.com>
Tested-by: default avatarChristian Kuhn <lolli@schwarzbu.ch>
Tested-by: default avatarBenni Mack <benni@typo3.org>
Reviewed-by: default avatarChristian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: default avatarBenni Mack <benni@typo3.org>
parent d7c5cb24
Branches
Tags
Showing
with 756 additions and 931 deletions
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment