You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Upgraded psr/cache dependency to ^2.0||^3.0 (for PHP-8 types)
\Psr\Cache\CacheItemInterface::get() slightly changed to fully comply with missing PSR-6 specification: If the cache item is NOT hit, this method will return NULL.
PSR-16
To be written when the PSR-16 will be upgraded for PHP-8
Deprecated \Phpfastcache\Helper\CacheConditionalHelper, use \Phpfastcache\CacheContract instead
The \Phpfastcache\CacheContract class is now also callable directly without calling get() method
Config/Options
Configuration object will now be locked once the cache pool instance is running.
Updated ConfigurationOption which is no longer an ArrayObject class, therefore array-syntax is no longer available.
Removed configuration entry htaccess for files-based drivers.
Removed IOConfigurationOptionTrait::getHtaccess()
Removed IOConfigurationOptionTrait::setHtaccess()
Tests
Added PHPMD, PHPCS and PHPSTAN coverages to increase quality of the project
Updated tests to work with new core/drivers changes
Removed Autoload test since its support has been removed and now only managed by Composer
Increased tests reliability and code coverage for better catching any eventual regression
Item
\Psr\Cache\CacheItemInterface::set will not accept \Closure object anymore as method unique parameter
Drivers
Added Arangodb driver support
Added Dynamodb (AWS) driver support
Added Firestore (GCP) driver support
Removed Cookie driver because of its potential dangerosity
Removed Couchbase (SDK 2 support dropped) driver which is now replaced by Couchbasev3 (SDK 3)
Removed Devtrue and Devfalse drivers
Added Devrandom with configurable factor chance and data length
Renamed classes \Phpfastcache\Cluster\Drivers\[STATEGY]\[CLUSTER_NAME]Cluster to \Phpfastcache\Cluster\Drivers\[STATEGY]\Driver for better driver naming across the project
Events
Added \Phpfastcache\Event\EventReferenceParameter class and more events such as driver-specific events, see EVENTS.md file for more information
Event callbacks will now receive the eventName as an extra last callback parameter (except for onEveryEvents callbacks)
Added EventManagerInterface::on(array $eventNames, $callback) method, to subscribe to multiple events in once with the same callback
Added method named unbindAllEventCallbacks(): bool to EventManagerInterface to allow you to unbind/clear all event from an event instance
Updated argument type #2 ($items) of onCacheSaveMultipleItems() event from ExtendedCacheItemInterface[] to EventReferenceParameter($items)
Updated argument type #2 ($items) of onCacheCommitItem() event from ExtendedCacheItemInterface[] to EventReferenceParameter($items)
Updated argument type #2 ($value) of onCacheItemSet() event from mixed to EventReferenceParameter(mixed $value)
Misc
Increased minimum PHP compatibility in composer to ^8.0
Updated copyright headers on every file to include the many project contributors
Globally renamed every occurrence of PhpFastCache to Phpcastcache