FluidTYPO3/vhs

BUG: compatibility issue with TYPO3 12.4.7

Closed this issue · 1 comments

I have checked that the bug exists in the dev-development branch
Yes
I have checked that there are no already open issues or recently closed issues about this bug
Yes

Describe the bug
After doing "minor" Upgrade from TYPO3 core 12.4.2 to 12.4.7 the frontend is broken:

Typed property TYPO3\CMS\Frontend\ContentObject\AbstractContentObject::$request must not be accessed before initialization

Upgrade/Reinstall for fluidtypo3/vhs doesn't seem to work.

To Reproduce

  1. Install a TYPO3 v12.4.7 Instance
  2. composer req fluidtypo3/vhs
  3. Configure a simple fluid-template frontend using VHS (I'm not shure if the error is dedicated to a specific viewhelper yet).
  4. See error

Expected behavior
Frontend should not throw exception.

Screenshots
image

I will close this since 1) it relates to a relatively old VHS and TYPO3 version, 2) nobody else has apparently faced this issue and 3) this type of error usually comes from not having flushed the DI cache which builds constructor arguments that a given class needs, and an outdated cache entry may pass incomplete or unexpected constructor arguments. These may even happen in minor upgrades of TYPO3 when they concern API that is considered "internal".

VHS does not create any instances of, or declare any overrides for ContentObject implementations and therefore cannot directly cause constructor arguments to be incomplete.

The fact that this is reported based on an upgrade of TYPO3 (which would precisely cause DI caches to remain alive unless manually flushed) leads me to strongly suspect we're dealing with case 3 above.