Skip to content
  • Markus Hoelzle's avatar
    [!!!][FEATURE] Move extension configuration to install tool · ebf0f1a7
    Markus Hoelzle authored and Benni Mack's avatar Benni Mack committed
    With #82254 LocalConfiguration serialized array EXT/extConf has been
    changed to a not serialized array in EXTENSIONS. This patch follows
    up on this task an finishes various tasks:
    
    * An install tool silent upgrader upmerges given EXT/extConf settings
      to EXTENSIONS array. The resulting EXTENSIONS array does not contain
      dots for sub paths in its array key anymore and is accessible with a
      new ExtensionConfiguration->get() API to fetch values and whole
      extension config.
    * A new API is introduced to get() and set() extension specific
      configuration, is documented and used throughout the core to not
      unserialize old EXT/extConf anymore. Setting values updates legacy
      EXT/extConf to new values including compatible 'dot' ending on
      nested array configurations.
    * If extensions come with new configuration items in ext_conf_template.txt
      a silent upgrader of the install tool synchronizes these to the
      EXTENSIONS and old extConf array. Extension authors can rely on that
      and always fetch new keys from the new ExtensionConfiguration->get()
      API right away. The synchronization is also triggered when new
      extensions are loaded or extensions are updated via the extension
      manager.
    * Core usages are adapted to the new API.
    * Next to the main get() / set() API, the extension configuration
      form is extracted from the extension manager and put into the install
      tool as a new card in "Settings". The code below is streamlined
      and encapsulated with just a couple of public methods in class
      'ExtensionConfigurationService' as internal class for use in install
      tool and extension manager.
    
    Resolves: #82368
    Related: #82254
    Releases: master
    Change-Id: I88568fa355f8f6fd5acc9850dcdd718fdd9a1b2e
    Reviewed-on: https://review.typo3.org/54034
    
    
    Tested-by: default avatarTYPO3com <no-reply@typo3.com>
    Reviewed-by: default avatarDaniel Gorges <daniel.gorges@b13.de>
    Tested-by: default avatarDaniel Gorges <daniel.gorges@b13.de>
    Reviewed-by: default avatarAndreas Fernandez <typo3@scripting-base.de>
    Reviewed-by: default avatarBenni Mack <benni@typo3.org>
    Tested-by: default avatarBenni Mack <benni@typo3.org>
    ebf0f1a7