• Benni Mack's avatar
    [!!!][TASK] Remove dependencies of TSFE · e50b1c1a
    Benni Mack authored and Andreas Fernandez's avatar Andreas Fernandez committed
    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: default avatarTYPO3com <noreply@typo3.com>
    Tested-by: Anja Leichsenring's avatarAnja Leichsenring <aleichsenring@ab-softlab.de>
    Tested-by: Andreas Fernandez's avatarAndreas Fernandez <a.fernandez@scripting-base.de>
    Reviewed-by: Anja Leichsenring's avatarAnja Leichsenring <aleichsenring@ab-softlab.de>
    Reviewed-by: Andreas Fernandez's avatarAndreas Fernandez <a.fernandez@scripting-base.de>