Deprecation: #97126 - TCEforms removed in FlexForm¶
See forge#97126
Description¶
The <TCEforms>
tag is no longer necessary (and allowed) in FlexForm
definitions. It was used to wrap TCA configuration and sheet
titles / descriptions. This wrapping must be omitted now.
Impact¶
Not omitting TCEforms
will trigger a deprecation warning and log a message in
the deprecation log. An automatic migration is in place, which will eventually
be removed in upcoming TYPO3 versions.
Affected Installations¶
All installations making use of FlexForm in their TCA. FlexForm definitions can be defined directly in TCA or can be external XML files.
Extensions, which extend the YAML configuration for forms with new fields.
Migration¶
Omit the <TCEforms>
tag in your FlexForm definition. The underlying
configuration moves one level up.
Before:
<T3DataStructure>
<ROOT>
<TCEforms>
<sheetTitle>sheet description 1</sheetTitle>
<sheetDescription>
sheetDescription: Lorem ipsum dolor sit amet, consectetur adipiscing elit.
</sheetDescription>
<sheetShortDescr>
sheetShortDescr: Lorem ipsum dolor sit amet, consectetur adipiscing elit.
</sheetShortDescr>
</TCEforms>
<type>array</type>
<el>
<input_1>
<TCEforms>
<label>input_1</label>
<config>
<type>input</type>
</config>
</TCEforms>
</input_1>
</el>
</ROOT>
</T3DataStructure>
After:
<T3DataStructure>
<ROOT>
<sheetTitle>sheet description 1</sheetTitle>
<sheetDescription>
sheetDescription: Lorem ipsum dolor sit amet, consectetur adipiscing elit.
</sheetDescription>
<sheetShortDescr>
sheetShortDescr: Lorem ipsum dolor sit amet, consectetur adipiscing elit.
</sheetShortDescr>
<type>array</type>
<el>
<input_1>
<label>input_1</label>
<config>
<type>input</type>
</config>
</input_1>
</el>
</ROOT>
</T3DataStructure>
Migration for form YAML configuration:
Before:
TYPO3:
CMS:
Form:
prototypes:
standard:
finishersDefinition:
EmailToReceiver:
FormEngine:
elements:
recipients:
el:
_arrayContainer:
el:
email:
TCEforms:
label: tt_content.finishersDefinition.EmailToSender.recipients.email.label
config:
type: input
After:
TYPO3:
CMS:
Form:
prototypes:
standard:
finishersDefinition:
EmailToReceiver:
FormEngine:
elements:
recipients:
el:
_arrayContainer:
el:
email:
label: tt_content.finishersDefinition.EmailToSender.recipients.email.label
config:
type: input