Deprecation: #99650 - Global Request object usage in Extbase UriBuilder¶
See forge#99650
Description¶
Usage of the global request object ($GLOBALS['TYPO3_REQUEST']
) as
fallback in the EXT:extbase \TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder
has been deprecated and will be removed in TYPO3 v13. The UriBuilder
will
then solely rely on a locally set request object.
Impact¶
Using the UriBuilder
class of Extbase without a local
request object will trigger a PHP deprecation warning.
Additionally, when using the UriBuilder
to build frontend URLs, the
current content object is required. It is initialized from the handed in local
request object. This means, in case extensions do set the request object,
a automatic fallback is applied in v12, triggering a PHP deprecation warning, as
it will be removed in v13, too.
Affected installations¶
TYPO3 installations with custom extensions initializing the UriBuilder
without handing in a request object and using it to build URIs.
Migration¶
Make sure to call setRequest($request)
before using the
UriBuilder
, when no other component has done this already.
Using ViewHelpers will not trigger the warning, as the TYPO3 Core ensures the proper setup.