Breaking: #88527 - Overriding custom values in User Authentication derivatives
See forge#88527
Description
Due to some restructuring of \TYPO3\
and its direct sub-classes
\TYPO3\
(a.k.a. $BE_
) and \TYPO3\
,
various settings are now directly initiated and set in the respective constructor of each PHP class.
Following this, the properties session
, gc_
and session
are set already
when the constructor is called. Before this was the case when start
was called.
In addition, the property login
must be set for any subclass on instantiation. Previously
this was possible to be set just before start
was called.
The previous behavior allowed to override certain parameters to be evaluated just before start
.
Impact
Setting any global variables between the constructor method and start
will have no effect, as
this is transferred and evaluated at the public properties already when the constructor is called.
Subclassing Abstract
without setting login
will trigger an exception
on instantiation.
Affected Installations
Any TYPO3 installation where a custom UserAuthentication instantiation or sub-class is in place, and the setting
order was changed between calling the constructor and the method start
, which is considered a very rare case.
Migration
Consider using a proper subclass and a custom constructor method, or set all properties properly before the constructor is called (default values of class members).