4.0.0
Closed Jun 16, 2024
100% complete
laminas-cache
4.0.0 is here and finally adds native types everywhere, adds support for psr/cache
and psr/simple-cache
v2 & v3 and introduces an all new metadata logic which allows adapters to provide metadata they actually support.
Please read more on how to migrate your project in our migration guideline.
Added
- Every adapter which supports
metadata
now …
laminas-cache
4.0.0 is here and finally adds native types everywhere, adds support for psr/cache
and psr/simple-cache
v2 & v3 and introduces an all new metadata logic which allows adapters to provide metadata they actually support.
Please read more on how to migrate your project in our migration guideline.
Added
- Every adapter which supports
metadata
now implementsMetadataCapableInterface
and provides a dedicated object containing all the metadata values it supports - Adds support for
psr/cache
andpsr/simple-cache
v2 & v3
Removed
supportedMetadata
capability fromCapabilities
KeyListIterator::CURRENT_AS_METADATA
mode along withLaminas\Cache\Exception\MissingKeyException
- automatic instantiation of
SerializerInterface
when callingPluginOptions#getSerializer
- Increment and decrement feature from
StorageInterface
, so there is no moreStorageInterface#incrementItem
,StorageInterface#decrementItem
,StorageInterface#decrementItems
andStorageInterface#incrementItems
- this also removes
incrementItem
,incrementItems
,decrementItem
,derementItems
events (pre
,post
andexception
)
- this also removes
- dependency inversion on virtual package
laminas/laminas-cache-storage-adapter-implementation
which now allowslaminas-cache
to be required without a concrete storage adapter implementation - removed support for
psr/cache
andpsr/simple-cache
v1
Breaking Changes
AbstractAdapter
andStorageInterface
are not aware of the methodsgetMetadata
anymore. These were moved to the newMetadataCapableInterface
Capabilities
do not providesupportedMetadata
anymore. The supported metadata is tied to the used storage adapter and thus, was already requiring projects to explicitly know the exact implementation of the cache backend in case of using these metadatas anywayKeyListIterator
and the correspondingIteratorInterface
does not provide themode
CURRENT_AS_METADATA
anymorePluginOptions#getSerializer
does not create a serializer anymore if astring
option was passed, instead, thestring
is returned- Increment and decrement feature was removed from
StorageInterface
, so there is no moreStorageInterface#incrementItem
,StorageInterface#decrementItem
,StorageInterface#decrementItems
andStorageInterface#incrementItems
- this also removes
incrementItem
,incrementItems
,decrementItem
,derementItems
events (pre
,post
andexception
)
- this also removes
- Every method now has native return types
- Every property now has native types
- Every method argument now has native types
ObjectCache
does not inherit theCallbackCache
pattern anymore
This milestone is closed.
No open issues remain. View closed issues or see open milestones in this repository.