---
title: "Breaking: #100963 - Deprecated functionality removed"
manual: "TYPO3 Core Changelog"
version: "main"
permalink: "https://docs.typo3.org/permalink/changelog:breaking-100963-1686129084"
source: "Changelog/13.0/Breaking-100963-DeprecatedFunctionalityRemoved.rst"
typo3-version: "13.0"
typo3-major: 13
type: "breaking"
issue: 100963
forge: "https://forge.typo3.org/issues/100963"
tags: ["Backend", "CLI", "Database", "FlexForm", "Fluid", "Frontend", "JavaScript", "LocalConfiguration", "PHP-API", "RTE", "TCA", "TSConfig", "TypoScript", "PartiallyScanned"]
rendered: "2026-09-19T12:12:50+00:00"
---

# Breaking: #100963 - Deprecated functionality removed {#breaking-100963-1686129084}

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

## Description {#description}

The following PHP classes that have previously been marked as deprecated with v12 have been removed:

-   `\TYPO3\CMS\Backend\Configuration\TypoScript\ConditionMatching\ConditionMatcher`
-   `\TYPO3\CMS\Backend\EventListener\SilentSiteLanguageFlagMigration`
-   `\TYPO3\CMS\Backend\Template\Components\Buttons\Action\HelpButton`
-   `\TYPO3\CMS\Backend\Tree\View\BrowseTreeView`
-   `\TYPO3\CMS\Backend\Tree\View\ElementBrowserPageTreeView`
-   `\TYPO3\CMS\Core\Configuration\Loader\PageTsConfigLoader`
-   `\TYPO3\CMS\Core\Configuration\PageTsConfig`
-   `\TYPO3\CMS\Core\Configuration\Parser\PageTsConfigParser`
-   `\TYPO3\CMS\Core\Configuration\TypoScript\ConditionMatching\AbstractConditionMatcher`
-   `\TYPO3\CMS\Core\Configuration\TypoScript\Exception\InvalidTypoScriptConditionException`
-   `\TYPO3\CMS\Core\Controller\RequireJsController`
-   `\TYPO3\CMS\Core\Database\Query\Restriction\BackendWorkspaceRestriction`
-   `\TYPO3\CMS\Core\Database\Query\Restriction\FrontendWorkspaceRestriction`
-   `\TYPO3\CMS\Core\Exception\MissingTsfeException`
-   `\TYPO3\CMS\Core\ExpressionLanguage\DeprecatingRequestWrapper`
-   `\TYPO3\CMS\Core\Resource\Service\MagicImageService`
-   `\TYPO3\CMS\Core\Resource\Service\UserFileInlineLabelService`
-   `\TYPO3\CMS\Core\Resource\Service\UserFileMountService`
-   `\TYPO3\CMS\Core\TypoScript\Parser\TypoScriptParser`
-   `\TYPO3\CMS\Core\TypoScript\TemplateService`
-   `\TYPO3\CMS\Core\Utility\ResourceUtility`
-   `\TYPO3\CMS\Dashboard\Views\Factory`
-   `\TYPO3\CMS\Fluid\ViewHelpers\Be\Buttons\CshViewHelper`
-   `\TYPO3\CMS\Fluid\ViewHelpers\Be\Labels\CshViewHelper`
-   `\TYPO3\CMS\Frontend\Configuration\TypoScript\ConditionMatching\ConditionMatcher`
-   `\TYPO3\CMS\Frontend\Plugin\AbstractPlugin`

The following PHP classes have been declared `final`:

-   `\TYPO3\CMS\Core\Database\Driver\PDOMySql\Driver`
-   `\TYPO3\CMS\Core\Database\Driver\PDOPgSql\Driver`
-   `\TYPO3\CMS\Core\Database\Driver\PDOSqlite\Driver`

The following PHP interfaces that have previously been marked as deprecated with v12 have been removed:

-   `\TYPO3\CMS\Backend\Form\Element\InlineElementHookInterface`
-   `\TYPO3\CMS\Backend\RecordList\RecordListGetTableHookInterface`
-   `\TYPO3\CMS\Backend\Wizard\NewContentElementWizardHookInterface`
-   `\TYPO3\CMS\Core\Configuration\TypoScript\ConditionMatching\ConditionMatcherInterface`
-   `\TYPO3\CMS\Core\Domain\Repository\PageRepositoryGetPageOverlayHookInterface`
-   `\TYPO3\CMS\Core\Domain\Repository\PageRepositoryGetRecordOverlayHookInterface`
-   `\TYPO3\CMS\Dashboard\Widgets\RequireJsModuleInterface`
-   `\TYPO3\CMS\Frontend\ContentObject\Menu\AbstractMenuFilterPagesHookInterface`
-   `\TYPO3\CMS\Frontend\ContentObject\TypolinkModifyLinkConfigForPageLinksHookInterface`
-   `\TYPO3\CMS\Frontend\Http\UrlProcessorInterface`

The following PHP interfaces changed:

-   `\TYPO3\CMS\Adminpanel\ModuleApi\ShortInfoProviderInterface` method `setModuleData()` added
-   `\TYPO3\CMS\Backend\Form\NodeInterface` method `setData()` added
-   `\TYPO3\CMS\Backend\Form\NodeInterface` method `render()` must return `array`
-   `\TYPO3\CMS\Backend\Form\NodeResolverInterface` method `setData()` added
-   `\TYPO3\CMS\Backend\Form\NodeResolverInterface` method `resolve()` must return `?string`
-   `\TYPO3\CMS\Extbase\Configuration\ConfigurationManagerInterface` method `getContentObject()` removed
-   `\TYPO3\CMS\Extbase\Configuration\ConfigurationManagerInterface` method `isFeatureEnabled()` removed
-   `\TYPO3\CMS\Extbase\Configuration\ConfigurationManagerInterface` method `setContentObject()` removed
-   `\TYPO3\CMS\Extbase\Configuration\ConfigurationManagerInterface` method `setRequest()` added

The following PHP class aliases that have previously been marked as deprecated with v12 have been removed:

-   `\TYPO3\CMS\Backend\ElementBrowser\FileBrowser`
-   `\TYPO3\CMS\Backend\ElementBrowser\FolderBrowser`
-   `\TYPO3\CMS\Backend\Form\Element\InputColorPickerElement`
-   `\TYPO3\CMS\Backend\Form\Element\InputDateTimeElement`
-   `\TYPO3\CMS\Backend\Form\Element\InputLinkElement`
-   `\TYPO3\CMS\Backend\Provider\PageTsBackendLayoutDataProvider`
-   `\TYPO3\CMS\Frontend\Service\TypoLinkCodecService`
-   `\TYPO3\CMS\Frontend\Typolink\LinkResultFactory`
-   `\TYPO3\CMS\Recordlist\Browser\AbstractElementBrowser`
-   `\TYPO3\CMS\Recordlist\Browser\DatabaseBrowser`
-   `\TYPO3\CMS\Recordlist\Browser\ElementBrowserInterface`
-   `\TYPO3\CMS\Recordlist\Browser\ElementBrowserRegistry`
-   `\TYPO3\CMS\Recordlist\Browser\FileBrowser`
-   `\TYPO3\CMS\Recordlist\Browser\FolderBrowser`
-   `\TYPO3\CMS\Recordlist\Controller\AbstractLinkBrowserController`
-   `\TYPO3\CMS\Recordlist\Controller\AccessDeniedException`
-   `\TYPO3\CMS\Recordlist\Controller\ClearPageCacheController`
-   `\TYPO3\CMS\Recordlist\Controller\ElementBrowserController`
-   `\TYPO3\CMS\Recordlist\Controller\RecordDownloadController`
-   `\TYPO3\CMS\Recordlist\Controller\RecordListController`
-   `\TYPO3\CMS\Recordlist\Event\ModifyRecordListHeaderColumnsEvent`
-   `\TYPO3\CMS\Recordlist\Event\ModifyRecordListRecordActionsEvent`
-   `\TYPO3\CMS\Recordlist\Event\ModifyRecordListTableActionsEvent`
-   `\TYPO3\CMS\Recordlist\Event\RenderAdditionalContentToRecordListEvent`
-   `\TYPO3\CMS\Recordlist\LinkHandler\AbstractLinkHandler`
-   `\TYPO3\CMS\Recordlist\LinkHandler\FileLinkHandler`
-   `\TYPO3\CMS\Recordlist\LinkHandler\FolderLinkHandler`
-   `\TYPO3\CMS\Recordlist\LinkHandler\LinkHandlerInterface`
-   `\TYPO3\CMS\Recordlist\LinkHandler\MailLinkHandler`
-   `\TYPO3\CMS\Recordlist\LinkHandler\PageLinkHandler`
-   `\TYPO3\CMS\Recordlist\LinkHandler\RecordLinkHandler`
-   `\TYPO3\CMS\Recordlist\LinkHandler\TelephoneLinkHandler`
-   `\TYPO3\CMS\Recordlist\LinkHandler\UrlLinkHandler`
-   `\TYPO3\CMS\Recordlist\RecordList\DatabaseRecordList`
-   `\TYPO3\CMS\Recordlist\RecordList\DownloadRecordList`
-   `\TYPO3\CMS\Recordlist\Tree\View\LinkParameterProviderInterface`
-   `\TYPO3\CMS\Recordlist\View\FolderUtilityRenderer`
-   `\TYPO3\CMS\Recordlist\View\RecordSearchBoxComponent`

The following PHP class methods that have previously been marked as deprecated with v12 have been removed:

-   `\TYPO3\CMS\Backend\Template\Components\ButtonBar->makeHelpButton()`
-   `\TYPO3\CMS\Backend\Template\ModuleTemplate->getBodyTag()`
-   `\TYPO3\CMS\Backend\Template\ModuleTemplate->getDynamicTabMenu()`
-   `\TYPO3\CMS\Backend\Template\ModuleTemplate->getView()`
-   `\TYPO3\CMS\Backend\Template\ModuleTemplate->header()`
-   `\TYPO3\CMS\Backend\Template\ModuleTemplate->isUiBlock()`
-   `\TYPO3\CMS\Backend\Template\ModuleTemplate->registerModuleMenu()`
-   `\TYPO3\CMS\Backend\Template\ModuleTemplate->renderContent()`
-   `\TYPO3\CMS\Backend\Template\ModuleTemplate->setContent()`
-   `\TYPO3\CMS\Backend\Tree\View\AbstractTreeView->addTagAttributes()`
-   `\TYPO3\CMS\Backend\Tree\View\AbstractTreeView->determineScriptUrl()`
-   `\TYPO3\CMS\Backend\Tree\View\AbstractTreeView->getRootIcon()`
-   `\TYPO3\CMS\Backend\Tree\View\AbstractTreeView->getRootRecord()`
-   `\TYPO3\CMS\Backend\Tree\View\AbstractTreeView->getThisScript()`
-   `\TYPO3\CMS\Core\Authentication\BackendUserAuthentication->modAccess()`
-   `\TYPO3\CMS\Core\Configuration\FlexForm\FlexFormTools->removeElementTceFormsRecursive()`
-   `\TYPO3\CMS\Core\Database\Driver\PDOMySql\Driver->getName()`
-   `\TYPO3\CMS\Core\Database\Driver\PDOPgSql\Driver->getName()`
-   `\TYPO3\CMS\Core\Database\Driver\PDOSqlite\Driver->getName()`
-   `\TYPO3\CMS\Core\Database\Query\Expression\CompositeExpression->add()`
-   `\TYPO3\CMS\Core\Database\Query\Expression\CompositeExpression->addMultiple()`
-   `\TYPO3\CMS\Core\Database\Query\Expression\ExpressionBuilder->andX()`
-   `\TYPO3\CMS\Core\Database\Query\Expression\ExpressionBuilder->orX()`
-   `\TYPO3\CMS\Core\Database\Query\QueryBuilder->execute()`
-   `\TYPO3\CMS\Core\Domain\Repository\PageRepository->getExtURL()`
-   `\TYPO3\CMS\Core\Environment->getBackendPath()`
-   `\TYPO3\CMS\Core\Localization\LanguageService->getLL()`
-   `\TYPO3\CMS\Core\Localization\Locales->getIsoMapping()`
-   `\TYPO3\CMS\Core\Page\JavaScriptModuleInstruction->shallLoadRequireJs()`
-   `\TYPO3\CMS\Core\Page\PageRenderer->loadRequireJs()`
-   `\TYPO3\CMS\Core\Page\PageRenderer->loadRequireJsModule()`
-   `\TYPO3\CMS\Core\Page\PageRenderer->setRenderXhtml()`
-   `\TYPO3\CMS\Core\Page\PageRenderer->getRenderXhtml()`
-   `\TYPO3\CMS\Core\Page\PageRenderer->setCharSet()`
-   `\TYPO3\CMS\Core\Page\PageRenderer->getCharSet()`
-   `\TYPO3\CMS\Core\Page\PageRenderer->setMetaCharsetTag()`
-   `\TYPO3\CMS\Core\Page\PageRenderer->getMetaCharsetTag()`
-   `\TYPO3\CMS\Core\Page\PageRenderer->setBaseUrl()`
-   `\TYPO3\CMS\Core\Page\PageRenderer->getBaseUrl()`
-   `\TYPO3\CMS\Core\Page\PageRenderer->enableRemoveLineBreaksFromTemplate()`
-   `\TYPO3\CMS\Core\Page\PageRenderer->disableRemoveLineBreaksFromTemplate()`
-   `\TYPO3\CMS\Core\Page\PageRenderer->getRemoveLineBreaksFromTemplate()`
-   `\TYPO3\CMS\Core\Page\PageRenderer->enableDebugMode()`
-   `\TYPO3\CMS\Core\Resource\Filter\FileExtensionFilter->filterInlineChildren()`
-   `\TYPO3\CMS\Core\Session\UserSessionManager->createFromGlobalCookieOrAnonymous()`
-   `\TYPO3\CMS\Core\Site\Entity\SiteLanguage->getTwoLetterIsoCode()`
-   `\TYPO3\CMS\Core\Site\Entity\SiteLanguage->getDirection()`
-   `\TYPO3\CMS\Core\Type\DocType->getXhtmlDocType()`
-   `\TYPO3\CMS\Dashboard\DashboardInitializationService->getRequireJsModules()`
-   `\TYPO3\CMS\Extbase\Configuration\BackendConfigurationManager->getContentObject()`
-   `\TYPO3\CMS\Extbase\Configuration\BackendConfigurationManager->setContentObject()`
-   `\TYPO3\CMS\Extbase\Configuration\ConfigurationManager->getContentObject()`
-   `\TYPO3\CMS\Extbase\Configuration\ConfigurationManager->isFeatureEnabled()`
-   `\TYPO3\CMS\Extbase\Configuration\ConfigurationManager->setContentObject()`
-   `\TYPO3\CMS\Extbase\Configuration\FrontendConfigurationManager->getContentObject()`
-   `\TYPO3\CMS\Extbase\Configuration\FrontendConfigurationManager->setContentObject()`
-   `\TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder->getRequest()`
-   `\TYPO3\CMS\Extbase\Persistence\Generic\Typo3QuerySettings->setLanguageOverlayMode()`
-   `\TYPO3\CMS\Extbase\Persistence\Generic\Typo3QuerySettings->getLanguageOverlayMode()`
-   `\TYPO3\CMS\Extbase\Persistence\Generic\Typo3QuerySettings->setLanguageUid()`
-   `\TYPO3\CMS\Extbase\Persistence\Generic\Typo3QuerySettings->getLanguageUid()`
-   `\TYPO3\CMS\Extbase\Property\AbstractTypeConverter->canConvertFrom()`
-   `\TYPO3\CMS\Extbase\Property\AbstractTypeConverter->getPriority()`
-   `\TYPO3\CMS\Extbase\Property\AbstractTypeConverter->getSupportedTargetType()`
-   `\TYPO3\CMS\Extbase\Property\AbstractTypeConverter->getSupportedSourceTypes()`
-   `\TYPO3\CMS\Fluid\View\StandaloneView->getFormat()`
-   `\TYPO3\CMS\Fluid\View\StandaloneView->getRequest()`
-   `\TYPO3\CMS\Fluid\View\StandaloneView->getTemplatePathAndFilename()`
-   `\TYPO3\CMS\FrontendLogin\Event\PasswordChangeEvent->getErrorMessage()`
-   `\TYPO3\CMS\FrontendLogin\Event\PasswordChangeEvent->isPropagationStopped()`
-   `\TYPO3\CMS\FrontendLogin\Event\PasswordChangeEvent->setAsInvalid()`
-   `\TYPO3\CMS\FrontendLogin\Event\PasswordChangeEvent->setHashedPassword()`
-   `\TYPO3\CMS\Frontend\Authentication\FrontendUserAuthentication->getUserTSconf()`
-   `\TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController->baseUrlWrap()`
-   `\TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController->checkEnableFields()`
-   `\TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController->doWorkspacePreview()`
-   `\TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController->getPagesTSconfig()`
-   `\TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController->initUserGroups()`
-   `\TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController->isBackendUserLoggedIn()`
-   `\TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController->isUserOrGroupSet()`
-   `\TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController->whichWorkspace()`
-   `\TYPO3\CMS\Frontend\Typolink\LinkFactory->createFromUriString()`
-   `\TYPO3\CMS\Frontend\Typolink\LinkFactory->getATagParams()`
-   `\TYPO3\CMS\Frontend\Typolink\LinkFactory->getMailTo()`
-   `\TYPO3\CMS\Frontend\Typolink\LinkFactory->getQueryArguments()`
-   `\TYPO3\CMS\Frontend\Typolink\LinkFactory->getTreeList()`
-   `\TYPO3\CMS\Frontend\Typolink\LinkFactory->getTypoLink_URL()`
-   `\TYPO3\CMS\Frontend\Typolink\LinkFactory->getTypoLink()`
-   `\TYPO3\CMS\Frontend\Typolink\LinkFactory->getUrlToCurrentLocation()`
-   `\TYPO3\CMS\Scheduler\Scheduler->addTask()`
-   `\TYPO3\CMS\Scheduler\Scheduler->fetchTaskRecord()`
-   `\TYPO3\CMS\Scheduler\Scheduler->fetchTaskWithCondition()`
-   `\TYPO3\CMS\Scheduler\Scheduler->fetchTask()`
-   `\TYPO3\CMS\Scheduler\Scheduler->isValidTaskObject()`
-   `\TYPO3\CMS\Scheduler\Scheduler->removeTask()`
-   `\TYPO3\CMS\Scheduler\Scheduler->saveTask()`
-   `\TYPO3\CMS\Scheduler\Task\AbstractTask->isExecutionRunning()`
-   `\TYPO3\CMS\Scheduler\Task\AbstractTask->markExecution()`
-   `\TYPO3\CMS\Scheduler\Task\AbstractTask->remove()`
-   `\TYPO3\CMS\Scheduler\Task\AbstractTask->unmarkAllExecutions()`
-   `\TYPO3\CMS\Scheduler\Task\AbstractTask->unmarkExecution()`
-   `\TYPO3\CMS\Setup\Event\AddJavaScriptModulesEvent->addModule()`
-   `\TYPO3\CMS\Setup\Event\AddJavaScriptModulesEvent->getModules()`

The following PHP static class methods that have previously been marked as deprecated for v12 have been removed:

-   `\TYPO3\CMS\Backend\Utility\BackendUtility::ADMCMD_previewCmds()`
-   `\TYPO3\CMS\Backend\Utility\BackendUtility::cshItem()`
-   `\TYPO3\CMS\Backend\Utility\BackendUtility::getClickMenuOnIconTagParameters()`
-   `\TYPO3\CMS\Backend\Utility\BackendUtility::getDropdownMenu()`
-   `\TYPO3\CMS\Backend\Utility\BackendUtility::getFuncCheck()`
-   `\TYPO3\CMS\Backend\Utility\BackendUtility::getFuncMenu()`
-   `\TYPO3\CMS\Backend\Utility\BackendUtility::getLinkToDataHandlerAction()`
-   `\TYPO3\CMS\Backend\Utility\BackendUtility::getPreviewUrl()`
-   `\TYPO3\CMS\Backend\Utility\BackendUtility::getRecordToolTip()`
-   `\TYPO3\CMS\Backend\Utility\BackendUtility::getThumbnailUrl()`
-   `\TYPO3\CMS\Backend\Utility\BackendUtility::getUpdateSignalCode()`
-   `\TYPO3\CMS\Backend\Utility\BackendUtility::isModuleSetInTBE_MODULES()`
-   `\TYPO3\CMS\Core\FormProtection\FormProtectionFactory::get()`
-   `\TYPO3\CMS\Core\FormProtection\FormProtectionFactory::purgeInstances()`
-   `\TYPO3\CMS\Core\Page\JavaScriptModuleInstruction::forRequireJS()`
-   `\TYPO3\CMS\Core\Type\ContextualFeedbackSeverity::transform()`
-   `\TYPO3\CMS\Core\Utility\DebugUtility::debugInPopUpWindow()`
-   `\TYPO3\CMS\Core\Utility\DebugUtility::debugRows()`
-   `\TYPO3\CMS\Core\Utility\DebugUtility::printArray()`
-   `\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addCoreNavigationComponent()`
-   `\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addLLrefForTCAdescr()`
-   `\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addModule()`
-   `\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addNavigationComponent()`
-   `\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::allowTableOnStandardPages()`
-   `\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getFileFieldTCAConfig()`
-   `\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::insertModuleFunction()`
-   `\TYPO3\CMS\Core\Utility\GeneralUtility::_GET()`
-   `\TYPO3\CMS\Core\Utility\GeneralUtility::_GP()`
-   `\TYPO3\CMS\Core\Utility\GeneralUtility::_GPmerged()`
-   `\TYPO3\CMS\Core\Utility\GeneralUtility::_POST()`
-   `\TYPO3\CMS\Core\Utility\GeneralUtility::linkThisScript()`
-   `\TYPO3\CMS\Extbase\Utility\ExtensionUtility::registerModule()`
-   `\TYPO3\CMS\Extbase\Utility\ExtensionUtility::registerTypeConverter()`

The following methods changed signature according to previous deprecations in v12 at the end of the argument list:

-   `\TYPO3\CMS\Backend\Form\FormDataCompiler->compile()` (argument 2 is now required)
-   `\TYPO3\CMS\Core\Messaging\AbstractMessage->setSeverity()` (argument 1 is now of type `ContextualFeedbackSeverity`)
-   `\TYPO3\CMS\Core\Messaging\FlashMessageQueue->clear()` (argument 1 is now of type `ContextualFeedbackSeverity|null`)
-   `\TYPO3\CMS\Core\Messaging\FlashMessageQueue->getAllMessagesAndFlush()` (argument 1 is now of type `ContextualFeedbackSeverity|null`)
-   `\TYPO3\CMS\Core\Messaging\FlashMessageQueue->getAllMessages()` (argument 1 is now of type `ContextualFeedbackSeverity|null`)
-   `\TYPO3\CMS\Core\Messaging\FlashMessageQueue->removeAllFlashMessagesFromSession()` (argument 1 is now of type `ContextualFeedbackSeverity|null`)
-   `\TYPO3\CMS\Core\Messaging\FlashMessages->__construct()` (argument 3 is now of type `ContextualFeedbackSeverity`)
-   `\TYPO3\CMS\Core\Page\PageRenderer->setLanguage()` (argument 1 is now of type `Locale`)
-   `\TYPO3\CMS\Core\Utility\File\ExtendedFileUtility->addMessageToFlashMessageQueue()` (argument 2 is now of type `ContextualFeedbackSeverity|null`)
-   `\TYPO3\CMS\Core\Utility\GeneralUtility::intExplode()` (argument 4 `$limit` has been removed)
-   `\TYPO3\CMS\Extbase\Mvc\Controller\ActionController->addFlashMessage()` (argument 2 is now of type `ContextualFeedbackSeverity`)
-   `\TYPO3\CMS\Extbase\Utility\LocalizationUtility::translate()` (argument 4 has been removed)
-   `\TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer->start()` (argument 3 `$request` has been removed)
-   `\TYPO3\CMS\Reports\Status->__construct()` (argument 4 is now of type `ContextualFeedbackSeverity`)
-   `\TYPO3\CMS\Scheduler\AbstractAdditionalFieldProvider->addMessage()` (argument 2 is now of type `ContextualFeedbackSeverity`)

The following public class properties have been dropped:

-   `\TYPO3\CMS\Backend\Tree\View\AbstractTreeView->BE_USER`
-   `\TYPO3\CMS\Backend\Tree\View\AbstractTreeView->thisScript`
-   `\TYPO3\CMS\Core\Localization\LanguageService->debugKey`
-   `\TYPO3\CMS\Core\Security\ContentSecurityPolicy\ConsumableNonce->b64`
-   `\TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer->lastTypoLinkLD`
-   `\TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer->lastTypoLinkTarget`
-   `\TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer->lastTypoLinkUrl`
-   `\TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController->baseUrl`
-   `\TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController->extTarget`
-   `\TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController->fileTarget`
-   `\TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController->intTarget`
-   `\TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController->spamProtectEmailAddresses`
-   `\TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController->tmpl`
-   `\TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController->xhtmlDoctype`
-   `\TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController->xhtmlVersion`

The following class method visibility has been changed to protected:

-   `\TYPO3\CMS\Core\Domain\Repository\PageRepository->getRecordOverlay()`

The following class methods are now marked as internal:

-   `\TYPO3\CMS\Core\Authentication\AbstractUserAuthentication->isSetSessionCookie()`
-   `\TYPO3\CMS\Core\Authentication\AbstractUserAuthentication->isRefreshTimeBasedCookie()`
-   `\TYPO3\CMS\Core\Authentication\AbstractUserAuthentication->removeCookie()`
-   `\TYPO3\CMS\Core\Authentication\AbstractUserAuthentication->isCookieSet()`
-   `\TYPO3\CMS\Core\Authentication\AbstractUserAuthentication->unpack_uc()`
-   `\TYPO3\CMS\Core\Authentication\AbstractUserAuthentication->appendCookieToResponse()`

The following class methods now have a native return type and removed the
`#[\ReturnTypeWillChange]` attribute:

-   `\TYPO3\CMS\Core\Collection\AbstractRecordCollection->current()`
-   `\TYPO3\CMS\Core\Collection\AbstractRecordCollection->key()`
-   `\TYPO3\CMS\Core\Log\LogRecord->offsetGet()`
-   `\TYPO3\CMS\Core\Messaging\FlashMessageQueue->dequeue()`
-   `\TYPO3\CMS\Core\Resource\Collection\AbstractFileCollection->key()`
-   `\TYPO3\CMS\Core\Resource\MetaDataAspect->offsetGet()`
-   `\TYPO3\CMS\Core\Resource\MetaDataAspect->current()`
-   `\TYPO3\CMS\Core\Resource\Search\Result\EmptyFileSearchResult->current()`
-   `\TYPO3\CMS\Core\Resource\Search\Result\EmptyFileSearchResult->key()`
-   `\TYPO3\CMS\Core\Routing\SiteRouteResult->offsetGet()`
-   `\TYPO3\CMS\Extbase\Persistence\Generic\LazyLoadingProxy->current()`
-   `\TYPO3\CMS\Extbase\Persistence\Generic\LazyLoadingProxy->key()`
-   `\TYPO3\CMS\Extbase\Persistence\Generic\LazyObjectStorage->current()`
-   `\TYPO3\CMS\Extbase\Persistence\Generic\LazyObjectStorage->offsetGet()`
-   `\TYPO3\CMS\Extbase\Persistence\Generic\QueryResult->offsetGet()`
-   `\TYPO3\CMS\Extbase\Persistence\Generic\QueryResult->current()`
-   `\TYPO3\CMS\Extbase\Persistence\Generic\QueryResult->key()`
-   `\TYPO3\CMS\Extbase\Persistence\ObjectStorage->current()`
-   `\TYPO3\CMS\Extbase\Persistence\ObjectStorage->offsetGet()`
-   `\TYPO3\CMS\Filelist\Dto\ResourceCollection->current()`
-   `\TYPO3\CMS\Filelist\Dto\ResourceCollection->key()`

The following class properties visibility have been changed to protected:

-   `\TYPO3\CMS\Core\Domain\Repository\PageRepository->where_hid_del`
-   `\TYPO3\CMS\Core\Domain\Repository\PageRepository->where_groupAccess`
-   `\TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController->type`

The following class property visibility has been changed to private:

-   `\TYPO3\CMS\Core\Type\DocType->getXhtmlVersion`

The following class properties have been marked as internal:

-   `\TYPO3\CMS\Core\Authentication\AbstractUserAuthentication->lastLogin_column`
-   `\TYPO3\CMS\Core\Authentication\AbstractUserAuthentication->formfield_uname`
-   `\TYPO3\CMS\Core\Authentication\AbstractUserAuthentication->formfield_uident`
-   `\TYPO3\CMS\Core\Authentication\AbstractUserAuthentication->formfield_status`
-   `\TYPO3\CMS\Core\Authentication\AbstractUserAuthentication->loginSessionStarted`
-   `\TYPO3\CMS\Core\Authentication\AbstractUserAuthentication->dontSetCookie`
-   `\TYPO3\CMS\Core\Authentication\FrontendUserAuthentication->formfield_permanent`
-   `\TYPO3\CMS\Core\Authentication\FrontendUserAuthentication->is_permanent`

The following class property has changed/enforced type:

-   `\TYPO3\CMS\Core\Page\PageRenderer->endingSlash` (is now string)

The following eID entry point has been removed:

-   `requirejs`

The following ViewHelpers have been changed or removed:

-   `<f:be.buttons.csh>` removed
-   `<f:be.labels.csh>` removed
-   `<f:translate>` Argument "alternativeLanguageKeys" has been removed

The following TypoScript options have been dropped or adapted:

-   `config.baseURL`
-   `config.removePageCss`
-   `config.spamProtectEmailAddresses` (only `ascii` value)
-   `config.xhtmlDoctype`
-   `plugin.[pluginName]._CSS_PAGE_STYLE`
-   `[ip()]` condition function must be used in a context with request
-   `[loginUser()]` condition function removed
-   `[usergroup()]` condition function removed
-   `constants` setup top-level-object and `constants` property of `parseFunc`
-   `plugin.tx_felogin_login.settings.passwordValidators` has been removed

The following constant has been dropped:

-   `TYPO3_mainDir`

The following class constants have been dropped:

-   `\TYPO3\CMS\Core\Messaging\AbstractMessage::ERROR`
-   `\TYPO3\CMS\Core\Messaging\AbstractMessage::INFO`
-   `\TYPO3\CMS\Core\Messaging\AbstractMessage::NOTICE`
-   `\TYPO3\CMS\Core\Messaging\AbstractMessage::OK`
-   `\TYPO3\CMS\Core\Messaging\AbstractMessage::WARNING`
-   `\TYPO3\CMS\Core\Messaging\FlashMessage::ERROR`
-   `\TYPO3\CMS\Core\Messaging\FlashMessage::INFO`
-   `\TYPO3\CMS\Core\Messaging\FlashMessage::NOTICE`
-   `\TYPO3\CMS\Core\Messaging\FlashMessage::OK`
-   `\TYPO3\CMS\Core\Messaging\FlashMessage::WARNING`
-   `\TYPO3\CMS\Core\Page\JavaScriptModuleInstruction::FLAG_LOAD_REQUIRE_JS`
-   `\TYPO3\CMS\Reports\Status::ERROR`
-   `\TYPO3\CMS\Reports\Status::INFO`
-   `\TYPO3\CMS\Reports\Status::NOTICE`
-   `\TYPO3\CMS\Reports\Status::OK`
-   `\TYPO3\CMS\Reports\Status::WARNING`

The following global option handling have been dropped and are ignored:

-   `$GLOBALS['TYPO3_CONF_VARS']['FE']['defaultUserTSconfig']`
-   `$GLOBALS['TYPO3_CONF_VARS']['FE']['versionNumberInFilename']` only accepts a boolean value now

The following global variables have been removed:

-   `$GLOBALS['TBE_STYLES']`
-   `$GLOBALS['TBE_STYLES']['stylesheet']`
-   `$GLOBALS['TBE_STYLES']['stylesheet2']`
-   `$GLOBALS['TBE_STYLES']['skins']`
-   `$GLOBALS['TBE_STYLES']['admPanel']`
-   `$GLOBALS['TCA_DESCR']`

The following hooks have been removed:

-   `$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['ext/install']['update']`
-   `$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['RequireJS']['postInitializationModules']`
-   `$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/cache/frontend/class.t3lib_cache_frontend_abstractfrontend.php']['flushByTag']`
-   `$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_befunc.php']['viewOnClickClass']`
-   `$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_userauth.php']['logoff_post_processing']`
-   `$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_userauth.php']['logoff_pre_processing']`
-   `$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_userauth.php']['postLoginFailureProcessing']`
-   `$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_userauthgroup.php']['backendUserLogin']`
-   `$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_userauthgroup.php']['getDefaultUploadFolder']`
-   `$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['TYPO3\CMS\Lowlevel\Controller\ConfigurationController']['modifyBlindedConfigurationOptions']`

The following single field configuration has been removed from TCA:

-   `MM_insert_fields` (for TCA fields with `MM` configuration)

The following event has been removed:

-   `\TYPO3\CMS\Core\Configuration\Event\ModifyLoadedPageTsConfigEvent`

The following fallbacks have been removed:

-   Usage of the `ext_icon.*` file locations for extension icons
-   Usage of the result property `additionalJavaScriptPost` of the form engine result array
-   Using chart.js v3 compatible widgets in ext:dashboard
-   Usage of `.t3js-contextmenutrigger` to trigger and configure context menus
-   Usage of the jsonArray property `scriptCall` for AjaxController's
-   Binding the selected menu items to callback actions in context menus
-   Checking for `\TYPO3\CMS\Core\Site\SiteLanguageAwareTrait` is removed in `\TYPO3\CMS\Core\Routing\Aspect\AspectFactory`
-   `f:format.html` ViewHelper no longer works in BE context
-   Usage of `JScode` containing inline JavaScript for handing custom signals
-   Usage property `$resultArray['requireJsModules']` of the form engine result array
-   Using backend FormEngine, the current ServerRequestInterface request must be provided in key "request" as
    initialData to FormDataCompiler, the fallback to `$GLOBALS['TYPO3_REQUEST']` has been removed.
-   Compatibility layer for "TCEforms" key in FlexFormTools has been removed
-   Compatibility layer for using array parameters for files in extbase (use `UploadedFile` instead)

The following upgrade wizards have been removed:

-   Wizard for migrating backend user languages
-   Wizard for installing the extension "legacy_collections" from TER
-   Wizard for migrating the `transOrigDiffSourceField` field to a json encoded string
-   Wizard for cleaning up workspace `new` placeholders
-   Wizard for cleaning up workspace `move` placeholders
-   Wizard for migrating shortcut records
-   Wizard for sanitizing existing SVG files in the `fileadmin` folder
-   Wizard for populating a new channel column of the sys_log table

The following features are now always enabled:

-   `security.backend.enforceContentSecurityPolicy`

The following feature has been removed:

-   Regular expression based validators in ext:form backend UI

The following database table fields have been removed:

-   `fe_users.TSconfig`
-   `fe_groups.TSconfig`

The following backend route identifier has been removed:

-   `ajax_core_requirejs`

The following global JavaScript variable has been removed:

-   `TYPO3.Tooltip`

The following global JavaScript function has been removed:

-   `Global_JavaScript_Function_Name`

The following JavaScript module has been removed:

-   `tooltip`

The following JavaScript method behaviour has changed:

-   `ColorPicker.initialize()` always requires an `HTMLInputElement` to be passed as first argument

The following JavaScript method has been removed:

-   `getParameterFromUrl()` of `@typo3/backend/utility`

The following CKEditor plugin has been removed:

-   `SoftHyphen`

The following dependency injection service aliase has been removed:

-   `@dashboard.views.widget`

## Impact {#impact}

Using above removed functionality will most likely raise PHP fatal level errors,
may change website output or crashes browser JavaScript.
