[!!!][TASK] Remove dependencies of TSFE
This patch re-arranges the TYPO3 Core internally used middlewares for lifting off the weight of $GLOBALS['TSFE'] as Site Handling already introduced a lot of functionality which can now be utilized further. For this reason, the Frontend Rendering chain has been adapted. * If there is a "Site" + "Language" resolved, this information can be used directly, as there are no dependencies currently. * Frontend + Backend User Authentication works regardless of TSFE, Frontend User is added to the Request object as attribute to be added to TSFE later-on. * Resolving the Page ("slug") and mapping them to Page Arguments (URL parts + GET parameters) as well as validation against cHash is fully decoupled from TSFE. After that, TSFE is instantiated, which now gets all resolved objects injected. TSFE now only resolves the rootline against the proper permissions (auth) and validates the final page. Once done, TypoScript is compiled / cached. TSFE still contains the rootline, TypoScript, and the information about which non-cacheables are there. RequestHandler creates or fetches cached content, but currently piped through TSFE. This should be simplified further later-on. Resolves: #88717 Releases: master Change-Id: I12807455fd8b01493b2da45cf73a5c532b108cbe Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/61155 Tested-by:TYPO3com <noreply@typo3.com> Tested-by:
Anja Leichsenring <aleichsenring@ab-softlab.de> Tested-by:
Andreas Fernandez <a.fernandez@scripting-base.de> Reviewed-by:
Anja Leichsenring <aleichsenring@ab-softlab.de> Reviewed-by:
Andreas Fernandez <a.fernandez@scripting-base.de>
Showing
- composer.json 1 addition, 1 deletioncomposer.json
- composer.lock 6 additions, 6 deletionscomposer.lock
- typo3/sysext/adminpanel/Configuration/RequestMiddlewares.php 3 additions, 3 deletionstypo3/sysext/adminpanel/Configuration/RequestMiddlewares.php
- typo3/sysext/core/Classes/Http/Uri.php 1 addition, 1 deletiontypo3/sysext/core/Classes/Http/Uri.php
- typo3/sysext/core/Documentation/Changelog/master/Breaking-88540-ChangedRequestWorkflowForFrontendRequests.rst 57 additions, 9 deletions...aking-88540-ChangedRequestWorkflowForFrontendRequests.rst
- typo3/sysext/core/composer.json 1 addition, 1 deletiontypo3/sysext/core/composer.json
- typo3/sysext/fluid/Classes/ViewHelpers/CObjectViewHelper.php 2 additions, 1 deletiontypo3/sysext/fluid/Classes/ViewHelpers/CObjectViewHelper.php
- typo3/sysext/fluid/Tests/Functional/ViewHelpers/TypolinkViewHelperTest.php 6 additions, 1 deletion...d/Tests/Functional/ViewHelpers/TypolinkViewHelperTest.php
- typo3/sysext/frontend/Classes/Controller/TypoScriptFrontendController.php 117 additions, 56 deletions...ntend/Classes/Controller/TypoScriptFrontendController.php
- typo3/sysext/frontend/Classes/Middleware/BackendUserAuthenticator.php 1 addition, 5 deletions.../frontend/Classes/Middleware/BackendUserAuthenticator.php
- typo3/sysext/frontend/Classes/Middleware/FrontendUserAuthenticator.php 4 additions, 7 deletions...frontend/Classes/Middleware/FrontendUserAuthenticator.php
- typo3/sysext/frontend/Classes/Middleware/PageArgumentValidator.php 14 additions, 10 deletions...ext/frontend/Classes/Middleware/PageArgumentValidator.php
- typo3/sysext/frontend/Classes/Middleware/PageResolver.php 1 addition, 48 deletionstypo3/sysext/frontend/Classes/Middleware/PageResolver.php
- typo3/sysext/frontend/Classes/Middleware/PrepareTypoScriptFrontendRendering.php 4 additions, 4 deletions...Classes/Middleware/PrepareTypoScriptFrontendRendering.php
- typo3/sysext/frontend/Classes/Middleware/ShortcutAndMountPointRedirect.php 1 addition, 1 deletion...tend/Classes/Middleware/ShortcutAndMountPointRedirect.php
- typo3/sysext/frontend/Classes/Middleware/TypoScriptFrontendInitialization.php 65 additions, 11 deletions...d/Classes/Middleware/TypoScriptFrontendInitialization.php
- typo3/sysext/frontend/Classes/Typolink/AbstractTypolinkBuilder.php 31 additions, 4 deletions...ext/frontend/Classes/Typolink/AbstractTypolinkBuilder.php
- typo3/sysext/frontend/Configuration/RequestMiddlewares.php 39 additions, 33 deletionstypo3/sysext/frontend/Configuration/RequestMiddlewares.php
- typo3/sysext/frontend/Tests/Functional/Configuration/TypoScript/ConditionMatching/ConditionMatcherTest.php 19 additions, 3 deletions...ion/TypoScript/ConditionMatching/ConditionMatcherTest.php
- typo3/sysext/frontend/Tests/Functional/ContentObject/ContentObjectRendererTest.php 46 additions, 13 deletions...ts/Functional/ContentObject/ContentObjectRendererTest.php