flow-development-collection: "@retrurn" in method TYPO3Fluid DebugViewHelper breaks application

Description

With your 4.3.18 release our applications broke because of the following error:

[Semantical Error] The annotation "@retrurn" in method TYPO3Fluid\Fluid\ViewHelpers\DebugViewHelper::getValuesOfNonScalarVariable() was never imported.
Did you maybe forget to add a "use" statement for this annotation?

  Type: Doctrine\Common\Annotations\AnnotationException
  File: Packages/Libraries/doctrine/annotations/lib/Doctrine/Common/Annotations/AnnotationException.php
  Line: 54

  Type: Neos\Flow\Core\Booting\Exception\SubProcessException
  Code: 1355480641
  File: Packages/Framework/Neos.Flow/Classes/Core/Booting/Scripts.php
  Line: 641

Open Data/Logs/Exceptions/20190904081436926fb0.txt for a full stack trace.

Your package neos/fluid-adaptor requires “typo3fluid/fluid”: “~2.1.3”. The above mentioned annotation is wrong since version 1.1.0 and was fixed for version 2.3.0 (with https://github.com/TYPO3/Fluid/pull/260).

To be honest I do not know where exactly the problem is, but I’ve figured out that it occurs when updating all the Neos packages from version 4.3.17 to 4.3.18.

Affected Versions

Neos:

Flow: 4.3.18

About this issue

  • Original URL
  • State: closed
  • Created 5 years ago
  • Comments: 23 (21 by maintainers)

Most upvoted comments

Addendum (from discussion in Slack with Robin and Ferdinand): Since the change in includeClasses won’t work together with any Fluid version < 2.3, maybe we even need to change the version constraint to >=2.3.0,<2.5.0, even though that’s not semver - but the supposed reflection fix is also breaking like that already. The other option would be to revert the reflection change for 4.3 (only), since 5.0 already depends on a high enough version of Fluid.

@kdambekalns @kitsunet ?

now we are dependent on the correctness and usage of only “known” tags in fluid…

Huh? We always depend on that… also for other dependencies (partly). I guess we need to live with that. Or what would you do different?

(I was confused for a second, but you meant “tags” as in “annotations”, not “git”…)

annotations are ignored in flow prior to 4.3.18 in fluid - right?

Well, to be precise: reflection was enabled for typo3fluid/fluid in 4.3.18, that’s the cause.

this are the installed versions. annotations are ignored in flow prior to 4.3.18 in fluid - right?

neos/fluid-adaptor                             4.3.18               Fluid Templating Framework Adaptor
typo3fluid/fluid                               2.1.4                The TYPO3 Fluid template rendering engine
neos/flow                                      4.3.17               Flow Application Framework
neos/flow-log                                  4.3.18               Flow Framework Logger

@albe Why? Because…

and this is the cause: #1637

just asking - was not clear to me. so i will force a downgrade to 4.3.17 for now to avoid the problem

@kdambekalns Thanks a lot for providing a quick solution, some of our customers are affected and I only found the mentioned pull request when I googled the problem. It works just fine.

The error is gone when switching neos/flow from 4.3.18 to 4.3.17, and this is the cause: https://github.com/neos/flow-development-collection/pull/1637