Task #103926
closedAvoid implicitly nullable parameter on DatabaseRecordException
100%
Description
With PHP 8.4 marking method parameter implicitly nullable
is depreacted and will emit a `E_DEPRECATED` warning. One
recommended way to resolve this, is making it explicitly
nullable using the `?` nullable operator. [1]
In cases, where are implicitly nullable parameter exists
before not-nullable parameters in a method or constructor,
making it explicitly nullable will emit a
Optional parameter <paramname> declared before required
parameter <paramname> is implicitly treated as a required
parameter
since PHP 8.0 [2].
This change modifies the class constructor signature of
`\TYPO3\CMS\Backend\Form\Exception\DatabaseRecordException`
and moves the required parameter before the optional and
nullable previous execption parameter and adjust the
core place throwing this exception to follow that pattern.
[1] https://php.watch/versions/8.4/implicitly-marking-parameter-type-nullable-deprecated
[2] https://php.watch/versions/8.0/deprecate-required-param-after-optional