FEATURE: Add removed functions for TYPO3 7.x.

* Adjust structure of deprecated functions yaml.
* Add version of removal to message for removed functions.

Relates: #33
This commit is contained in:
Daniel Siepmann 2017-03-30 11:03:30 +02:00
parent 4c162af3d4
commit 21b7c09416
Signed by: Daniel Siepmann
GPG key ID: 33D6629915560EF4
7 changed files with 395 additions and 230 deletions

View file

@ -1,213 +1,218 @@
# Deprecated in 7.0: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Index.html#breaking-changes
\TYPO3\CMS\Core\Utility\GeneralUtility::loadTCA:
# Breaking changes in 7.0: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Index.html#breaking-changes
'7.0':
\TYPO3\CMS\Core\Utility\GeneralUtility::loadTCA:
newFunctionCall: null
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-61785-LoadTcaFunctionRemoved.html'
\TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController->getCompressedTCarray:
\TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController->getCompressedTCarray:
newFunctionCall: 'Full TCA is always loaded during bootstrap in FE, the method is obsolete. If an eid script calls this method to load TCA, use \TYPO3\CMS\Frontend\Utility\EidUtility::initTCA() instead'
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-61785-FrontendTcaFunctionsRemoved.html'
\TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController->includeTCA:
\TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController->includeTCA:
newFunctionCall: 'Full TCA is always loaded during bootstrap in FE, the method is obsolete. If an eid script calls this method to load TCA, use \TYPO3\CMS\Frontend\Utility\EidUtility::initTCA() instead'
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-61785-FrontendTcaFunctionsRemoved.html'
\TYPO3\CMS\Core\Utility\MailUtility::mail:
\TYPO3\CMS\Core\Utility\MailUtility::mail:
newFunctionCall: 'Use the \TYPO3\CMS\Core\Mail\Mailer API for sending email'
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-61783-RemoveDeprecatedMailFunctionality.html'
\TYPO3\CMS\Core\Utility\GeneralUtility::plainMailEncoded:
\TYPO3\CMS\Core\Utility\GeneralUtility::plainMailEncoded:
newFunctionCall: 'Use the \TYPO3\CMS\Core\Mail\Mailer API for sending email'
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-61783-RemoveDeprecatedMailFunctionality.html'
\TYPO3\CMS\Frontend\Utility\EidUtility::connectDB:
\TYPO3\CMS\Frontend\Utility\EidUtility::connectDB:
newFunctionCall: null
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-61863-ConnectDbFunctionRemoved.html'
\TYPO3\CMS\Core\Utility\GeneralUtility::int_from_ver:
\TYPO3\CMS\Core\Utility\GeneralUtility::int_from_ver:
newFunctionCall: 'Replace the usage of the removed function with \TYPO3\CMS\Core\Utility\VersionNumberUtility::convertVersionNumberToInteger()'
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-61860-RemoveIntFromVerFunction.html'
\TYPO3\CMS\Core\DataHandlin\DataHandler->getUniqueFields:
\TYPO3\CMS\Core\DataHandlin\DataHandler->getUniqueFields:
newFunctionCall: 'Replace all calls to \TYPO3\CMS\Core\DataHandling\DataHandler::getUniqueFields() with calls to \TYPO3\CMS\Version\Hook\DataHandlerHook::getUniqueFields()'
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-61822-GetUniqueFieldsFunctionRemoved.html'
\TYPO3\CMS\Core\Utility\PhpOptionsUtility::isSafeModeEnabled:
\TYPO3\CMS\Core\Utility\PhpOptionsUtility::isSafeModeEnabled:
newFunctionCall: null
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-61820-PhpOptionsUtilityDeprecatedFunctionsRemoved.html'
\TYPO3\CMS\Core\Utility\PhpOptionsUtility::isMagicQuotesGpcEnabled:
\TYPO3\CMS\Core\Utility\PhpOptionsUtility::isMagicQuotesGpcEnabled:
newFunctionCall: null
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-61820-PhpOptionsUtilityDeprecatedFunctionsRemoved.html'
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::isLocalconfWritable:
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::isLocalconfWritable:
newFunctionCall: null
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-61802-IsLocalconfWritableFunctionRemoved.html'
\TYPO3\CMS\Extbase\Object\ObjectManager->create:
\TYPO3\CMS\Extbase\Object\ObjectManager->create:
newFunctionCall: 'Use ObjectManager::get() instead'
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62673-ExtbaseDeprecatedCodeRemoved.html'
\TYPO3\CMS\Extbase\Persistence\Generic\Backend->replaceObject:
\TYPO3\CMS\Extbase\Persistence\Generic\Backend->replaceObject:
newFunctionCall: 'Removed without replacement'
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62673-ExtbaseDeprecatedCodeRemoved.html'
\TYPO3\CMS\Extbase\Persistence\Generic\QuerySettingsInterface->setReturnRawQueryResult:
\TYPO3\CMS\Extbase\Persistence\Generic\QuerySettingsInterface->setReturnRawQueryResult:
newFunctionCall: 'Removed without replacement'
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62673-ExtbaseDeprecatedCodeRemoved.html'
\TYPO3\CMS\Extbase\Persistence\Generic\QuerySettingsInterface->getReturnRawQueryResult:
\TYPO3\CMS\Extbase\Persistence\Generic\QuerySettingsInterface->getReturnRawQueryResult:
newFunctionCall: 'Use the parameter on $query->execute() directly'
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62673-ExtbaseDeprecatedCodeRemoved.html'
\TYPO3\CMS\Extbase\Persistence\Generic\Typo3QuerySettings->setSysLanguageUid:
\TYPO3\CMS\Extbase\Persistence\Generic\Typo3QuerySettings->setSysLanguageUid:
newFunctionCall: 'Use setLanguageUid() instead'
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62673-ExtbaseDeprecatedCodeRemoved.html'
\TYPO3\CMS\Extbase\Persistence\Generic\Typo3QuerySettings->getSysLanguageUid:
\TYPO3\CMS\Extbase\Persistence\Generic\Typo3QuerySettings->getSysLanguageUid:
newFunctionCall: 'Use getLanguageUid() instead'
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62673-ExtbaseDeprecatedCodeRemoved.html'
\TYPO3\CMS\Lang\LanguageService->JScharCode:
\TYPO3\CMS\Lang\LanguageService->JScharCode:
newFunctionCall: 'Use GeneralUtility::quoteJSvalue instead'
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62670-DeprecatedCodeRemovalInMultipleSysexts.html'
\TYPO3\CMS\Frontend\ContentObjec\ContentObjectRenderer->joinTSarrays:
\TYPO3\CMS\Frontend\ContentObjec\ContentObjectRenderer->joinTSarrays:
newFunctionCall: null
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62670-DeprecatedCodeRemovalInMultipleSysexts.html'
\TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController->tidyHTML:
\TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController->tidyHTML:
newFunctionCall: 'You may use the tidy extension from TER'
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62670-DeprecatedCodeRemovalInMultipleSysexts.html'
\TYPO3\CMS\Recordlist\Browser\ElementBrowser->isWebFolder:
\TYPO3\CMS\Recordlist\Browser\ElementBrowser->isWebFolder:
newFunctionCall: null
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62670-DeprecatedCodeRemovalInMultipleSysexts.html'
\TYPO3\CMS\Recordlist\Browser\ElementBrowser->checkFolder:
\TYPO3\CMS\Recordlist\Browser\ElementBrowser->checkFolder:
newFunctionCall: null
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62670-DeprecatedCodeRemovalInMultipleSysexts.html'
\TYPO3\CMS\Recordlist\RecordList\AbstractDatabaseRecordList->getTreeObject:
\TYPO3\CMS\Recordlist\RecordList\AbstractDatabaseRecordList->getTreeObject:
newFunctionCall: null
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62670-DeprecatedCodeRemovalInMultipleSysexts.html'
\TYPO3\CMS\Filelist\FileList->dirData:
\TYPO3\CMS\Filelist\FileList->dirData:
newFunctionCall: null
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62670-DeprecatedCodeRemovalInMultipleSysexts.html'
\TYPO3\CMS\Frontend\ContentObject\FilesContentObject->stdWrapValue:
\TYPO3\CMS\Frontend\ContentObject\FilesContentObject->stdWrapValue:
newFunctionCall: 'Use ContentObjectRenderer::stdWrapValue instead'
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62670-DeprecatedCodeRemovalInMultipleSysexts.html'
\TYPO3\CMS\Impexp\Controller\ImportExportController->userTempFolder:
\TYPO3\CMS\Impexp\Controller\ImportExportController->userTempFolder:
newFunctionCall: 'Use getDefaultImportExportFolder instead'
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62670-DeprecatedCodeRemovalInMultipleSysexts.html'
\TYPO3\CMS\Impexp\Controller\ImportExportController->userSaveFolder:
\TYPO3\CMS\Impexp\Controller\ImportExportController->userSaveFolder:
newFunctionCall: 'Use getDefaultImportExportFolder instead'
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62670-DeprecatedCodeRemovalInMultipleSysexts.html'
\TYPO3\CMS\Lowlevel\View\DatabaseIntegrityView->func_filesearch:
\TYPO3\CMS\Lowlevel\View\DatabaseIntegrityView->func_filesearch:
newFunctionCall: null
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62670-DeprecatedCodeRemovalInMultipleSysexts.html'
\TYPO3\CMS\Lowlevel\View\DatabaseIntegrityView->findFile:
\TYPO3\CMS\Lowlevel\View\DatabaseIntegrityView->findFile:
newFunctionCall: null
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62670-DeprecatedCodeRemovalInMultipleSysexts.html'
\TYPO3\CMS\Rtehtmlarea\RteHtmlAreaBase->buildStyleSheet:
\TYPO3\CMS\Rtehtmlarea\RteHtmlAreaBase->buildStyleSheet:
newFunctionCall: null
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62670-DeprecatedCodeRemovalInMultipleSysexts.html'
\TYPO3\CMS\Rtehtmlarea\RteHtmlAreaBase->loremIpsumInsert:
\TYPO3\CMS\Rtehtmlarea\RteHtmlAreaBase->loremIpsumInsert:
newFunctionCall: null
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62670-DeprecatedCodeRemovalInMultipleSysexts.html'
\TYPO3\CMS\Workspaces\Service\StagesService->checkCustomStagingForWS:
\TYPO3\CMS\Workspaces\Service\StagesService->checkCustomStagingForWS:
newFunctionCall: null
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62670-DeprecatedCodeRemovalInMultipleSysexts.html'
\TYPO3\CMS\Core\DataHandling\DataHandler->clear_cache:
\TYPO3\CMS\Core\DataHandling\DataHandler->clear_cache:
newFunctionCall: 'Use ->clear_cacheCmd() instead. Alternatively you can call ->registerPageCacheClearing() from a hook to not immediately clear the cache but register clearing after DataHandler operation finishes'
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62416-DeprecatedCodeRemovalInCoreSysext.html'
\TYPO3\CMS\Core\DataHandling\DataHandler->internal_clearPageCache:
\TYPO3\CMS\Core\DataHandling\DataHandler->internal_clearPageCache:
newFunctionCall: 'Use the cache manager directly'
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62416-DeprecatedCodeRemovalInCoreSysext.html'
\TYPO3\CMS\Core\Utility\GeneralUtility::array_merge_recursive_overrule:
\TYPO3\CMS\Core\Utility\GeneralUtility::array_merge_recursive_overrule:
newFunctionCall: 'Use ArrayUtility::mergeRecursiveWithOverrule() instead. WARNING: The new method changed its signature and does not return the first parameter anymore'
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62416-DeprecatedCodeRemovalInCoreSysext.html'
\TYPO3\CMS\Core\Utility\GeneralUtility::htmlspecialchars_decode:
\TYPO3\CMS\Core\Utility\GeneralUtility::htmlspecialchars_decode:
newFunctionCall: 'Use native PHP htmlspecialchars_decode() function'
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62416-DeprecatedCodeRemovalInCoreSysext.html'
# TODO: This is useless, adding a warning to all "get" methods is crazy.
# Also this is already handeled by: Typo3Update_Sniffs_LegacyClassnames_InstantiationWithObjectManagerSniff
# \TYPO3\CMS\Core\Category\CategoryRegistry->get:
# newFunctionCall: 'Use isRegistered() instead'
# docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62416-DeprecatedCodeRemovalInCoreSysext.html'
\TYPO3\CMS\Core\Category\CategoryRegistry->applyTca:
# NOTE: This is useless, adding a warning to all "get" methods is crazy.
# Also this is already handeled by: Typo3Update_Sniffs_LegacyClassnames_InstantiationWithObjectManagerSniff
# \TYPO3\CMS\Core\Category\CategoryRegistry->get:
# newFunctionCall: 'Use isRegistered() instead'
# docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62416-DeprecatedCodeRemovalInCoreSysext.html'
\TYPO3\CMS\Core\Category\CategoryRegistry->applyTca:
newFunctionCall: null
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62416-DeprecatedCodeRemovalInCoreSysext.html'
\TYPO3\CMS\Core\Resource\FileRepository->findByUid:
# NOTE: This is useless, adding a warning to all "findByUid" methods is crazy.
# Many calls to repositories will be marked as warning
# \TYPO3\CMS\Core\Resource\FileRepository->findByUid:
# newFunctionCall: null
# docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62416-DeprecatedCodeRemovalInCoreSysext.html'
\TYPO3\CMS\Core\Resource\FileRepository->addToIndex:
newFunctionCall: null
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62416-DeprecatedCodeRemovalInCoreSysext.html'
\TYPO3\CMS\Core\Resource\FileRepository->addToIndex:
newFunctionCall: null
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62416-DeprecatedCodeRemovalInCoreSysext.html'
\TYPO3\CMS\Core\Resource\FileRepository->getFileIndexRecordsForFolder:
\TYPO3\CMS\Core\Resource\FileRepository->getFileIndexRecordsForFolder:
newFunctionCall: 'Use FileIndexRepository::findByFolder() instead'
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62416-DeprecatedCodeRemovalInCoreSysext.html'
\TYPO3\CMS\Core\Resource\FileRepository->getFileIndexRecord:
\TYPO3\CMS\Core\Resource\FileRepository->getFileIndexRecord:
newFunctionCall: 'Use FileIndexRepository::findOneByFileObject() instead'
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62416-DeprecatedCodeRemovalInCoreSysext.html'
\TYPO3\CMS\Core\Resource\FileRepository->findBySha1Hash:
\TYPO3\CMS\Core\Resource\FileRepository->findBySha1Hash:
newFunctionCall: 'Use FileIndexRepository::findByContentHash() instead'
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62416-DeprecatedCodeRemovalInCoreSysext.html'
\TYPO3\CMS\Core\Resource\FileRepository->update:
newFunctionCall: 'Use FileIndexRepository::update() instead'
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62416-DeprecatedCodeRemovalInCoreSysext.html'
\TYPO3\CMS\Core\Resource\ResourceStorage->getFolderByIdentifier:
# NOTE: This is useless, adding a warning to all "update" methods is crazy.
# All repository updates will be marked as warning
# \TYPO3\CMS\Core\Resource\FileRepository->update:
# newFunctionCall: 'Use FileIndexRepository::update() instead'
# docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62416-DeprecatedCodeRemovalInCoreSysext.html'
\TYPO3\CMS\Core\Resource\ResourceStorage->getFolderByIdentifier:
newFunctionCall: 'Use getFolder() instead'
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62416-DeprecatedCodeRemovalInCoreSysext.html'
\TYPO3\CMS\Core\Resource\ResourceStorage->getFileByIdentifier:
\TYPO3\CMS\Core\Resource\ResourceStorage->getFileByIdentifier:
newFunctionCall: 'Use getFileInfoByIdentifier() instead'
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62416-DeprecatedCodeRemovalInCoreSysext.html'
\TYPO3\CMS\Core\Resource\ResourceStorage->getFileList:
\TYPO3\CMS\Core\Resource\ResourceStorage->getFileList:
newFunctionCall: 'Use getFilesInFolder() instead'
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62416-DeprecatedCodeRemovalInCoreSysext.html'
\TYPO3\CMS\Core\Resource\ResourceStorage->getFolderList:
\TYPO3\CMS\Core\Resource\ResourceStorage->getFolderList:
newFunctionCall: 'Use getFoldersInFolder() instead'
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62416-DeprecatedCodeRemovalInCoreSysext.html'
\TYPO3\CMS\Core\Resource\ResourceStorage->fetchFolderListFromDriver:
\TYPO3\CMS\Core\Resource\ResourceStorage->fetchFolderListFromDriver:
newFunctionCall: 'Use getFoldersInFolder() instead'
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62416-DeprecatedCodeRemovalInCoreSysext.html'
\TYPO3\CMS\Core\Utility\File\BasicFileUtility->getTotalFileInfo:
\TYPO3\CMS\Core\Utility\File\BasicFileUtility->getTotalFileInfo:
newFunctionCall: "Use ResourceStorage instead via $GLOBALS['BE_USER']->getFileStorages()"
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62416-DeprecatedCodeRemovalInCoreSysext.html'
\TYPO3\CMS\Core\Utility\File\BasicFileUtility->checkFileNameLen:
\TYPO3\CMS\Core\Utility\File\BasicFileUtility->checkFileNameLen:
newFunctionCall: "Use ResourceStorage instead via $GLOBALS['BE_USER']->getFileStorages()"
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62416-DeprecatedCodeRemovalInCoreSysext.html'
\TYPO3\CMS\Core\Utility\File\BasicFileUtility->isPathValid:
\TYPO3\CMS\Core\Utility\File\BasicFileUtility->isPathValid:
newFunctionCall: 'Use GeneralUtility::validPathStr() instead'
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62416-DeprecatedCodeRemovalInCoreSysext.html'
\TYPO3\CMS\Core\Utility\File\BasicFileUtility->blindPath:
\TYPO3\CMS\Core\Utility\File\BasicFileUtility->blindPath:
newFunctionCall: null
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62416-DeprecatedCodeRemovalInCoreSysext.html'
\TYPO3\CMS\Core\Utility\File\BasicFileUtility->findTempFolder:
\TYPO3\CMS\Core\Utility\File\BasicFileUtility->findTempFolder:
newFunctionCall: null
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62416-DeprecatedCodeRemovalInCoreSysext.html'
\TYPO3\CMS\Core\Utility\File\BasicFileUtility->rmDoubleSlash:
\TYPO3\CMS\Core\Utility\File\BasicFileUtility->rmDoubleSlash:
newFunctionCall: null
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62416-DeprecatedCodeRemovalInCoreSysext.html'
\TYPO3\CMS\Core\Utility\File\BasicFileUtility->cleanDirectoryName:
\TYPO3\CMS\Core\Utility\File\BasicFileUtility->cleanDirectoryName:
newFunctionCall: 'Use PathUtility::getCanonicalPath() instead'
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62416-DeprecatedCodeRemovalInCoreSysext.html'
\TYPO3\CMS\Core\Utility\File\ExtendedFileUtility->init_actionPerms:
\TYPO3\CMS\Core\Utility\File\ExtendedFileUtility->init_actionPerms:
newFunctionCall: 'Use setActionPermissions() instead'
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62416-DeprecatedCodeRemovalInCoreSysext.html'
\TYPO3\CMS\Core\Utility\File\ExtendedFileUtility->printLogErrorMessages:
\TYPO3\CMS\Core\Utility\File\ExtendedFileUtility->printLogErrorMessages:
newFunctionCall: 'Use pushErrorMessagesToFlashMessageQueue() instead'
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62416-DeprecatedCodeRemovalInCoreSysext.html'
\TYPO3\CMS\Core\Utility\File\ExtendedFileUtility->findRecycler:
\TYPO3\CMS\Core\Utility\File\ExtendedFileUtility->findRecycler:
newFunctionCall: 'Use \TYPO3\CMS\Core\Resource\ResourceStorage instead'
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62416-DeprecatedCodeRemovalInCoreSysext.html'
\TYPO3\CMS\Core\Html\RteHtmlParser->findRecycler:
\TYPO3\CMS\Core\Html\RteHtmlParser->findRecycler:
newFunctionCall: "Use $fileFactory->getFolderObjectFromCombinedIdentifier($GLOBALS['TYPO3_CONF_VARS']['BE']['RTE_imageStorageDir']); instead"
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62416-DeprecatedCodeRemovalInCoreSysext.html'
\TYPO3\CMS\Rtehtmlarea\SelectImage->getRTEImageStorageDir:
\TYPO3\CMS\Rtehtmlarea\SelectImage->getRTEImageStorageDir:
newFunctionCall: "Use $fileFactory->getFolderObjectFromCombinedIdentifier($GLOBALS['TYPO3_CONF_VARS']['BE']['RTE_imageStorageDir']); instead"
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62416-DeprecatedCodeRemovalInCoreSysext.html'
\TYPO3\CMS\Core\Localization\Locales->getTerLocales:
\TYPO3\CMS\Core\Localization\Locales->getTerLocales:
newFunctionCall: null
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62416-DeprecatedCodeRemovalInCoreSysext.html'
\TYPO3\CMS\Core\Localization\Locales->getTerLocaleDependencies:
\TYPO3\CMS\Core\Localization\Locales->getTerLocaleDependencies:
newFunctionCall: null
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62416-DeprecatedCodeRemovalInCoreSysext.html'
\TYPO3\CMS\Core\Localization\Locales->convertToTerLocales:
\TYPO3\CMS\Core\Localization\Locales->convertToTerLocales:
newFunctionCall: null
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62416-DeprecatedCodeRemovalInCoreSysext.html'
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getInsertionNeedles:
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getInsertionNeedles:
newFunctionCall: null
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62416-DeprecatedCodeRemovalInCoreSysext.html'
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::insertModuleFunction:
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::insertModuleFunction:
newFunctionCall: null
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62416-DeprecatedCodeRemovalInCoreSysext.html'
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getRequiredExtensionListArray:
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getRequiredExtensionListArray:
newFunctionCall: null
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62416-DeprecatedCodeRemovalInCoreSysext.html'
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::writeNewExtensionList:
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::writeNewExtensionList:
newFunctionCall: null
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62416-DeprecatedCodeRemovalInCoreSysext.html'
\TYPO3\CMS\Core\Utility\PhpOptionsUtility::isSqlSafeModeEnabled:
\TYPO3\CMS\Core\Utility\PhpOptionsUtility::isSqlSafeModeEnabled:
newFunctionCall: null
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62416-DeprecatedCodeRemovalInCoreSysext.html'
\TYPO3\CMS\Core\Core\ClassLoader::getAliasForClassName:
\TYPO3\CMS\Core\Core\ClassLoader::getAliasForClassName:
newFunctionCall: 'Use getAliasesForClassName() instead'
docsUrl: 'https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.0/Breaking-62416-DeprecatedCodeRemovalInCoreSysext.html'

View file

@ -0,0 +1,4 @@
# Breaking changes in 7.1: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.1/Index.html
# Nothing in here? Right, there were no breaking changes to functions in this version.
# We keep this file to let you know we didn't forget anything.
'7.1': []

View file

@ -0,0 +1,36 @@
# Breaking changes in 7.2: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.2/Index.html
'7.2':
\TYPO3\CMS\Core\Page\PageRenderer->setSvgPath:
newFunctionCall: 'Use 3rd party library instead, which is already loaded by TYPO3'
docsUrl: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.2/Breaking-65962-WebSVGLibraryAndAPIRemoved.html
\TYPO3\CMS\Core\Page\PageRenderer->loadSvg:
newFunctionCall: 'Use 3rd party library instead, which is already loaded by TYPO3'
docsUrl: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.2/Breaking-65962-WebSVGLibraryAndAPIRemoved.html
\TYPO3\CMS\Core\Page\PageRenderer->enableSvgDebug:
newFunctionCall: 'Use 3rd party library instead, which is already loaded by TYPO3'
docsUrl: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.2/Breaking-65962-WebSVGLibraryAndAPIRemoved.html
\TYPO3\CMS\Core\Page\PageRenderer->svgForceFlash:
newFunctionCall: 'Use 3rd party library instead, which is already loaded by TYPO3'
docsUrl: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.2/Breaking-65962-WebSVGLibraryAndAPIRemoved.html
\TYPO3\CMS\Backend\Controller\LoginController->makeLoginForm:
newFunctionCall: 'Use the new Fluid View to adjust the login screen instead'
docsUrl: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.2/Breaking-65939-BackendLoginRefactoring.html
\TYPO3\CMS\Backend\Controller\LoginController->makeLogoutForm:
newFunctionCall: 'Use the new Fluid View to adjust the login screen instead'
docsUrl: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.2/Breaking-65939-BackendLoginRefactoring.html
\TYPO3\CMS\Backend\Controller\LoginController->wrapLoginForm:
newFunctionCall: 'Use the new Fluid View to adjust the login screen instead'
docsUrl: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.2/Breaking-65939-BackendLoginRefactoring.html
\TYPO3\CMS\Backend\Controller\LoginController->makeLoginBoxImage:
newFunctionCall: 'Use the new Fluid View to adjust the login screen instead'
docsUrl: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.2/Breaking-65939-BackendLoginRefactoring.html
\TYPO3\CMS\Backend\Controller\LoginController->makeLoginNews:
newFunctionCall: 'Use the new Fluid View to adjust the login screen instead'
docsUrl: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.2/Breaking-65939-BackendLoginRefactoring.html
\TYPO3\CMS\Backend\Controller\LoginController->emitRenderLoginFormSignal:
newFunctionCall: 'Use the new Fluid View to adjust the login screen instead'
docsUrl: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.2/Breaking-65939-BackendLoginRefactoring.html
# NOTE: This is useless, adding a warning to all "getSignalSlotDispatcher" methods is crazy, many developers implement such a method.
# \TYPO3\CMS\Backend\Controller\LoginController->getSignalSlotDispatcher:
# newFunctionCall: 'Use the new Fluid View to adjust the login screen instead'
# docsUrl: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.2/Breaking-65939-BackendLoginRefactoring.html

View file

@ -0,0 +1,13 @@
# Breaking changes in 7.3: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.3/Index.html#breaking-changes
'7.3':
# NOTE: If this is making you crazy, just disable via ruleset.xml or phpcs.xml
parent::initializeObject:
newFunctionCall: 'Remove call, if this is inside a child of \TYPO3\CMS\Extbase\DomainObject\AbstractDomainObject, there is no initializeObject in the parent anymore.'
docsUrl: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.3/Breaking-67402-ExtbaseAbstractDomainObjectInitializeObject.html
\TYPO3\CMS\Extbase\Persistence\Repository::replace:
newFunctionCall: null
docsUrl: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.3/Breaking-63835-RemoveDeprecatedExtbasePersistenceParts.html
\TYPO3\CMS\Extbase\Persistence\Generic\Backend::setDeletedObjects:
newFunctionCall: null
docsUrl: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.3/Breaking-63835-RemoveDeprecatedExtbasePersistenceParts.html

View file

@ -0,0 +1,81 @@
# Breaking changes in 7.4: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.4/Index.html#breaking-changes
'7.4':
\TYPO3\CMS\Core\Page\PageRenderer::setExtCorePath:
newFunctionCall: null
docsUrl: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.4/Breaking-68001-RemovedExtJSCoreAndExtJSAdapters.html
\TYPO3\CMS\Core\Page\PageRenderer::getExtCorePath:
newFunctionCall: null
docsUrl: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.4/Breaking-68001-RemovedExtJSCoreAndExtJSAdapters.html
\TYPO3\CMS\Core\Page\PageRenderer::loadExtCore:
newFunctionCall: null
docsUrl: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.4/Breaking-68001-RemovedExtJSCoreAndExtJSAdapters.html
\TYPO3\CMS\Core\Page\PageRenderer::enableExtCoreDebug:
newFunctionCall: null
docsUrl: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.4/Breaking-68001-RemovedExtJSCoreAndExtJSAdapters.html
\TYPO3\CMS\Core\Page\PageRenderer::setExtCorePath:
newFunctionCall: null
docsUrl: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.4/Breaking-68001-RemovedExtJSCoreAndExtJSAdapters.html
\TYPO3\CMS\Backend\Controller\EditDocumentController->functionMenus:
newFunctionCall: null
docsUrl: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.4/Breaking-67753-DropSecondaryOptions.html
\TYPO3\CMS\Backend\Utility\BackendUtility::getFileIcon:
newFunctionCall: 'Use \TYPO3\CMS\Backend\Utility\IconUtility::getSpriteIconForFile() insteadenableExtCoreDebug'
docsUrl: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.4/Breaking-67654-RemoveGLOBALSFILEICONSFunctionality.html
\TYPO3\CMS\Frontend\Page\PageGenerator::getIncFiles:
newFunctionCall: 'Use hooks during the Frontend set up to execute custom PHP code'
docsUrl: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.4/Breaking-67646-LibraryInclusionInFrontend.html
\TYPO3\CMS\Backend\Template\DocumentTemplate\DocumentTemplate->formWidthText:
newFunctionCall: null
docsUrl: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.4/Breaking-67565-DeprecatedBackendRelatedMethodsRemoved.html
\TYPO3\CMS\Backend\View\PageLayoutView->getBackendLayoutConfiguration:
newFunctionCall: null
docsUrl: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.4/Breaking-67565-DeprecatedBackendRelatedMethodsRemoved.html
\TYPO3\CMS\Backend\View\PageLayoutView->wordWrapper:
newFunctionCall: null
docsUrl: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.4/Breaking-67565-DeprecatedBackendRelatedMethodsRemoved.html
\TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController->checkJumpUrlReferer:
newFunctionCall: null
docsUrl: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.4/Breaking-66602-RemoveRefererCheckWhileHandlingJumpUrl.html
\TYPO3\CMS\Core\Utility\OpcodeCacheUtility::initialize:
newFunctionCall: 'Use new service class instead \TYPO3\CMS\Core\Service\OpcodeCacheService'
docsUrl: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.4/Breaking-63838-ChangedOpcodeCacheUtilityBeingAServiceClass.html
\TYPO3\CMS\Core\Utility\OpcodeCacheUtility::clearAllActive:
newFunctionCall: 'Use new service class instead \TYPO3\CMS\Core\Service\OpcodeCacheService'
docsUrl: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.4/Breaking-63838-ChangedOpcodeCacheUtilityBeingAServiceClass.html
\TYPO3\CMS\Core\Utility\OpcodeCacheUtility::getAllActive:
newFunctionCall: 'Use new service class instead \TYPO3\CMS\Core\Service\OpcodeCacheService'
docsUrl: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.4/Breaking-63838-ChangedOpcodeCacheUtilityBeingAServiceClass.html
\TYPO3\CMS\Backend\Tree\View\PagePositionMap->JSimgFunc:
newFunctionCall: 'Use proper styling for a tree list'
docsUrl: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.4/Breaking-56951-RemoveUnusedMethodsInPagePositionMap.html
\TYPO3\CMS\Backend\Tree\View\PagePositionMap->insertQuadLines:
newFunctionCall: 'Use proper styling for a tree list'
docsUrl: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.4/Breaking-56951-RemoveUnusedMethodsInPagePositionMap.html
\TYPO3\CMS\Core\Page\PageRenderer->enableExtJSQuickTips:
newFunctionCall: 'Use bootstrap tooltips, which work out of the box as alternative. Simple add data-toggle="tooltip" and data-title="your tooltip" to any element you want'
docsUrl: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.4/Breaking-68276-RemoveExtJSQuicktipsIfPossible.html
\TYPO3\CMS\IndexedSearch\Indexer->removeLoginpagesWithContentHash:
newFunctionCall: null
docsUrl: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.4/Breaking-68193-DropRemoveLoginpagesWithContentHashFromIndexerphp.html
\TYPO3\CMS\Frontend\Controller\ExtDirectEidController->actionIsAllowed:
newFunctionCall: 'Migrate your eID scripts to the new PSR-7 compliant model'
docsUrl: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.4/Breaking-68186-AdjustedAndRemovedMethodsInEIDArea.html
# NOTE: It does not make sense to warn about all render methods
# \TYPO3\CMS\Frontend\Controller\ExtDirectEidController->render:
# newFunctionCall: 'Migrate your eID scripts to the new PSR-7 compliant model'
# docsUrl: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.4/Breaking-68186-AdjustedAndRemovedMethodsInEIDArea.html
\TYPO3\CMS\Frontend\Utility\EidUtility::isEidRequest:
newFunctionCall: 'Migrate your eID scripts to the new PSR-7 compliant model'
docsUrl: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.4/Breaking-68186-AdjustedAndRemovedMethodsInEIDArea.html
\TYPO3\CMS\Frontend\Utility\EidUtility::getEidScriptPath:
newFunctionCall: 'Migrate your eID scripts to the new PSR-7 compliant model'
docsUrl: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.4/Breaking-68186-AdjustedAndRemovedMethodsInEIDArea.html
\TYPO3\CMS\Backend\View\PageLayoutView->linkRTEbutton:
newFunctionCall: null
docsUrl: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.4/Breaking-68020-DroppedDisableBigButtons.html
\TYPO3\CMS\Backend\View\PageLayoutView->isRTEforField:
newFunctionCall: null
docsUrl: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.4/Breaking-68020-DroppedDisableBigButtons.html
\TYPO3\CMS\Backend\View\PageLayoutView->getSpecConfForField:
newFunctionCall: null
docsUrl: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.4/Breaking-68020-DroppedDisableBigButtons.html

View file

@ -0,0 +1,2 @@
# Breaking changes in 7.5: https://docs.typo3.org/typo3cms/extensions/core/Changelog/7.5/Index.html#breaking-changes
'7.5': []

View file

@ -68,26 +68,35 @@ class Typo3Update_Sniffs_Deprecated_GenericFunctionCallSniff implements PhpCsSni
* @param array $deprecatedFunctions
* @return array
*/
protected function prepareStructure(array $deprecatedFunctions)
protected function prepareStructure(array $oldStructure)
{
array_walk($deprecatedFunctions, function (&$config, $function) {
$typo3Versions = array_keys($oldStructure);
$newStructure = [];
foreach ($typo3Versions as $typo3Version) {
foreach ($oldStructure[$typo3Version] as $function => $config) {
// Split static methods and methods.
$split = preg_split('/::|->/', $function);
$config['static'] = strpos($function, '::') !== false;
$config['fqcn'] = null;
$config['class'] = null;
$config['function'] = $split[0];
$newStructure[$function] = $config;
$newStructure[$function]['static'] = strpos($function, '::') !== false;
$newStructure[$function]['fqcn'] = null;
$newStructure[$function]['class'] = null;
$newStructure[$function]['function'] = $split[0];
// TODO: Add a way to check for removed or deprecated.
$newStructure[$function]['version_removed'] = $typo3Version;
// If split contains two parts, it's a class with method
if (isset($split[1])) {
$config['fqcn'] = $split[0];
$config['class'] = array_slice(explode('\\', $config['fqcn']), -1)[0];
$config['function'] = $split[1];
$newStructure[$function]['fqcn'] = $split[0];
$newStructure[$function]['class'] = array_slice(explode('\\', $newStructure[$function]['fqcn']), -1)[0];
$newStructure[$function]['function'] = $split[1];
}
};
}
});
return $deprecatedFunctions;
return $newStructure;
}
/**
@ -214,11 +223,14 @@ class Typo3Update_Sniffs_Deprecated_GenericFunctionCallSniff implements PhpCsSni
protected function addWarning(PhpCsFile $phpcsFile, $tokenPosition)
{
$phpcsFile->addWarning(
'Legacy function calls are not allowed; found %s. %s. See: %s',
// TODO: Add a way to check for removed or deprecated.
'Legacy function calls are not allowed; found %s. Removed in %s. %s. See: %s',
$tokenPosition,
$this->getFunctionIdentifier(),
[
$this->getOldfunctionCall(),
// TODO: Add a way to check for removed or deprecated.
$this->getRemovedVersion(),
$this->getNewFunctionCall(),
$this->getDocsUrl(),
]
@ -255,6 +267,18 @@ class Typo3Update_Sniffs_Deprecated_GenericFunctionCallSniff implements PhpCsSni
return $config['fqcn'] . $concat . $config['function'];
}
/**
* Returns TYPO3 version when the current function was removed.
*
* To let user decide whether this is important for him.
*
* @return string
*/
protected function getRemovedVersion()
{
return $this->getCurrentDeprecatedFunction()['version_removed'];
}
/**
* The new function call, or information how to migrate.
*