9.2.1 (2026-10-13)
Overview of merged pull requests
BUGFIX: Normalize object names
Within the object configuration and ObjectManager the usage of object names should be normalized so that fully qualified form or not will result in the same outcome, everything else can result in hard to debug errors and makes no sense either.
Specifically the following scenario is broken without this:
``` // Lets assume a class \Foo\Bar\Class with no constructor and scope singleton via Objects.yaml
$fooBarClass = $objectManager->get(’\Foo\Bar\Class’); $fooBarClass2 = $objectManager->get(\Foo\Bar\Class::class);
assert($fooBarClass === $fooBarClass2); ``` The problem is that without normalization the two object names are treated as differnet objects, in fact the first call will not find an object configuration and treat the object as prototype with no further object configuration. This becomes clearer now with the ObjectManager doing the constructor auto-wiring. In that case asking for the fully-qualified format with starting backslash will simply fail because the auto-wiring does not happen, given that the ObjectManager cannot find the configuration for it (stored under the second name).
Note that this problem exists in previous versions of Flow as well, but never became visible before the ObjectManagement changes in 9.2. But for sake of backwards compatibility I think we should not change released version behavior even if it should be “safe”.
Packages:
Flow