The release of TYPO3 12.4 LTS is scheduled for April 25, 2023. A lot of work has been put into the core again, including many breaking changes. The most noticeable change will probably be the removal of the typo3conf/ext/ directory - all extensions are now stored in the vendor directory.
Fortunately, I found enough time in the past weeks to update my extensions and tutorials.
I maintain three extensions around forms: form_distribution as a starter kit, form_variants as a demonstration of form conditions, and the fairly extensive form_examples with its self explanatory extension key.
There was not much to adjust here. But I noticed two possible stumbling blocks in TYPO3 v12:
- ext_typoscript_setup.txt is not loaded anymore and has to be renamed to ext_typoscript_setup.typoscript (TYPO3 Changelog).
- Only approved translations are used in TYPO3 (as a new default). Therefore, you must add the attribute approved="yes" to every translation in your project-specific XLIFF files (TYPO3 Changelog).
Nearly all tutorials have been reviewed for compatibility with TYPO3 v12, adjusted where necessary, and marked with the appropriate tag. XLIFF snippets have the before-mentioned approved attribute. In a few cases, I have removed the compatibility with older TYPO3 versions, where the codebase has changed.
In the overview of form translations, differences between TYPO3 versions are now listed in a dedicated section, including changelog links. There have also been several additions in the last months, e.g. regarding possible blanks/special characters in the translation key, or the limitation of validator messages to individual fields. The list is still actively maintained and expanded.
Well. There is the CKEditor 5, which will be shipped with TYPO3 v12. Its implementation in TYPO3 is still a work in progress. I
want to must provide my linebreak plugin in a compatible version, at least for the <wbr> tag (since I need it myself). I hear the switch to CKEditor 5 isn't easy, but maybe my RTE buttons will turn out to be trivial in the end.