---
title: "Breaking: #73046 - Alias AbstractNode -> ViewHelperNode for backwards compatibility"
manual: "TYPO3 Core Changelog"
version: "main"
permalink: "https://docs.typo3.org/permalink/changelog:breaking-73046"
source: "Changelog/8.0/Breaking-73046-AliasAbstractNode-ViewHelperNodeForBackwardsCompatibility.rst"
typo3-version: "8.0"
typo3-major: 8
type: "breaking"
issue: 73046
forge: "https://forge.typo3.org/issues/73046"
tags: ["PHP-API", "Fluid"]
rendered: "2026-09-28T19:48:07+00:00"
---

# Breaking: #73046 - Alias AbstractNode -> ViewHelperNode for backwards compatibility {#breaking-73046}

See [forge#73046](https://forge.typo3.org/issues/73046)

## Description {#description}

`ViewHelperInterface::compile()` in standalone Fluid now requires an actual `ViewHelperNode` instead of `AbstractNode` as it was before.
The reason for changing this should be fairly obvious. In order to preserve signature compatibility an alias is put in place.

The alias is created so that `TYPO3CMSFluidCoreParserSyntaxTreeAbstractNode` becomes an alias of `TYPO3FluidFluidCoreParserSyntaxTreeViewHelperNode`.
This is obviously less than ideal but solves the problem immediately and prioritises not breaking the public API by breaking the non-public API.

## Impact {#impact}

This signature change means that ViewHelpers which implement a custom `compile()` method must update their signature (does not apply to ViewHelpers implementing
only renderStatic). Two ViewHelpers in TYPO3 CMS Fluid were migrated as part of the standalone Fluid
merge - but third-party ViewHelpers would require either migration or an alias.

-   Overridden TemplateParsers (before standalone Fluid merge) might not work, depending on the nature of overrides (conditions
    checking class names may fail)
-   Custom Nodes (implemented via an overridden TemplateParser, before standalone Fluid) would break either in function or form
    (incompatible constructor signatures on PHP7 at least)

## Affected Installations {#affected-installations}

Any TYPO3 site using an extension which replaces or directly interacts with TemplateParser or TemplateCompiler from Fluid. Only
known affected community extension is at this point EXT:builder, specifically the template validation/analysis feature.

## Migration {#migration}

Change any reference to classes in `TYPO3CMSFluidCoreTemplateParser` to `TYPO3FluidFluidCoreTemplateParser`.
