[!!!][TASK] Drop support for deprecated cache usage in ext_localconf 31/59231/10
authorBenjamin Franzke <bfr@qbus.de>
Wed, 19 Dec 2018 09:44:58 +0000 (10:44 +0100)
committerGeorg Ringer <georg.ringer@gmail.com>
Tue, 15 Jan 2019 11:49:27 +0000 (12:49 +0100)
commit91dfd3d461f49aec2e58b65669a675eed4449b5e
treecdbe28ea0fd1928dad1dc15eb35d8299931e47de
parenta062f407f44c604b0b8b69ee14669d51f7b6e1cf
[!!!][TASK] Drop support for deprecated cache usage in ext_localconf

The initialization of the CacheManager has a design problem:

The *CacheManager* is used to create the core_cache. That core_cache
is used to read the (possibly) cached *CacheManager* configuration
(from ext_localconf.php), which is then used to (re)configure the
already-being-used *CacheManager* after ext_localconf.php has been
loaded. That means an extension can create a cache while it has
not been configured by a second extension. That behaviour was
deprecated in v9 and can therefore be dropped now.

We now create the core cache (and because of requirements
in core currently also the 'assets' cache) during early bootstrap
(independently from the CacheManager) and inject these early caches
into the CacheManager instance later on. The CacheManager instance is now
created during late bootstrap.
Looking forward to a Dependency Injection (DI) container, this change will
allow to move the CacheManager creation from bootstrap code into the DI
service providers (which will allow the CacheManager to be instantiated
on demand)

Releases: master
Resolves: #87245
Related: #86353
Change-Id: I984beabdbbd550c191de347fdc19166283452a88
Reviewed-on: https://review.typo3.org/59231
Tested-by: TYPO3com <noreply@typo3.com>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
typo3/sysext/core/Classes/Cache/CacheManager.php
typo3/sysext/core/Classes/Core/Bootstrap.php
typo3/sysext/core/Documentation/Changelog/master/Breaking-87193-DeprecatedFunctionalityRemoved.rst