ChangeLog v11
Every change to the TYPO3 Core which might affect your site is documented here.
-
11.5.x Changes
- Deprecation: #95800 - Deprecate generating public URL for private asset files
- Important: #100889 - Allow insecure site resolution by query parameters
- Important: #102799 - TYPO3_CONF_VARS.GFX.processor_stripColorProfileParameters option added
- Important: #102800 - File Abstraction Layer enforces absolute paths to match project root or lockRootPath
- Important: #103306 - Frame GET parameter in tx_cms_showpic eID disabled
- Important: #92020 - New API entry point available at https://get.typo3.org/api/
- Important: #93635 - Add mail configuration for setting smtp domain
- Important: #94951 - Restrict export functionality to allowed users
- Important: #96332 - Extbase Validators can use dependency injection
- Important: #97111 - Default URI scheme
- Important: #97950 - New "iconIdentifier" option in login providers
- Important: #98122 - Fix felogin variable name in TypoScript setup
- Important: #98960 - Default type definition of custom Content Types
-
11.5 Changes
- Feature: #94868 - Introduce Bootstrap 5 compatible and accessible templates
- Feature: #95176 - Introduce <f:transform.html> view helper
- Feature: #95364 - Event to modify frontend user groups without authentication
- Deprecation: #91787 - Inline JavaScript in fieldChangeFunc
- Deprecation: #91814 - AbstractControl::setOnClick
- Deprecation: #94094 - navigationFrameModule in Module Registration
- Deprecation: #94791 - GeneralUtility::minifyJavaScript()
- Deprecation: #95041 - <f:uri.email> view-helper
- Deprecation: #95139 - Extbase ControllerContext
- Deprecation: #95164 - ext:backend BackendTemplateView
- Deprecation: #95200 - RequireJS callbacks as inline JavaScript
- Deprecation: #95219 - TypoScriptFrontendController->ATagParams
- Deprecation: #95222 - Extbase ViewInterface
- Deprecation: #95235 - Public getter of services in ModuleTemplate
- Deprecation: #95254 - Two FlexFormTools methods
- Deprecation: #95257 - GeneralUtility::isFirstPartOfStr()
- Deprecation: #95261 - Public methods in SectionMarkupGenerated events
- Deprecation: #95275 - RelationHandler->remapMM()
- Deprecation: #95293 - StringUtility::beginsWith() and StringUtility::endsWith()
- Deprecation: #95317 - Legacy syntax for IRRE localize synchronize command in DataHandler
- Deprecation: #95318 - TypoScript parseFunc.sword
- Deprecation: #95320 - Various method arguments in Authentication objects
- Deprecation: #95322 - Legacy Element Browser logic
- Deprecation: #95326 - Various "getInstance()" static methods on singleton interfaces
- Deprecation: #95343 - Legacy hook for new content element wizard
- Deprecation: #95349 - TypoScript: page.includeCSS/includeCSSLibs.import
- Deprecation: #95351 - Custom JSWindow options in HMENU settings
- Deprecation: #95367 - GeneralUtility::isAbsPath()
- Deprecation: #95395 - GeneralUtility::isAllowedHostHeaderValue() and TRUSTED_HOSTS_PATTERN constants
- Important: #95261 - New public methods in SectionMarkupGenerated events
- Important: #95298 - Fluid ViewHelpers will be declared final in v12
- Important: #95384 - TCA internal_type=db optional for type=group
-
11.4 Changes
- Feature: #71775 - HtmlParser allows srcset
- Feature: #84115 - Doctrine DBAL - notInSet() for expressions
- Feature: #84184 - Show columns selection in filelist
- Feature: #84718 - Add CLI export command to EXT:impexp
- Feature: #90197 - Introduce cache:flush console command
- Feature: #90336 - CKEditor Autolinking uses https by default
- Feature: #90347 - Enable recursive transformation of properties in JsonView
- Feature: #90548 - Download multiple files and folders in filelist
- Feature: #91021 - Filter by stage in Workspaces Module
- Feature: #92460 - Split default from all languages in page module
- Feature: #93197 - Resolve collection types of non-persistent objects
- Feature: #93436 - Introduce cache:warmup console command
- Feature: #94402 - Generate error pages via TYPO3-internal sub-request
- Feature: #94406 - Override fileFolder TCA configuration with TSconfig
- Feature: #94489 - Filter for redirects never hit
- Feature: #94577 - Clear indexed_search documents when content is changed
- Feature: #94590 - Allow icon identifiers in report module registration
- Feature: #94622 - New TCA type "category"
- Feature: #94623 - tt_content images, assets, media showPossibleLocalizationRecords
- Feature: #94653 - Autocomplete attribute for PasswordViewHelper
- Feature: #94662 - Add placeholder for site configuration in foreign_table_where
- Feature: #94680 - Show columns selector filter
- Feature: #94692 - Registering Icons via Service Container
- Feature: #94741 - Register SoftReference parsers via DI
- Feature: #94765 - Introduce showNewRecordLink option
- Feature: #94819 - Improved Workspaces module
- Feature: #94889 - Add "result" option to typolink returnLast parameter
- Feature: #94906 - Multi record selection in filelist
- Feature: #94944 - Keyboard shortcuts for multi record selection
- Feature: #94966 - Show debugger in Application Information
- Feature: #94996 - Consider all Composer installed extensions as active
- Feature: #95034 - List views: Select a row by clicking on it
- Feature: #95035 - "Collapse all" for large trees
- Feature: #95037 - New startingPoints setting for FormEngine treeConfig
- Feature: #95044 - Support autowired LoggerInterface injection
- Feature: #95061 - Auto creation of MM tables from TCA
- Feature: #95065 - New PSR-14 BootCompletedEvent
- Feature: #95068 - Multi record selection in recordlist
- Feature: #95077 - New PSR-14 ProcessFileListActionsEvent
- Feature: #95079 - Support PHP 8 style Channel attribute for logger injection
- Feature: #95077 - New PSR-14 ModifyFileDumpEvent
- Feature: #95083 - New PSR-14 ModifyClearCacheActionsEvent
- Feature: #95089 - New PSR-14 AfterFileCommandProcessedEvent
- Feature: #95105 - New PSR-14 DatabaseRecordList events
- Deprecation: #85613 - Category Registry
- Deprecation: #94619 - Extbase ObjectManager
- Deprecation: #94654 - Generic Extbase domain classes
- Deprecation: #94664 - Pdo cache backend
- Deprecation: #94665 - Wincache cache backend
- Deprecation: #94684 - GeneralUtility::shortMD5()
- Deprecation: #94687 - Deprecate SoftReferenceIndex
- Deprecation: #94741 - Register SoftReference parsers via DI
- Deprecation: #94762 - Deprecate JavaScript top.fsMod state
- Deprecation: #94902 - Deprecate lowerCamelCase options of EXT:impexp commands
- Deprecation: #94953 - Edit panel related frontend functionality
- Deprecation: #94956 - Public $cObj
- Deprecation: #94957 - TypoScriptFrontendController->cObjectDepthCounter
- Deprecation: #94958 - ContentObjectRenderer properties
- Deprecation: #94959 - ContentObjectRenderer constructor in StandaloneView
- Deprecation: #94979 - Using CacheManager or Database Connections during TYPO3 bootstrap
- Deprecation: #94991 - Extbase AbstractView
- Deprecation: #94996 - In Composer Mode, all Extensions should be installed with Composer
- Deprecation: #95003 - Extbase ViewInterface canRender()
- Deprecation: #95005 - Extbase EmptyView
- Deprecation: #95009 - Passing TypoScript configuration as constructor argument to Exception handler
- Deprecation: #95011 - Various global JavaScript functions and variables
- Deprecation: #95037 - rootUid related setting of trees
- Deprecation: #95062 - $skipSorting argument of RelationHandler->writeForeignField()
- Deprecation: #95065 - Hook extTablesInclusion-PostProcessing
- Deprecation: #95077 - Filelist editIconsHook
- Deprecation: #95077 - FileDump CheckFileAccess hook
- Deprecation: #95083 - Backend toolbar CacheActions hook
- Deprecation: #95089 - ExtendedFileUtility ProcessData hook
- Deprecation: #95105 - DatabaseRecordList hooks
- Important: #90264 - Initialize datepicker JS in external file
- Important: #92202 - Remove exclude from important fields
- Important: #94280 - Move contents of ext_*.php into global namespace
- Important: #94615 - Fluid view helpers f:link.external and f:uri.external use https by default
- Important: #94697 - Quote database identifiers when used instead of globally upfront
- Important: #94830 - Update egulias/email-validator
- Important: #94876 - Remove "Non-XML text" validator from form editor
- Important: #94889 - AbstractTypoLinkBuilder::build now returns array|LinkResultInterface
- Important: #95647 - Composer installations and extension usage
-
11.3 Changes
- Feature: #89507 - Add description for TCA palettes
- Feature: #89700 - Show layouts in the Web Info module
- Feature: #92358 - Add getModuleTemplate() to PageLayoutController
- Feature: #92518 - Download and filename options added to FileDumpController
- Feature: #92518 - Introduce FileViewHelper
- Feature: #93114 - Native support for language Shona (Bantu) added
- Feature: #93210 - Possibility to refresh dashboard widgets
- Feature: #93631 - Support for PHP 8.0
- Feature: #93668 - Possibility to configure Symfony mailer
- Feature: #93825 - Rate limiting for failed logins
- Feature: #93835 - AddErrorForProperty function for AbstractValidator
- Feature: #93921 - Sharing backend links
- Feature: #94081 - TCA readOnly for t3editor
- Feature: #94143 - Display creation date of redirects
- Feature: #94206 - Add excludePagesRecursive option to XML sitemap generation
- Feature: #94210 - Information about inherited backend layout
- Feature: #94218 - Selectable columns per table in record list
- Feature: #94345 - Auto-detect event types
- Feature: #94374 - Create new filemount via the folder's context menu
- Feature: #94390 - Dropdown for record list and file list in favor of Extended View
- Feature: #94411 - Record list download settings
- Feature: #94428 - Extbase Request implements ServerRequestInterface
- Feature: #94447 - Native support for language Welsh added
- Feature: #94452 - Improved multi-selection in file selection
- Feature: #94474 - Improved show columns selection in record list
- Feature: #94524 - Edit metadata for a file via the context menu
- Deprecation: #91806 - BackendUtility viewOnClick
- Deprecation: #94058 - JavaScript goToModule()
- Deprecation: #94115 - Parameter type evaluation via DocBlock comments
- Deprecation: #94137 - Switch behavior of ArrayUtility::arrayDiffAssocRecursive()
- Deprecation: #94165 - sys_language table
- Deprecation: #94193 - Public URLs with relative paths in FAL API
- Deprecation: #94209 - Backend ModuleLayout ViewHelpers
- Deprecation: #94223 - Extbase Request->getBaseUri()
- Deprecation: #94225 - f:be.container ViewHelper
- Deprecation: #94227 - f:base ViewHelper
- Deprecation: #94228 - Extbase request getRequestUri()
- Deprecation: #94231 - Extbase InvalidRequestMethodException
- Deprecation: #94252 - GeneralUtility::compileSelectedGetVarsFromArray
- Deprecation: #94272 - Application->run callback
- Deprecation: #94309 - GeneralUtility::stdAuthCode
- Deprecation: #94311 - GeneralUtility::rmFromList
- Deprecation: #94313 - AbstractService class
- Deprecation: #94316 - HTTP header manipulating methods from HttpUtility
- Deprecation: #94317 - ext:form Finisher implementations
- Deprecation: #94351 - ext:extbase StopActionException
- Deprecation: #94367 - Extbase ReferringRequest
- Deprecation: #94377 - Extbase ObjectManager->getEmptyObject
- Deprecation: #94394 - Extbase Request setDispatched() and isDispatched()
- Deprecation: #94414 - LanguageService container entry
- Important: #91496 - Changes to password reset functionality
- Important: #94312 - Removed BE/loginSecurityLevel and FE/loginSecurityLevel options
- Important: #94315 - Use proper PSR-3 logging messages and context
-
11.2 Changes
- Feature: #57082 - New TCA type "language"
- Feature: #73176 - Filterable Trees in Record Selectors and Link Pickers
- Feature: #89762 - Add pagination for FormManagement
- Feature: #93188 - Possibility to disable hreflang per page
- Feature: #93209 - FAL: Add getFile() to TYPO3\CMS\Core\Resource\Folder
- Feature: #93591 - Allow group id lookup in conditions with array operator
- Feature: #93606 - Possibility to disable canonical per page
- Feature: #93651 - Provide list of available system locales
- Feature: #93663 - Backend user's preferred UI language stored as DB field
- Feature: #93794 - Override TCA description with TSconfig
- Feature: #93857 - Resizable navigation component for all element / record selectors
- Feature: #93908 - Add decoding attribute to images
- Feature: #93988 - Backend module URLs reflect into browser address bar
- Deprecation: #92494 - Extbase EnvironmentService
- Deprecation: #92992 - Hook t3lib_parsehtml_proc.php:transformation
- Deprecation: #93726 - Deprecated TypoScriptParser related properties
- Deprecation: #93837 - special property of TCA type select
- Deprecation: #93899 - FormEngine's requestConfirmationOnFieldChange
- Deprecation: #93944 - File Tree as iframe migrated to SVG-based tree
- Deprecation: #93975 - TBE_EDITOR.fieldChanged()
- Important: #93398 - Possibility to ignore submitted values in HiddenViewHelper
-
11.1 Changes
- Feature: #78036 - Synchronize folder relations after rename
- Feature: #78760 - Resizable Navigation Component
- Feature: #89509 - Data Processor to resolve FlexForm data
- Feature: #92338 - Allow link text wrapping in TypolinkViewhelper
- Feature: #92628 - Add Alt-Text To Login Logo
- Feature: #92704 - Improve keyboard navigation for module menus
- Feature: #92942 - Allow icon overlay for newContentElementWizard elements
- Feature: #93117 - Add reset button to Backend User module filter
- Feature: #93174 - Lazy console command list
- Feature: #93426 - SVG-based Tree for Folder Navigation with Filter
- Feature: #93455 - Backend Routes restricted to specified HTTP methods
- Feature: #93526 - Multi-Factor Authentication
- Deprecation: #92628 - Login Logo without Alt-Text
- Deprecation: #93149 - T3Editor JavaScript module replaced by CodeMirrorElement
- Deprecation: #93454 - Rename Sortable to sortablejs
- Deprecation: #93506 - jQuery in tooltips
-
11.0 Changes
- Breaking: #23736 - Page Language detection set earlier in Frontend Request Process
- Breaking: #29342 - Fluid Email Template for ValidatorTask
- Breaking: #45512 - No type attributes for style and link tags
- Breaking: #79565 - Removed "usergroup_cached_list" database field
- Breaking: #89137 - Database fields t3ver_tstamp and t3ver_count removed
- Breaking: #90799 - Dependency injection with non-public properties has been removed
- Breaking: #91473 - Deprecated functionality removed
- Breaking: #91562 - cObject TEMPLATE removed
- Breaking: #91563 - PHP-based JS + CSS inclusions for Frontend removed
- Breaking: #91578 - IRRE related JavaScript has been removed
- Breaking: #91606 - Date/time operations in FormEngine removed
- Breaking: #91740 - Deprecated icon identifier removed
- Breaking: #91782 - lockToDomain feature for frontend users / groups and backend users / groups removed
- Breaking: #91906 - Store TransOrigDiffSourceField as json string
- Breaking: #91909 - sys_collection database tables moved into external extension
- Breaking: #91974 - Configuration Option IPmaskMountGroups removed
- Breaking: #92060 - Dropped class TYPO3\CMS\Backend\View\PageTreeView
- Breaking: #92118 - TCA ctrl thumbnail setting dropped
- Breaking: #92128 - DatabaseRecordList: Drop hook to modify searchFields
- Breaking: #92132 - Last remains of globals SOBE removed
- Breaking: #92206 - Remove workspace swapping of elements
- Breaking: #92238 - Service injection in Extbase validators
- Breaking: #92289 - Decouple logic of ResourceFactory into StorageRepository
- Breaking: #92352 - New default position for redirect middleware
- Breaking: #92457 - Extension Repository database table removed
- Breaking: #92497 - Workspaces: Move Placeholders removed
- Breaking: #92499 - AdminPanel does not preview hidden Frontend User Groups
- Breaking: #92502 - Make Extbase handle PSR-7 responses only
- Breaking: #92513 - Method signature change of TYPO3\CMS\Extbase\Mvc\Controller\ControllerInterface::processRequest
- Breaking: #92529 - All Fluid widget functionality removed
- Breaking: #92532 - Support for extension-in-extension installation in Extension Manager removed
- Breaking: #92558 - Database Field be_users.createdByAction removed
- Breaking: #92559 - Removed per-user IP locking for backend users
- Breaking: #92560 - Backend editors can always delete pages recursive
- Breaking: #92582 - Resizable text area user setting dropped
- Breaking: #92590 - Removed support for extension upload of t3x files
- Breaking: #92598 - Workspace-overlays auto-fix the PID value for moved records
- Breaking: #92609 - Use controller classes when registering plugins/modules
- Breaking: #92678 - CSS class checkbox-invert removed
- Breaking: #92693 - Remove LinkHandler Linktype in Linkvalidator
- Breaking: #92791 - "New Placeholder" records removed in Workspaces
- Breaking: #92801 - Removed "Failed Login" functionality from User Authentication object
- Breaking: #92802 - User-database-based authentication timeout field removed
- Breaking: #92807 - Removed feature for keeping session data on frontend user logout
- Breaking: #92837 - Removed setting mod.web_layout.disableAdvanced
- Breaking: #92838 - Additional workspace services dropped
- Breaking: #92853 - Method canProcessRequest has been removed
- Breaking: #92940 - Global option "lockBeUserToDBmounts" removed
- Breaking: #92941 - "lockToIP" UserTsConfig option removed
- Breaking: #92989 - AbstractUserAuthentication->loginFailure removed
- Breaking: #92990 - AbstractUserAuthentication->svConfig removed
- Breaking: #92993 - Generic search statistics from indexed search removed
- Breaking: #92997 - Authentication-related HTTP cache headers are emitted only by PSR-15 middlewares
- Breaking: #93002 - Support for session transfer via FE_SESSION_KEY removed
- Breaking: #93003 - PageRenderer renders only full page
- Breaking: #93023 - Reworked session handling
- Breaking: #93029 - Dropped deleted field from sys_refindex
- Breaking: #93041 - Remove TypoScript option addQueryString.method
- Breaking: #93047 - Removed property sendNoCacheHeaders in AbstractUserAuthentication
- Breaking: #93048 - Backend URL rewrites
- Breaking: #93056 - Removed hooks when retrieving Backend user groups
- Breaking: #93062 - Various group-related public properties in BE_USER removed
- Breaking: #93073 - AbstractUserAuthentication->forceSetCookie removed
- Breaking: #93077 - Removed unneeded configurations in PageLayoutView
- Breaking: #93080 - RelationHandler internals protected
- Breaking: #93081 - Removed fetching translation file mirror from typo3.org
- Breaking: #93083 - class.ext_update.php handling removed
- Breaking: #93093 - Rework Shortcut PHP API
- Breaking: #93108 - Reworked internal user group fetching for frontend users
- Breaking: #93110 - Indexed search does not provide hook for EXT:crawler anymore
- Breaking: #94861 - Deprecated form mixins removed
- Feature: #29342 - Improve ValidatorTask
- Feature: #83814 - Add system notes creation button to modules button bar
- Feature: #87301 - Secure cookies enabled by default
- Feature: #88276 - TypoScript Condition for page layout
- Feature: #89496: Make context menu usable via keyboard
- Feature: #91712 - Cleanup scheduler task and CLI command for redirects
- Feature: #91719 - Custom error messages in RegularExpressionValidator
- Feature: #91738 - Introduce wrapper for sessionStorage
- Feature: #91810 - Introduce lit-html and lit-element as client-side templating engine
- Feature: #91859 - Allow SelectCheckBox groups to be initially expanded
- Feature: #91890 - Allow ordering of displayed columns in redirects overview
- Feature: #92022 - Show week numbers in DateTimePicker for editors
- Feature: #92334 - X-Redirect-By Header for pages with redirect types
- Feature: #92337 - Allow translatable labels for bookmark groups
- Feature: #92366 - Show fragments in preview of InputLinkElement
- Feature: #92423 - Enable placeholder config for ckeditor
- Feature: #92457 - Improved Extension Repository API
- Feature: #92462 - Add optional "defaultValues" argument to newRecord ViewHelpers
- Feature: #92486 - Add field control to file_collections of tt_content
- Feature: #92522 - Show table and field names in ext:lowlevel
- Feature: #92531 - Improved Email Validation
- Feature: #92538 - Show extension constraints in extension manager
- Feature: #92562 - Frontend groups resolved directly after the Frontend User itself
- Feature: #92616 - Bootstrap v5
- Feature: #92815 - Introduce ForwardResponse for extbase
- Feature: #92884 - Applications implement PSR-15 RequestHandlerInterface
- Feature: #92929 - Extendable configuration module
- Feature: #92984 - PSR-7 Request available in Frontend ContentObjects
- Feature: #93011 - Authentication-related cookies are attached to PSR-7 Responses
- Feature: #93023 - Introduce UserSession and UserSessionManager
- Feature: #93048 - Introduce Backend URL rewrites
- Feature: #93056 - New Event after retrieving user groups recursively
- Feature: #93063 - FlashMessages are stored in session as JsonSerializable
- Deprecation: #89938 - Language mode in Typo3QuerySettings
- Deprecation: #91606 - Global Datetime Picker initialization
- Deprecation: #91911 - optionEl of type jQuery in FormEngine.setSelectOptionFromExternalSource
- Deprecation: #92062 - Migrate RecordListController hooks to PSR-14 event
- Deprecation: #92080 - QueryGenerator and QueryView
- Deprecation: #92132 - Shortcut PHP API
- Deprecation: #92132 - ViewHelper f:be.buttons.shortcut
- Deprecation: #92386 - Extbase property injection
- Deprecation: #92435 - StandaloneView for EmailFinisher
- Deprecation: #92551 - GeneralUtility methods related to pages.l18n_cfg behavior
- Deprecation: #92583 - 3 last arguments of wrapClickMenuOnIcon()
- Deprecation: #92598 - Workspace-related methods "fixVersioningPid"
- Deprecation: #92607 - GeneralUtility::uniqueList
- Deprecation: #92784 - Extbase controller actions must return ResponseInterface
- Deprecation: #92815 - ActionController::forward()
- Deprecation: #92922 - Use of record uid in AbstractTreeView::getIcon()
- Deprecation: #92947 - TYPO3_MODE and TYPO3_REQUESTTYPE constants
- Deprecation: #93023 - Reworked session handling
- Deprecation: #93038 - ReferenceIndex runtime cache
- Deprecation: #93060 - Shortcut title must be set by controllers
- Deprecation: #93093 - MethodName in Shortcut PHP API
- Important: #89938 - Removed dead code from Extbase persistence
- Important: #91123 - Avoid using BackendUtility::viewOnClick
- Important: #91888 - System extension "about" merged into "backend" system extension
- Important: #91953 - jQuery updated to 3.5.x
- Important: #92736 - Return timestamp as integer in DateTimeAspect
- Important: #92870 - Always use Fluid based page module
- Important: #92996 - Properties and methods in ActionController marked internal
- Important: #93121 - Workspace records are discarded