Project

General

Profile

Task #81437

Updated by Susanne Moog over 5 years ago

As topic says, once sibling issues are taken care of, the necessary API to finally migrate core caches to PSR-6 implementations will be in place. The migration then consists of: 

 * Implementing a PSR-6 delegating cache backend using existing cache backend infrastructure 
 * Make CacheManager capable of constructing these new types of cache pools, using communicators where needed 
 * Reduce core cache configurations to minimum and for as much as possible, rely on the shared base cache configuration 
 * Implement a special "generated PHP code" PSR-6 cache pool allowing saving generated raw PHP code such as Fluid templates (and which is more efficient than normal file based storage; replicating PhpFrontend + *FileBackend performance) 
 * Select a filesystem based cache storage for all default shipped caches 

 Once migrated, the caching framework will consist exclusively of and everything else will be deprecated: 

 * VariableFrontend + PhpFrontend + FrontendInterface 
 * PSR delegating "backend" (for compatibility, this behaves the same as existing backends and is drop-in replaceable with any backend type) 
 * Custom implementation cache pool which saves raw PHP code and exported plain-value arrays 

 When deprecation expires and it is time for removal, the following refactoring can then be done: 

 * Get rid of the PSR-6 delegating backend and let frontends speak directly to the PSR-6 cache pools 
 * Remove all cache backend classes and entire namespace 
 * Remove all custom cache backend exceptions

Back