Skip to content

Releases: PHPSocialNetwork/phpfastcache

9.1.0

03 Apr 23:45
9.1.0
c871f98
Compare
Choose a tag to compare
  • API
  • Core
    • Added \Phpfastcache\Helper\UninstanciableObjectTrait trait which will contains base locked constructor for any classes that are nor meant to be instanciated.
    • Deprecated \Phpfastcache\Config\Config::class
    • Removed/reworked/improved dead/unreachable/redundant/obsolete code, thanks to Phpstan
  • Drivers
    • Added Solr driver support
  • Events
    • Added \Phpfastcache\Event\EventInterface for \Phpfastcache\Event\Event and subclasses below
    • Added \Phpfastcache\Drivers\Arangodb\Event for Arangodb events
    • Added \Phpfastcache\Drivers\Dynamodb\Event for Dynamodb events
    • Added \Phpfastcache\Drivers\Solr\Event for Solr events
    • Moved the following constant from \Phpfastcache\Event\Event to their respective drivers: ARANGODB_CONNECTION, ARANGODB_COLLECTION_PARAMS, DYNAMODB_CREATE_TABLE
  • Cluster
    • Fixed #855 // ClusterReplication drivers are saving erroneous expiration date in low-level backends
  • Misc
    • Full PSR-12 compliance is now enforced by PHPCS
    • Multiple typo fixes (@mbiebl)
    • Updated composer suggestions and CI builder dependencies

9.0.2

04 Mar 21:39
9.0.2
4006b84
Compare
Choose a tag to compare
  • Core
    • Updated CacheContract::__invoke() signature
    • Added new option to allow EventManager override + improved EventManager tests (EventManager::setInstance())
  • Drivers
    • Fixed #853 // Configuration validation issue with Memcached socket (path)
  • Misc
    • Fixed typo and some types hint

8.1.2

04 Mar 21:36
8.1.2
c328625
Compare
Choose a tag to compare

"Free the masks"

  • Drivers
    • Fixed #853 // Configuration validation issue with Memcached socket (path)

8.1.1

21 Feb 20:48
8.1.1
80a139c
Compare
Choose a tag to compare

"Re-re-Vaccinated"

  • Core
    • Fixed #848 // Others PHP 8.1 compatibility bugs

8.1.0

05 Jan 21:23
8.1.0
20f802e
Compare
Choose a tag to compare

"Re-Vaccinated"

  • Core
    • Fixed #831 // Bug in the PSR-16 getMultiple method
  • Utils
    • Fixed #846 // PHP 8.1 compatibility bug
  • Drivers
    • Fixed #840 // Invalid type hint found for "htaccess", expected "string" got "boolean" for leveldb driver
  • Misc
    • Updated some docs files (fixed typos)
  • Tests
    • Migrate all Travis tests on bionic

9.0.1

14 Nov 00:07
9.0.1
bcd068f
Compare
Choose a tag to compare
  • Core
    • Added \Phpfastcache\Event\Event class for centralizing event name with reusable constants.
  • Item
    • \Psr\Cache\CacheItemInterface::set will also no longer accepts resource object anymore as method unique parameter
  • Misc

9.0.0

31 Oct 02:14
9.0.0
95226de
Compare
Choose a tag to compare
  • Migration guide
  • PSR-6
    • 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
  • API
    • Upgraded Phpfastcache API 4.0.0 (see changes)
    • Renamed Api::getPhpFastCacheVersion() to Api::getPhpfastcacheVersion()
    • Renamed Api::getPhpFastCacheChangelog() to Api::getPhpfastcacheChangelog()
    • Renamed Api::getPhpFastCacheGitHeadHash() to Api::getPhpfastcacheGitHeadHash()
  • Cluster
    • Renamed \Phpfastcache\Cluster\AggregatorInterface::aggregateNewDriver() to \Phpfastcache\Cluster\AggregatorInterface::aggregateDriverByName()
  • Exceptions
    • Added PhpfastcacheEventManagerException for EventManager-related exceptions
  • Global
    • Removed magics methods from CacheManager CacheManager::DriverName(), use CacheManager::getInstance('DriverName') instead
    • \Phpfastcache\Proxy\PhpfastcacheAbstractProxy now implements \Phpfastcache\Proxy\PhpfastcacheAbstractProxyInterface
    • Slightly increased performances on some critical points of the library
    • Removed "BadPracticeOMeter" notice in CacheManager
    • Removed many code duplicate (like in \Phpfastcache\Driver\[DRIVER_NAME]\Item classes)
    • Reworked traits inter-dependencies for better logic and less polymorphic calls in pool/item traits
    • Upgrading library to use benefits of PHP 8 new features (see below)
    • Typed every class properties of the library
    • Migrated many Closure to arrow functions
    • Updated parameters & return type hint to use benefit of covariance and contravariance
    • Removed embedded Autoload, Phpfastcache is now only Composer-compatible.
    • Removed embedded dependencies (psr/cache, psr/simple-cache)
  • Helpers
    • 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

8.0.8

18 Aug 01:31
8.0.8
c413ffd
Compare
Choose a tag to compare

"Sanitary-passed"

  • Core
    • Fixed small date issue with tag items that stays longer than necessary active in backend
  • Drivers
    • Improved Mongodb driver code
    • Improved Couchdb driver code
    • Improved Couchbase driver code (SDK 2 version)
    • Implemented #721 // Added Couchbase SDK 3 support (use Couchbasev3 driver name)
  • Misc
    • Increased test reliability by adding more code coverage in CRUD tests and by performing some updates on Travis CI

8.0.7

14 Aug 00:19
8.0.7
60f7124
Compare
Choose a tag to compare

"Vaccinated"

  • Drivers
    • Improved Couchdb driver code and tests
    • Dropped Riak support permanently (unmaintainable)
  • Docs

7.1.2

14 Aug 00:21
7.1.2
ee5e7fc
Compare
Choose a tag to compare

"Rust-weak"

  • Global
    • Improved PHP 7.4 support
    • Fixed #768 // Psalm issue with the 3rd parameter of Psr16Adapter::set has to be null (@Geolim4)
    • Fixed #781 // Type issue (@Geolim4)
  • Docs
  • Drivers
    • Fixed #759 // Memcached Bytes Replaced with Version (@Geolim4)