Deprecation: #100622 - Extbase feature toggles¶
Extbase has an own system for feature toggles next to the Core feature toggle API. It has always been marked as internal, but is used for a couple of toggles within the Extbase framework.
All toggles and the internal PHP API have been marked as deprecated in TYPO3 v12 and should be avoided.
The PHP API for Extbase toggles has always been marked as internal. It will be removed with TYPO3 v13.
The single toggles can still be used in TYPO3 v12, but their triggered
functionality will be removed with TYPO3 v13, if set to
Extensions should not rely on
The method is marked as internal and should never have been used by extensions. The
extension scanner still finds usages of this method in extensions as weak match.
All feature toggles have been marked as deprecated. Setting one of them to
TypoScript will trigger a deprecation level log message, they will stop working with
Extbase has three feature toggles in TYPO3 v12. All of them will be removed
with TYPO3 v13. Instances with extensions setting those to
1 in TypoScript
may need adaptions. Instances setting the toggles to
0 can simply remove them
skipDefaultArguments = 1¶
This is an ancient toggle that was used before routing has been added with
TYPO3 v9. It allowed to skip the
action argument in frontend
plugin links, when linking to the default Extbase controller / action combination.
This toggle has been documented as being broken in combination with
Extbase plugin enhancer already.
Consuming instances should switch to proper routing configuration instead.
ignoreAllEnableFieldsInBe = 1¶
This is another ancient toggle that triggers
for Extbase repositories when used in backend scope. It allows ignoring default
flags like suppressing of deleted records in queries.
Extbase-based backend modules that rely on this toggle being set to
1 can easily
migrate this: When the repository in question is only used in backend context, the
code below should trigger the same behavior. Note as with other query settings,
this toggle needs to be used with care, otherwise backend users may see records
they are not supposed to see.
When the repository is used in both backend and frontend context, the code should be refactored a bit towards a public method that can be set by the Extbase backend controller only.
enableNamespacedArgumentsForBackend = 1¶
This toggle has been introduced in TYPO3 v12. See Feature: #97096 - Non-namespaced arguments in Extbase backend modules for more details. Extbase backend modules should no longer expect the namespace to be set. It may be necessary to adapt some Ajax calls and request-related argument checks in custom modules.