Feature: #90249 - New PSR-14 events for existing package-related Signal Slots 

See forge#90249

Description 

PSR-14-based event dispatching allows for TYPO3 extensions or PHP packages to extend TYPO3 Core functionality in an exchangeable way.

The following new PSR-14 events have been introduced:

  • \TYPO3\CMS\Core\Package\Event\PackagesMayHaveChangedEvent
  • \TYPO3\CMS\Core\Package\Event\AfterPackageActivationEvent
  • \TYPO3\CMS\Core\Package\Event\AfterPackageDeactivationEvent
  • \TYPO3\CMS\Core\Package\Event\BeforePackageActivationEvent
  • \TYPO3\CMS\Extensionmanager\Event\AfterExtensionDatabaseContentHasBeenImportedEvent
  • \TYPO3\CMS\Extensionmanager\Event\AfterExtensionStaticDatabaseContentHasBeenImportedEvent
  • \TYPO3\CMS\Extensionmanager\Event\AfterExtensionFilesHaveBeenImportedEvent
  • \TYPO3\CMS\Extensionmanager\Event\AvailableActionsForExtensionEvent

They replace the existing Extbase-based Signal Slots:

  • PackageManagement::packagesMayHaveChanged
  • TYPO3\CMS\Extensionmanager\Utility\InstallUtility::afterExtensionInstall
  • TYPO3\CMS\Extensionmanager\Utility\InstallUtility::afterExtensionUninstall
  • TYPO3\CMS\Extensionmanager\Utility\InstallUtility::afterExtensionT3DImport
  • TYPO3\CMS\Extensionmanager\Utility\InstallUtility::afterExtensionStaticSqlImport
  • TYPO3\CMS\Extensionmanager\Utility\InstallUtility::afterExtensionFileImport
  • TYPO3\CMS\Extensionmanager\Service\ExtensionManagementService::willInstallExtensions
  • TYPO3\CMS\Extensionmanager\ViewHelper\ProcessAvailableActionsViewHelper::processActions

Impact 

It is now possible to add listeners to the new PSR-14 Events which define a clear API what can be read or modified.

The listeners can be added to the Configuration/Services.yaml as it is done in TYPO3's shipped extensions as well.