Releases: TYPO3/Fluid
4.0.1
4.0.0
Nearly eight years after the launch of Fluid v2, we are happy to release Fluid v4. For this major version we had one key goal in mind: no breaking changes to user-facing APIs, such as ViewHelpers or View classes. We are confident that we have achieved this goal.
In this release, we focused on improving code quality by introducing stricter type checks across most of the codebase. In addition, we have deprecated several outdated or suboptimal APIs – most notably, the renderStatic()
method for ViewHelpers and the related traits. While these deprecated APIs remain functional in Fluid v4, they will be removed in the upcoming Fluid v5 release. We strongly encourage users to consult the deprecation log and update their code to ensure compatibility with future versions.
To make the upgrade process as seamless as possible, we've backported many of the new features to Fluid v2, ensuring that the migration path is largely backward-compatible.
Noteworthy features in v4 that could not be backported:
- faad81a
<f:comment>
now ignores Fluid syntax errors - ba2c48b
{true}
,{false}
and{null}
are part of the language now and can be used in all templates - 4d5b0c9
AbstractTagBasedViewHelper
now supports boolean tag arguments according to the HTML5 standard
A full list of breaking changes is available in the documentation.
New Contributors
- @eliashaeussler made their first contribution in #892
- @mteu made their first contribution in #935
Full Changelog: 2.15.0...4.0.0
2.15.0
What's Changed
- [TASK] Trigger deprecation if true/false/null variable is used by @s2b in #952
- [TASK] Deprecate CompileWithContentArgumentAndRenderStatic trait by @s2b in #967
- [BUGFIX] Improved argument validation in TagBuilder (#937) by @s2b in #969
- [BUGFIX] Prevent interference between functional tests by @s2b in #977
- [FEATURE] Provide contentArgument API to all ViewHelpers by @s2b in #979
- [BUGFIX] Properly restore renderingContext in renderChildren() (#970) by @s2b in #980
- [TASK] Annotate correct type hints in AbstractTemplateView (#986) by @s2b in #987
- [TASK] Deprecate CompileWithRenderStatic and renderStatic() by @s2b in #990
- [TASK] Add deprecation hints to TemplatePaths by @s2b in #998
Full Changelog: 2.14.1...2.15.0
2.14.1
2.14.0
What's Changed
- [TASK] Use 'false' over 'FALSE' in comments and docs by @lolli42 in #903
- [TASK] Use 'true' over 'TRUE' in comments and docs by @lolli42 in #905
- [TASK] Use 'null' over 'NULL' in comments and docs by @lolli42 in #907
- [TASK] Avoid registerArgument() with required=false by @lolli42 in #909
- [TASK] Add v2 Changelog (#912) by @lolli42 in #915
- [TASK] Allow registerArgument() to override arguments by @s2b in #917
- [TASK] Deprecate shortcut methods in AbstractTemplateView by @s2b in #920
- [TASK] Use RenderingContext->setAttribute() (#922) by @lolli42 in #923
- [TASK] Migrate missed $view->getTemplatePaths() (#926) by @s2b in #927
- [BUGFIX] Supply correct parameter to json_decode (#928) by @s2b in #929
- [TASK] Type hint arguments in ViewInterface by @lolli42 in #933
Full Changelog: 2.13.0...2.14.0
2.13.0
2.12.0
What's Changed
- [TASK] Raise php-cs-fixer:^3.54.0 by @s2b in #869
- [TASK] Switch Documentation Rendering to PHP by @Alagts in #870
- [TASK] Use xxh3 instead of sha1 by @lolli42 in #871
- [BUGFIX] Re-enable arbitrary aria- and data- arguments by @s2b in #872
- [FEATURE] Allow arbitrary arguments for TagBasedViewHelper by @s2b in #859
- [TASK] Prepare fluid binary to support multiple commands by @s2b in #875
- [FEATURE] Command to generate XSD Schemas for ViewHelpers by @s2b in #876
- [BUGFIX] Allow override of universal attributes by @s2b in #877
- [FEATURE] Add f:constant ViewHelper by @andreaskienast in #874
- [TASK] Migrate to phpunit attributes by @s2b in #879
- [TASK] github actions/checkout@v4 instead of v3 by @lolli42 in #881
- [TASK] Improve test case inheritance chain by @lolli42 in #883
- [TASK] Tune RenderingContext withAttribute() and getAttribute() by @lolli42 in #882
New Contributors
Full Changelog: 2.11.0...2.12.0
2.11.0
What's Changed
- Correct type hint for
as
argument of CycleViewHelper to string by @Teddytrombone in #854 - [DOCS] Document and add tests for not (!) operator by @simonschaufi in #852
- [DOCS] Clarify IfViewHelper usage by @garvinhicking in #855
- [BUGFIX] Prevent php warning when passing array as tag attribute by @s2b in #858
- [TASK] Ignore ddev config by @benjaminkott in #860
- [FEATURE] SplitViewHelper by @s2b in #856
- [TASK] Raise php-cs-fixer:^3.52.1 by @lolli42 in #864
- [FEATURE] ReplaceViewHelper by @s2b in #863
- [FEATURE] JoinViewHelper by @benjaminkott in #861
- [FEATURE] ViewHelpers to return first/last item of an array by @s2b in #866
New Contributors
- @Teddytrombone made their first contribution in #854
- @garvinhicking made their first contribution in #855
- @benjaminkott made their first contribution in #860
Full Changelog: 2.10.1...2.11.0
2.10.1
2.10.0
What's Changed
- [BUGFIX] Fix missing “null” annotation for parameter $sectionName by @magicsunday in #813
- [TASK] Remove constructor from variable provider interface by @s2b in #829
- [FEATURE] Proper support of local variables in ViewHelpers by @s2b in #828
- [BUGFIX] Use ScopedVariableProvider in CycleViewHelper by @s2b in #830
- [BUGFIX] Use ScopedVariableProvider in GroupedForViewHelper by @s2b in #831
- [BUGFIX] Throw array conversion exception in
AbstractNode->castToString()
by @sbuerk in #827 - [BUGFIX] Eliminate side-effects from ForViewHelper by @s2b in #820
- [FEATURE] Attributes for RenderingContext by @s2b in #832
- [TASK] Run tests with PHP 8.3 by @s2b in #835
- [BUGFIX] Support mix of global/local in variable variables by @s2b in #833
- [BUGFIX] Fix memory overhead of getScopedCopy() by @s2b in #834
- [FEATURE] JsonViewHelper for StandaloneFluid by @s2b in #836
- [FEATURE] TrimViewHelper for StandaloneFluid by @s2b in #837
- [FEATURE] Nl2brViewHelper for StandaloneFluid by @s2b in #838
- [TASK] Document current behaviour of boolean cast by @s2b in #843
- [TASK] Add test case for f:variable by @s2b in #844
- [FEATURE] UrlencodeViewHelper for StandaloneFluid by @s2b in #842
- [FEATURE] NumberViewHelper for StandaloneFluid by @s2b in #839
- [FEATURE] StripTagsViewHelper for StandaloneFluid by @s2b in #840
- [FEATURE] CaseViewHelper for StandaloneFluid by @s2b in #841
New Contributors
- @magicsunday made their first contribution in #813
Full Changelog: 2.9.3...2.10.0