1. 17 Nov, 2020 1 commit
  2. 04 Nov, 2020 1 commit
  3. 06 Oct, 2020 1 commit
  4. 25 Sep, 2020 1 commit
  5. 04 Sep, 2020 1 commit
  6. 22 Aug, 2020 1 commit
  7. 20 Jul, 2020 1 commit
  8. 28 Apr, 2020 1 commit
  9. 17 Apr, 2020 1 commit
    • Benjamin Franzke's avatar
      [TASK] Inject singletons used by EXT:install in service providers · c020e9ba
      Benjamin Franzke authored and Susanne Moog's avatar Susanne Moog committed
      This will allow both, dependency injection for these services (manually
      wired in service providers), and usage in install/maintenance tool
      (where we do not use the caching symfony container for basic tasks).
      
      The move to DI is possible thanks to the failsafe container and the
      service providers which can fed the failsafe container with service
      factories. These factories are used to wire services manually.
      
      Notes:
      
       * The definition in a service provider means we are required to use
         manual wiring and are forced to define the dependencies in the service
         provider when we add new depenencies to services that are being used
         by the install..
         With that approach we can assure that we do not accidentally add new
         dependencies to services which would become available in symfony DI due
         to autowiring, but would be unavailable in the install tool.
      
       * The install tool has operations that require a booted symfony
         container which is provided by the LateBootService. Services that
         are used in that mode do not need to be listed in service providers.
         Therefore we do only add core services to service providers if they
         are used in a context without a fully booted symfony DI container.
      
       * GLOBALS['LANG'] mocks in Core\Tests\Unit\DataHandling\DataHandlerTest
         have been removed as the code under test does no longer use
         $GLOBALS['LANG']->csConvObj->substr() but mb_substr. The test had been
         introduced with #68602 but the tested code was adapted in #78670.
      
       * We got a bit ugly constructs now, where a unit(!) test previously used
      
           $GLOBALS['LANG'] = new LanguageService();
      
         …we now have to encode the dependency structure:
      
           $GLOBALS['LANG'] = new LanguageService(new Locales,
               new LocalizationFactory(
                   new LanguageStore,
                   $cacheManagerProphecy->reveal()
               )
           );
      
         This isn't nice, but this change reveals that the affected unit tests
         should either be adapted, removed or be moved to a functional test.
         Such adaption are out of scope for this change.
      
       * loadExtLocalconfDatabaseAndExtTables() is removed from the
         EXT:install AbstractController, as it hides the implicit dependency
         to LateBootService
      
       * Nullable constructor arguments have been changed to be non-nullable
         whenever possible. That results in some more test adaptions, but
         reveals, where unit tests rely on implicit dependencies and offers
         better readability and less possible codepaths.
      
      Releases: master
      Resolves: #89892
      Resolves: #89891
      Change-Id: Ib72d6440f81b2c0d05279e8768697c3b48aecfe4
      Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/62575
      
      Tested-by: default avatarTYPO3com <noreply@typo3.com>
      Tested-by: Andreas Fernandez's avatarAndreas Fernandez <a.fernandez@scripting-base.de>
      Tested-by: Susanne Moog's avatarSusanne Moog <look@susi.dev>
      Reviewed-by: Andreas Fernandez's avatarAndreas Fernandez <a.fernandez@scripting-base.de>
      Reviewed-by: Susanne Moog's avatarSusanne Moog <look@susi.dev>
      c020e9ba
  10. 15 Apr, 2020 1 commit
  11. 14 Apr, 2020 1 commit
  12. 13 Apr, 2020 1 commit
  13. 08 Mar, 2020 1 commit
  14. 28 Feb, 2020 1 commit
  15. 15 Feb, 2020 1 commit
  16. 09 Jan, 2020 1 commit
  17. 30 Dec, 2019 1 commit
  18. 27 Dec, 2019 1 commit
  19. 18 Dec, 2019 1 commit
  20. 27 Nov, 2019 1 commit
  21. 22 Nov, 2019 1 commit
    • Benni Mack's avatar
      [FEATURE] Migrate various Signal Slots to PSR-14 events · b9d67bc7
      Benni Mack authored and Daniel Goerz's avatar Daniel Goerz committed
      This change migrates existing Extbase Signal Slots in EXT:core
      to the new PSR-14 events, which allow to define a proper API
      for each event fired.
      
      The following new Events are in place:
      - TYPO3\CMS\Core\Imaging\Event\ModifyIconForResourcePropertiesEvent
      - TYPO3\CMS\Core\DataHandling\Event\IsTableExcludedFromReferenceIndexEvent
      - TYPO3\CMS\Core\DataHandling\Event\AppendLinkHandlerElementsEvent
      - TYPO3\CMS\Core\Configuration\Event\AfterTcaCompilationEvent
      - TYPO3\CMS\Core\Database\Event\AlterTableDefinitionStatementsEvent
      - TYPO3\CMS\Core\Tree\Event\ModifyTreeDataEvent
      
      The following signals are now deprecated:
      - TYPO3\CMS\Core\Imaging\IconFactory::buildIconForResourceSignal
      - TYPO3\CMS\Core\Database\SoftReferenceIndex::setTypoLinkPartsElement
      - TYPO3\CMS\Core\Database\ReferenceIndex::shouldExcludeTableFromReferenceIndex
      - TYPO3\CMS\Core\Utility\ExtensionManagementUtility::tcaIsBeingBuilt
      - TYPO3\CMS\Install\Service\SqlExpectedSchemaService::tablesDefinitionIsBeingBuilt
      - TYPO3\CMS\Core\Tree\TableConfiguration\DatabaseTreeDataProvider::PostProcessTreeData
      
      Resolves: #89733
      Releases: master
      Change-Id: I0747c1de3b77a6be2870d87a054522a7df2fdb18
      Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/62331
      
      Tested-by: default avatarTYPO3com <noreply@typo3.com>
      Tested-by: Susanne Moog's avatarSusanne Moog <look@susi.dev>
      Tested-by: Daniel Goerz's avatarDaniel Goerz <daniel.goerz@posteo.de>
      Reviewed-by: Susanne Moog's avatarSusanne Moog <look@susi.dev>
      Reviewed-by: Daniel Goerz's avatarDaniel Goerz <daniel.goerz@posteo.de>
      b9d67bc7
  22. 17 Nov, 2019 1 commit
  23. 13 Nov, 2019 1 commit
  24. 07 Oct, 2019 1 commit
  25. 19 Sep, 2019 1 commit
  26. 27 Aug, 2019 1 commit
  27. 23 Aug, 2019 1 commit
  28. 05 Jun, 2019 1 commit
  29. 31 May, 2019 1 commit
  30. 16 May, 2019 1 commit
  31. 07 May, 2019 1 commit
  32. 15 Apr, 2019 1 commit
  33. 05 Apr, 2019 1 commit
  34. 16 Mar, 2019 1 commit
  35. 15 Mar, 2019 1 commit
  36. 17 Jan, 2019 1 commit
  37. 07 Jan, 2019 1 commit
  38. 30 Sep, 2018 3 commits