Deprecation: #100577 - FormEngine needs request object 

See forge#100577

Description 

The backend FormEngine construct (editing records in the backend) now expects the current ServerRequestInterface object to be hand over as initial data.

Impact 

Backend modules that use the FormEngine data provider construct to render records should provide the current request object. Failing to do so will trigger a deprecation level log message and the system will fall back to $GLOBALS['TYPO3_REQUEST']. This will stop working with TYPO3 v13.

Affected installations 

Instances with extensions that provide custom modules using the FormEngine construct are affected. This is a relatively seldom case.

Migration 

Provide the request object as "initial data" when using the FormDataCompiler:

$formDataCompiler = GeneralUtility::makeInstance(FormDataCompiler::class, $myFormDataGroup);
$formDataCompilerInput = [
    'request' => $request,
    // further data, for example:
    'tableName' => $table,
    'vanillaUid' => $uid,
];
$formData = $formDataCompiler->compile($formDataCompilerInput);
Copied!