- 1 Breaking: #56746 - Add count methods and sort functionality to FAL drivers
- 2 Breaking: #60272 - Skip cache hash for URIs to non-cacheable actions
- 3 Breaking: #63784 - Visibility and type of DataHandler->exclude_array
- 4 Breaking: #64719 - Multimedia and Media cObjects and Content Types are moved to new system extension
- 5 Breaking: #65432 - Storage of module URI in global variable has been removed
- 6 Breaking: #65727 - Don't provide access to localPath of FAL files
- 7 Breaking: #65778 - MediaWizard functionality is moved to system extension "mediace"
- 8 Breaking: #65922 - Move unused tt_content TCA fields to compatibility6
- 9 Breaking: #65939 - Backend Login Refactoring
- 10 Breaking: #65962 - Third-party library "websvg" and the according API has been removed
- 11 Breaking: #66001 - Third-party libraries installed via composer are now in vendor
- 12 Breaking: #66034 - Drop Content Adapter
- 13 Breaking: #66286 - Page TSconfig options to hide Web Info modules renamed
- 14 Breaking: #66431 - New Login Screen
Breaking: #56746 - Add count methods and sort functionality to FAL drivers
To improve the performance of the file list when showing (remote) storages with a lot of files and folders the sorting and ordering needs to be done by the driver. Also the pagination of the file list can be improved by moving the counting to the driver instead of fetching all files and folders objects to count them.
Installations with custom FAL drivers will break after update.
TYPO3 CMS 7 installations using custom FAL drivers.
The custom FAL drivers need to be updated to be in line with the updated DriverInterface.
2 new functions need to be implemented:
2 functions need to be extended with the parameters $sort and $sortRev:
getFilesInFolder(..., $sort, $sortRev)
getFoldersInFolder(..., $sort, $sortRev)
Breaking: #60272 - Skip cache hash for URIs to non-cacheable actions
The cache hash (cHash) parameter is not added to action URIs if the current request is not cached and the target action is not cacheable.
Less cache entries are generated per page and not every action URI will have a cHash argument any more. It might be necessary to clear caches of extensions generating human readable URLs like RealURL.
Extbase extensions that generate links from uncached actions/pages to not cacheable actions.
Breaking: #63784 - Visibility and type of DataHandler->exclude_array
The internal but formerly public property DataHandler->exclude_array is replaced by the protected property DataHandler->excludedTablesAndFields, which contains the combination of excluded table and field as key instead. This improves performance especially for bulk editing since many in_array()-checks can be avoided.
Extensions using the DataHandler (former TCEMain) and changing the (former public) exclude_array to change access to tables and fields cannot do so anymore. Users need to have their access-rights set properly instead.
Installations using extensions that read or write the undocumented array exclude_array.
Remove code accessing DataHandler->exclude_array and configure the BE-User properly.
Breaking: #64719 - Multimedia and Media cObjects and Content Types are moved to new system extension
The Content Element Types "media" and "multimedia" have been extracted into one single place, which is an extension called "mediace". This extension is not installed by default but is shipped with the core.
The following Content Objects are not available anymore by default:
The Content Types "media" and "multimedia" are not available anymore by default.
The table column
tt_content.multimedia is not available anymore by default.
Any TypoScript using any of the cObjects directly or Content Elements with the CType "media" or "multimedia" will result in no output. Existing Content Elements of this type cannot be edited anymore.
TYPO3 CMS 7 installations still using any of the cObjects or having Content Elements of CType "media" or "multimedia".
Install the system extension "mediace" to regain all functionality as it was before.
Breaking: #65432 - Storage of module URI in global variable has been removed
Previously the URI to a module which was dispatched through mod.php was stored in a global variable
In terms of cleanup of global variable usage and module configuration cleanup and streamlining, this functionality has been removed without substitution.
Any backend module code which accesses
$GLOBALS['MCONF']['_'] to get the module URI will not work any more.
TYPO3 CMS 7 installations using extensions with backend modules which use
Extension code needs to be changed in a way that the API
BackendUtility::getModuleUrl('module_name') is used instead of accessing
Breaking: #65727 - Don't provide access to localPath of FAL files
It was possible to retrieve the local path of a FAL file via TypoScript
a = TEXT a.value.data = file:current:localPath
- The localPath property has been dropped for the following reasons
- ;* The implementation used allow write access to the file and hence created a local copy which created useless file garbage.
- Changing this to read-only access would cause the LocalDriver to return the true local path to the file, which would open the possibility to file manipulation via "side channel" of FAL. This would make the FAL data inconsistent.
Any TypoScript using this file-property will stop working.
Any installation with TypoScript using this file-property
There is no other possibility to retrieve this information. Use the FAL API.
Breaking: #65778 - MediaWizard functionality is moved to system extension "mediace"
The Media Wizard Provider for the "media" Content Element Type has been moved to the same system extension.
Any extensions registering their own Media Wizards need to install the system extension "mediace" and define a dependency to this extension.
TYPO3 CMS 7 installations using the "MEDIA" cObject or having Content Elements of CType "media" or "multimedia" with custom media wizard providers.
Make sure to install the system extension "mediace" and rename the function calls to use the new classes, see the file
ext_localconf.php of the extension "mediace" for example usage.
Breaking: #65922 - Move unused tt_content TCA fields to compatibility6
There are some database fields defined in 'frontend' which are not used by frontend or css_styled_content. These fields have been moved to compatibility6.
All installations with extensions installed depending on these fields. For instance installations still using css_styled_content static templates of the TYPO3 CMS 4.* versions.
Add the moved TCA and SQL definitions to your own extension or install the compatibility extension compatibility6. The latter is not recommended and should be considered a short-term solution.
Breaking: #65939 - Backend Login Refactoring
For the refactoring of the backend login we introduce Fluid as template engine and remove the old marker template.
It was necessary to remove the signal
LoginController::SIGNAL_RenderLoginForm which will no longer be emitted.
Additionally the following methods of
LoginController have been removed:
The mentioned methods are no longer available and a fatal error will be triggered if used.
All installations which make use of the
LoginController::SIGNAL_RenderLoginForm signal or use the removed methods: *
Use the introduced Fluid view to adapt the login screen to your demands.
Breaking: #65962 - Third-party library "websvg" and the according API has been removed
The third-party library "websvg" has been removed from the TYPO3 CMS Core. The according TypoScript options and the public methods within PageRenderer have been removed without substitution.
The following PHP methods within PageRenderer have been removed:
$pageRenderer->setSvgPath() $pageRenderer->getSvgPath() $pageRenderer->loadSvg() $pageRenderer->enableSvgDebug() $pageRenderer->svgForceFlash()
The following TypoScript options are removed:
Any installation using one of the methods above in an extension will fail.
Any installation using
TYPO3 CMS 7 installations using the TypoScript options, the SVG Content Object or the pageRenderer methods directly.
Affected installations should include the "websvg" library directly from the library owner, and in their setups.
Breaking: #66001 - Third-party libraries installed via composer are now in vendor
All composer-installed libraries which the TYPO3 Core uses are now installed under vendor (composer default vendor directory) when running
composer install. This way the packaging process for releasing TYPO3 CMS as tarball or zip can trigger a fully working installation without having to ship Packages/ for third-party libraries. Before composer installed all third-party libraries in the folder
Any existing installation that is set up via composer based on the composer.json of the TYPO3.CMS.git repository will break if Unit Tests or Functional Tests via
bin/phpunit will fail unless composer dependencies have been completely rebuilt.
Installations using a Packages/ directory within the typo3_src/ folder structure, most commonly by having checked out the TYPO3.CMS.git Repository and having run
composer install after that. Any installations using the common TYPO3 distribution from composer.typo3.org are not affected.
rm -rf vendor/ bin/ Packages/Libraries/ composer.lock; composer install will make PHPunit work again.
Breaking: #66034 - Drop Content Adapter
The TYPO3 configuration option [FE][activateContentAdapter] and the associated code has been dropped from the TYPO3 core. This option was used to transform FAL fields back to old file fields.
Any installation using TypoScript referring to old file columns as present before TYPO3 CMS 6.x will stop working as expected.
Change your TypoScript to use the new content object FILES to retrieve files.
Breaking: #66286 - Page TSconfig options to hide Web Info modules renamed
WEB > Info options in the function menu have new names in Page TSconfig properties to hide these modules
Page TSconfig options in
mod.web_info.menu.function use new class names.
Installation which have options in the Info module disabled by using Page TSconfig
The following properties under
mod.web_info.menu.function have to be renamed:
* tx_cms_webinfo_page -> TYPO3CMSFrontendControllerPageInformationController
- tx_cms_webinfo_lang -> TYPO3CMSFrontendControllerTranslationStatusController
- tx_belog_webinfo -> TYPO3CMSBelogModuleBackendLogModuleBootstrap
- tx_infopagetsconfig_webinfo -> TYPO3CMSInfoPagetsconfigControllerInfoPageTyposcriptConfigController
- tx_linkvalidator_ModFuncReport -> TYPO3CMSLinkvalidatorReportLinkValidatorReport
- tx_indexedsearch_modfunc1 : removed, indexed_search has its own module
- tx_indexedsearch_modfunc2 : removed, indexed_search has its own module
Breaking: #66431 - New Login Screen
To keep the focus on the most recent news, the news are reduced to a single view carousel where you can slide through the latest news.
A title for the news section is not needed anymore, in result $GLOBALS['TYPO3_CONF_VARS']['BE']['loginNewsTitle'] is superfluous and was removed completely without replacement.
The news section title has been dropped without replacement. There will be no alternative section title displayed.
Installations that used $GLOBALS['TYPO3_CONF_VARS']['BE']['loginNewsTitle'] to set an alternative section title for the news.
If an entry for BE/loginNewsTitle exists in your local configuration it will be removed by the SilentConfigurationUpgradeService automatically.