[FEATURE] Add TYPO3 v14 compatibility (drop v12)#57
Open
konradmichalik wants to merge 11 commits intotritum:masterfrom
Open
[FEATURE] Add TYPO3 v14 compatibility (drop v12)#57konradmichalik wants to merge 11 commits intotritum:masterfrom
konradmichalik wants to merge 11 commits intotritum:masterfrom
Conversation
Drop TYPO3 v12 support. Target v13.4 LTS and v14.x. Bump extension version to 6.0.0.
TYPO3 v14 removes the SC_OPTIONS afterBuildingFinished hook (Breaking #98239). Introduce AfterBuildingFinishedEvent as PSR-14 replacement. Legacy hook dispatch is kept for v13 backward compatibility.
- Make FormHooks final - Type CopyService::features property as Features - Use explicit nullable types for PHP 8.4 compat
TYPO3 v14.2 deprecated Fluid-based stage partials in favor of web components (Deprecation #109306). Removing formEditorPartials lets both v13 and v14 use their default composite element rendering, fixing the visual nesting of child elements in the backend form editor.
TYPO3 v14 removed the afterInitializeCurrentPage and beforeRendering SC_OPTIONS hooks. Add PSR-14 event listeners for: - AfterCurrentPageIsResolvedEvent (replaces afterInitializeCurrentPage) - BeforeRenderableIsRenderedEvent (replaces beforeRendering) The listeners delegate to existing FormHooks methods, keeping the v13 hook registration intact for backward compatibility.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR adds full TYPO3 v14 compatibility while maintaining v13 support. TYPO3 v12 is dropped.
Breaking changes
^13.4 || ^14.0TYPO3 v14 hook removals addressed
TYPO3 v14 removed several SC_OPTIONS hooks that this extension relies on. This PR introduces PSR-14 event listeners as replacements:
afterBuildingFinished(Breaking #98239)AfterBuildingFinishedEvent— new event dispatched by CopyService and FormHooksafterInitializeCurrentPageAfterCurrentPageIsResolvedListener— listens to core'sAfterCurrentPageIsResolvedEventbeforeRenderingBeforeRenderableIsRenderedListener— listens to core'sBeforeRenderableIsRenderedEventLegacy hook registrations are kept for v13 backward compatibility. On v13, only the hooks fire (PSR-14 events don't exist yet). On v14, only the PSR-14 listeners fire (hooks are silently ignored).
Backend form editor fix
Removed the deprecated
formEditorPartialsconfiguration (Deprecation #109306). TYPO3 v14.2 replaced Fluid-based stage partials with web components. OmittingformEditorPartialslets both v13 and v14 use their default composite element rendering, fixing the visual nesting ofchild elements in the backend form editor.
Additional changes
call_user_funcwrapper inext_localconf.phpFormHooksclassfinalCopyService::$featuresasFeaturesinstead ofmixedServices.yamlto exclude Event value objects from DITested on