9.4 Changes
Table of contents
Breaking Changes
Features
- Feature: #13265 - Select first element of PageTree toolbar on initialization
- Feature: #44297 - Interval presets for cron command of scheduler task
- Feature: #57331 - Support dash in CurrencyViewHelper
- Feature: #75806 - Add hreflang support
- Feature: #83476 - Load merged JS files asynchronous
- Feature: #83749 - Filtering and Pagination in the redirects module
- Feature: #84133 - Introduce variants
- Feature: #84525 - XML Sitemap
- Feature: #84584 - Re-Design the admin panel
- Feature: #84606 - Add Log Module to AdminPanel
- Feature: #84609 - Add SQL Log Module to AdminPanel
- Feature: #84704 - Open specific field when fixing links in Linkvalidator
- Feature: #84729 - New TCA type "slug"
- Feature: #85080 - Add property to disable form elements and finishers
- Feature: #85146 - Read environment variables in TypoScript
- Feature: #85164 - Available languages respects site configuration settings
- Feature: #85164 - Enable Languages on a per-site basis
- Feature: #85236 - Infix option to default log file names for FileWriter
- Feature: #85247 - Trait to detect public deprecated methods
- Feature: #85256 - Install TYPO3 on SQLite
- Feature: #85313 - Add notes field to pages table
- Feature: #85355 - Support basic HTML5 fields in FormEngine
- Feature: #85389 - Context API for consistent data handling
- Feature: #85410 - Allow TCA description property
- Feature: #85550 - Introduce context for TypoScript data getText property
- Feature: #85590 - Add hooks for DatabaseRecordList CSV actions
- Feature: #85678 - Add PageTitle API
- Feature: #85691 - Show page path for references in record info
- Feature: #85698 - New type=input eval saltedPassword
- Feature: #85719 - Allow sites without scheme or domain
- Feature: #85828 - Move symfony expression language handling into EXT:core
- Feature: #85829 - Implement symfony expression language for TypoScript conditions
- Feature: #85894 - Feature toggles in Admin Tools Settings
- Feature: #85900 - Pseudo Site Handling
- Feature: #85928 - Upgrade wizard to migrate pages to speaking URLs
- Feature: #85947 - Page based URL handling
- Feature: #85991 - Exclude Symfony Commands from Scheduler
- Feature: #86001 - Regular Workspace cleanup tasks available via CLI commands
- Feature: #86003 - Composition based API for the Adminpanel
- Feature: #86051 - Show extensions via CLI
- Feature: #86057 - Improved typolink / URL link generation
- Feature: #86066 - CLI Commands for listing and showing sites
- Feature: #86076 - New API for UpgradeWizards
Deprecation
- Deprecation: #65578 - config.concatenateJsAndCss and concatenateFiles
- Deprecation: #81430 - TypoScriptTemplateModuleController::renderList
- Deprecation: #83750 - Adapt TCA signature for customControls
- Deprecation: #84133 - Deprecate _isHiddenFormElement and _isReadOnlyFormElement
- Deprecation: #84375 - Protected methods and properties in PageLayoutController
- Deprecation: #84387 - Deprecated method and property in SchedulerModuleController
- Deprecation: #84414 - BackendUtility::shortcutExists
- Deprecation: #84584 - AdminPanelView: isAdminModuleEnabled and ext_makeToolbar deprecated
- Deprecation: #85004 - Deprecate methods in ReflectionService
- Deprecation: #85164 - Language related methods
- Deprecation: #85196 - Protect SetupModuleController
- Deprecation: #85285 - Deprecated path related constants
- Deprecation: #85300 - DataHandler resorting method
- Deprecation: #85389 - Various public properties in favor of Context API
- Deprecation: #85394 - Class CoreDatabasePdoHelper deprecated
- Deprecation: #85408 - TemplateService init() deprecated
- Deprecation: #85445 - TemplateService->getFileName
- Deprecation: #85451 - ContentObjectRenderer->calcIntExplode() deprecated
- Deprecation: #85462 - Signal 'hasInstalledExtensions'
- Deprecation: #85462 - Signal 'tablesDefinitionIsBeingBuilt'
- Deprecation: #85543 - Language-related properties in TypoScriptFrontendController and PageRepository
- Deprecation: #85553 - PageRepository language-related methods use null as default value
- Deprecation: #85554 - PageRepository->checkWorkspaceAccess
- Deprecation: #85555 - TypoScriptFrontendController->getUniqueId
- Deprecation: #85556 - PageRepository->versioningWorkspaceId
- Deprecation: #85557 - PageRepository->getRootLine
- Deprecation: #85558 - ContentObjectRenderer->enableFields
- Deprecation: #85646 - Deprecate eID implemented as script
- Deprecation: #85666 - TypoScriptFrontendController->initTemplate
- Deprecation: #85678 - config.titleTagFunction
- Deprecation: #85678 - $GLOBALS['TSFE']->altPageTitle
- Deprecation: #85687 - Deprecate RuntimeCacheWriter
- Deprecation: #85699 - Various methods in PageRepository
- Deprecation: #85701 - Various methods in ModuleTemplate
- Deprecation: #85707 - LoginFramesetController
- Deprecation: #85727 - DatabaseIntegrityCheck moved to EXT:lowlevel
- Deprecation: #85735 - Various method and property in DocumentTemplate
- Deprecation: #85759 - GeneralUtility::getHostName
- Deprecation: #85760 - GeneralUtility::unQuoteFilenames
- Deprecation: #85761 - SaltedPasswordService
- Deprecation: #85793 - Several constants from SystemEnvironmentBuilder
- Deprecation: #85796 - Salted passwords cleanups
- Deprecation: #85801 - GeneralUtility::explodeUrl2Array - 2nd method argument
- Deprecation: #85802 - Move FlexFormService from EXT:extbase to EXT:core
- Deprecation: #85804 - Salted password hash class deprecations
- Deprecation: #85806 - Second argument of PageRenderer::addInlineLanguageLabelArray
- Deprecation: #85807 - EnvironmentService::isEnvironmentInCliMode
- Deprecation: #85821 - bootstrap methods
- Deprecation: #85822 - Static class TYPO3\CMS\Frontend\Page\PageGenerator
- Deprecation: #85833 - Extension saltedpasswords merged into core extension
- Deprecation: #85836 - BackendUtility::getTCAtypes
- Deprecation: #85858 - GeneralUtility::clientInfo()
- Deprecation: #85878 - EidUtility and various TSFE methods
- Deprecation: #85892 - Various methods regarding sys_domain-resolving
- Deprecation: #85902 - IMGMENU/GMENU
- Deprecation: #85960 - AbstractUserAuthentication::compareUident and AbstractAuthenticationService->compareUident
- Deprecation: #85971 - PageRepository->getFirstWebPage
- Deprecation: #85977 - Extbase CLI functionality, Command Controllers and @cli Annotation
- Deprecation: #85978 - GraphicalFunctions->init
- Deprecation: #85996 - ExtensionManager CommandController
- Deprecation: #86001 - Workspaces tasks migrated to symfony commands
- Deprecation: #86002 - TSFE constructor with no_cache argument
- Deprecation: #86046 - Additional arguments in several TypoScriptFrontendController methods
- Deprecation: #86109 - Class UserStorageCapabilityService
Important
- Important: #84280 - Unit test suppressNotices removed
- Important: #85196 - Removed simulate user from user settings
- Important: #85393 - Extension Manager only imports extensions compatible with TYPO3 v7 LTS or higher
- Important: #85683 - Dropped salted passwords options
- Important: #85719 - PHP Packages: Symfony Components requirements raised to Symfony 4.1
- Important: #85833 - saltedpasswords extension merged into core extension