Phpfastcache Versions Save

A high-performance backend cache system. It is intended for use in speeding up dynamic web applications by alleviating database load. Well implemented, it can drops the database load to almost nothing, yielding faster page load times for users, better resource utilization. It is simple yet powerful.

9.2.3

4 months ago
  • Drivers
    • Added support of Ravendb as an extension with its own sub-repository.
    • Deprecated \Phpfastcache\Entities\DriverStatistic::getData(). Will be removed as of v10.
    • Deprecated \Phpfastcache\Entities\DriverStatistic::setData(). Will be removed as of v10.
    • Added \Phpfastcache\Entities\DriverStatistic::getCount(): int|null. If applicable will return the count of cache objects stored in driver database/collection. Null otherwise.
    • Added \Phpfastcache\Entities\DriverStatistic::setCount()

9.2.2

4 months ago
  • Core
    • Added optional prefix to \Phpfastcache\Core\Pool\CacheItemPoolTrait::getKeys()

9.2.1

4 months ago
  • Misc
    • Added additional check in cache manager for extensions

9.2.0

4 months ago
  • API
  • Extensions (💡 New in 9.2)
    • Created an extension mechanism to allow some drivers to be loaded independently, see README.md
    • Created extension for Couchbasev4 support to its own sub-repository.
    • IMPORTANT: AS OF v9.2 the following drivers has been MOVED to their own sub-repositories as a standalone extension: Arangodb, Couchdb, Dynamodb, Firestore, Mongodb, Solr. However Couchbasev3 will stay in the core for compatibility reasons but will be deprecated.
    • IMPORTANT: AS OF v10 extensions will have their namespaces permanently moved from Phpfastcache\Drivers\EXT_NAME\{Config, Driver, Event, Item} to Phpfastcache\Extensions\Drivers\EXT_NAME\{Config, Driver, Event, Item}. For now an alias is ensuring compatibility.
  • Events
    • EventManager is now scoped to its own poll if retrieved through ExtendedCacheItemPoolTrait::->getEventManager(). Global EventManager EventManager::getInstance() remains unchanged, see EVENTS.md.
    • EventManagerInterface::on() now also accepts a single string $events.
    • Alias \Phpfastcache\PhpfastcacheEventManager of \Phpfastcache\EventManager has been added to improve your code import readability.
    • Deprecated \Phpfastcache\Event\EventManagerDispatcherInterface::hasEventManager to be removed for v10.
  • Drivers
    • Implemented #906 // Added RedisCluster driver support
    • Driver Memstatic has changed its name to Memory for more consistency.
    • Driver Wincache is now deprecated and will be removed as of v10 due to the lack of updates to PHP 8 as officially stated by PHP.
  • Pool
    • Added ExtendedCacheItemPoolTrait::getAllItems to allow you to retrieve all items in the cache. This method have some limitations, (see more in the Wiki).
  • Core
    • Configuration methodsConfigurationOption::isPreventCacheSlams(), ConfigurationOption::setPreventCacheSlams(), ConfigurationOption::getCacheSlamsTimeout(), ConfigurationOption::setCacheSlamsTimeout() are deprecated. (See changes).
    • Fixed #907 // Internal "driver decode()" method will now throw an if the string data looks corrupted.
    • Internal: Implemented multiple keys fetch (if supported by the backend) to improve the performances behind all getItems() calls. Currently only supported in some backends, but it may evolve in the future.
    • Internal: Implemented multiple keys delete (if supported by the backend) to improve the performances behind all deleteItems() calls. Currently only supported in some backends, but it may evolve in the future.
    • \Phpfastcache\CacheContract::get() now accepts a \Stringable $cacheKey argument.
  • Tags
    • Added \Phpfastcache\Core\Item\TaggableCacheItemInterface::isTagged(): bool
  • Misc
    • Fixed multiple code typo & updated README.md

9.2.0-beta

4 months ago
  • API
  • Events
    • EventManager is now scoped to its own poll if retrieved through ExtendedCacheItemPoolTrait::->getEventManager(). Global EventManager EventManager::getInstance() remains unchanged, see EVENTS.md.
  • Drivers
    • Implemented #906 // Added RedisCluster driver support
  • Pool
    • Added ExtendedCacheItemPoolTrait::getAllItems to allow you to retrieve all items in the cache. This method have some limitations, (see more in the Wiki).
  • Core
    • Configuration methodsConfigurationOption::isPreventCacheSlams(), ConfigurationOption::setPreventCacheSlams(), ConfigurationOption::getCacheSlamsTimeout(), ConfigurationOption::setCacheSlamsTimeout() are deprecated. (See changes).
    • Fixed #907 // Internal "driver decode()" method will now throw an if the string data looks corrupted.
    • Internal: Implemented multiple keys fetch (if supported by the backend) to improve the performances behind all getItems() calls. Currently only supported in some backends, but it may evolve in the future.
    • Internal: Implemented multiple keys delete (if supported by the backend) to improve the performances behind all deleteItems() calls. Currently only supported in some backends, but it may evolve in the future.
  • Misc
    • Fixed multiple code typo & updated README.md
Important

⚠️ This beta version will continue to improve and a stable release of the v9.2 is expected for the second week of January 2024.

9.1.3

8 months ago
  • Core
    • Fixed #893 // getItemsByTag() - empty after one item has expired
  • Misc
    • Fixed multiple code typo & updated README.md

8.1.4

1 year ago

"Masks fell, for good.."

  • Core
    • Fixed #893 // getItemsByTag() - empty after one item has expired

9.1.2

1 year ago
  • API
  • Core
    • Rewrote some core code to improve code maintainability & readability following Scrutinizer and Phpstan recommendations
    • Fixed an issue with tags not properly reinitialized when a backend driver returns an expired cache item
  • Drivers
    • Fixed #866 // Deprecated Method Cassandra\ExecutionOptions starting of Cassandra 1.3
  • Misc
    • Increased PHPSTAN level to 6
    • Fixed multiple fails of Travis CI
    • Migrated Github issue templates from Markdown to YAML configurations

8.1.3

1 year ago

"Don't throw the masks, yet."

  • Core
    • Fixed #860 // Cache item throw an error on save with DateTimeImmutable date objects
  • Drivers
    • Fixed #866 // Deprecated Method Cassandra\ExecutionOptions starting of Cassandra 1.3

9.1.1

2 years ago
  • Core
    • Fixed #860 // Cache item throw an error on reading with DateTimeImmutable date objects
    • Fixed an issue with tags not properly reinitialized when a backend driver returns an expired cache item
  • Drivers
    • Fixed #862 // Multiple driver errors caused by invalid return type of driverRead() (reported by @ShockedPlot7560 and @aemla)