laminas/laminas-cache-storage-adapter-filesystem
Laminas cache adapter for filesystem
3.2.0
4.6M downloads/mo
#1982 most downloaded on Packagist
laminas/laminas-cache-storage-adapter-filesystem
What this package is like to depend on
Last release 5 months ago
10 Mar 2026
Release timing varies
gaps range from 3 weeks to 1.2 years
Most releases are documented
notes for 10 of 15 stable releases
Nothing withdrawn
no release was ever pulled
6 years old
15 releases · first in 2020
1 release in the last 12 months
see the full history below
Release timeline
15 releases · Oct 2020 to Mar 2026Releases
latest 15-
3.2.010 Mar 2026Release notes
Open source →Release Notes for 3.2.0
Feature release (minor)
3.2.0
- Total issues resolved: 0
- Total pull requests resolved: 2
- Total contributors: 2
Dependencies,Enhancement
- 112: Allow PHP 8.5, remove PHP 8.1 thanks to @fezfez
QA
-
3.1.031 Dec 2024Release notes
Open source →Release Notes for 3.1.0
Feature release (minor)
This release adds support for PHP 8.4.
3.1.0
- Total issues resolved: 0
- Total pull requests resolved: 2
- Total contributors: 2
Enhancement
-
3.0.010 Jul 2024Release notes
Open source →Release Notes for 3.0.0
Backwards incompatible release (major)
laminas-cache-storage-adapter-filesystem3.0.0 is here and finally adds native types everywhere, adds support forpsr/cacheandpsr/simple-cachev2 & v3, supportslaminas/laminas-cachev4 and introduces an all new metadata and persistence logic. TheFilesystemdoes now persist the value as a serialized string along with the expiry date so that cache items can now have dedicated TTLs.Added
- Dedicated
Metadataobject forFilesystem#getMetadata - Adds support for
psr/cacheandpsr/simple-cachev2 & v3 by introducing TTL per-item handling Filesystemnow allows passing aClockInterfacevia its constructor- New option to configure unserializable classes (
unserializable_classes) which can be passed as aFilesystemoption asbooleanor anon-empty-list<class-string>value. Defaults totrueand can be modified according to the unserialize function documentation (value is passed toallowed_classesoption ofunserialize). This option is only used when there is noSerializerplugin attached to the storage adapter FilesystemInteractionInterfacedoes now provide a new methodgetFirstLineOfFileto have a performant way to read the cache expiry information without loading the whole file into memory
Changed
- Filesystem adapter now supports per-item TTL and thus, the TTL is calculated
on-writerather thanon-read - The
Filesystemadapter now uses.cachesuffix which is not configurable anymore (used to be.dat) as the old.datfiles might not be compatible anymore. This will probably introduce problems in projects which rely on existing files which are not generated when these are missing. It is also mandatory that if caches are created cross-project, that both projects use the same adapter version. Please keep this in mind when upgrading FilesystemOptionsdoes now prevent projects from updating the key pattern, the key pattern is fixed and must not changeFilesystemOptionshas a modified key pattern and now allows dots (.) in cache keys. This is mandatory to have proper PSR-6 support which requires caches to supportA-Z,a-z,0-9,_, and.Filesystemadapter now stores values as serialized strings within the cache file in case that there is noSerializerplugin attached to the adapter
Removed
Filesystem::METADATA_ATIMEconstant, useMetadata#lastAccessTimeinsteadFilesystem::METADATA_CTIMEconstant, useMetadata#creationTimeinsteadFilesystem::METADATA_MTIMEconstant, useMetadata#lastModifiedTimeinsteadFilesystem::METADATA_FILESIZEconstant, useMetadata#filesizeinsteadFilesystem::METADATA_FILESPECconstant, useMetadata#filespecinsteadFilesystemOptions#setSuffixas the suffix is not configurable anymoreFilesystemOptions#getSuffixas the suffix is not configurable anymoreFilesystemOptions#setTagSuffixas the tag suffix is not configurable anymoreFilesystemOptions#getTagSuffixas the tag suffix is not configurable anymoreFilesystemInteractionInterface#umaskas it was not usedFilesystemInteractionInterface#touchas it is not used anymore
3.0.0
- Total issues resolved: 1
- Total pull requests resolved: 5
- Total contributors: 2
Enhancement
- 97: Introduce modifiable clock from
laminas-cache-storage-adapter-testv4.1 thanks to @boesing - 96: Prevent double serialization when
Serializerplugin is used thanks to @boesing
BC Break,Enhancement
- 91: Introduce TTL per item along with value serialization thanks to @boesing
- 90: Add support
laminas-cachev4 thanks to @boesing
Enhancement,RFC,Won't Fix
BC Break
- 70: Compatibility with PSR-6/PSR-16 thanks to @codealfa
- Dedicated
-
2.5.023 Jan 2025Release notes
Open source →Release Notes for 2.5.0
Feature release (minor)
2.5.0
- Total issues resolved: 0
- Total pull requests resolved: 1
- Total contributors: 1
Enhancement
-
2.4.110 Jul 2024Release notes
Open source →Release Notes for 2.4.1
2.4.x bugfix release (patch)
2.4.1
- Total issues resolved: 0
- Total pull requests resolved: 2
- Total contributors: 2
Documentation
- 88: Corrected link to documentation thanks to @modir
Bug
-
2.4.008 Jan 2024Release notes
Open source →Release Notes for 2.4.0
Feature release (minor)
2.4.0
- Total issues resolved: 0
- Total pull requests resolved: 2
- Total contributors: 2
Enhancement
renovate
- 68: Update dependency vimeo/psalm to v5 thanks to @renovate[bot]
-
2.3.022 Oct 2022Release notes
Open source →Release Notes for 2.3.0
Feature release (minor)
2.3.0
- Total issues resolved: 0
- Total pull requests resolved: 1
- Total contributors: 1
Enhancement,dependency update
- 66: Add PHP 8.2 support thanks to @fezfez
-
2.2.016 Sep 2022Release notes
Open source →Release Notes for 2.2.0
Feature release (minor)
2.2.0
- Total issues resolved: 0
- Total pull requests resolved: 1
- Total contributors: 1
Enhancement
-
2.1.016 Sep 2022Release notes
Open source →Release Notes for 2.1.0
Feature release (minor)
2.1.0
- Total issues resolved: 0
- Total pull requests resolved: 6
- Total contributors: 5
Enhancement,dependency update
- 63: Drop support for PHP 7.3 thanks to @gsteel
Enhancement
- 61: Remove dependabot in favor of renovate thanks to @boesing
- 41: Prepare for Renovate with reusable workflows thanks to @ghostwriter
renovate
- 56: Configure Renovate thanks to @renovate[bot]
dependency update
-
2.0.101 Dec 2021Release notes
Open source →Release Notes for 2.0.1
2.0.x bugfix release (patch)
2.0.1
- Total issues resolved: 2
- Total pull requests resolved: 2
- Total contributors: 2
Bug
-
2.0.008 Nov 2021Nothing published for this version
-
1.1.125 Apr 2021Nothing published for this version
-
1.1.031 Dec 2020Nothing published for this version
-
1.0.112 Oct 2020Nothing published for this version
-
1.0.005 Oct 2020Nothing published for this version