CacheItem
for PSR-6
needs to start expiring after calling CacheItemInterface#expiresAfter
#199
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
This might introduce some kind of BC break.
Prior this change, cache items did not start to expire after calling
CacheItemInterface#expiresAfter
.Therefore,
CacheItemInterface
instances only started to expire after calling one of the following methods:CacheItemPoolInterface#save
CacheItemPoolInterface#commit
With one of the integration tests we are using for each of our cache adapters, we found out that this is not how cache items should work.
Since
symfony/cache
anddoctrine/cache
do use these integration tests as well, I'd expect that this is a common use-case and thus want to align with these assumptions.Do we want to introduce this slight BC break? I have a few use-cases in mind where one might want to synchronize expiration times of multiple cache items but I would assume that this is not fully breaking a project since whenever one is working with
time
,microseconds
might be different and thusCacheItemPoolInterface#getItem
might return items which are nothit
even tho they should be there from a TTL PoV.