NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
Packagist · #2819 most downloaded on Packagist
Scrapbook is a PHP cache library, with adapters for e.g. Memcached, Redis, Couchbase, APCu, SQL and additional capabilities (e.g. transactions, stampede protection) built on top.
Last release 2 years ago
no release in 18 months
Release timing varies
gaps range from 3 weeks to 1.8 years
Nearly every release is documented
notes for 32 of 32 stable releases
Nothing withdrawn
no release was ever pulled
11 years old
32 releases · first in 2015
Add tests for PHP8.4 and report error thoroughly
Add tests for PHP8.4 and report error thoroughly
Fixed Redis TLL override on failure to add key
One column per quarter.
& prepare for release
& prepare for release
Also added a check to confirm that an expiration of 0 actually means infinite, not "expire now"
Also added a check to confirm that an expiration of 0
actually means infinite, not "expire now"
All are supported (ATM)
All are supported (ATM)
Fixes #48
Fixes #48
Verify that key length is not exceeded for Couchbase
Verify that key length is not exceeded for Couchbase
cas in transactional cachesetUpdated Couchbase install instructions in PHP Docker images
implode parameter order for PHP7.4 complianceFixes #34
Fixes #34
Add more workarounds for Couchbase's imprecise expiration purging
Add more workarounds for Couchbase's imprecise expiration purging
$token can be int as well as float$value is considered nullSupport Memcached>=3.0 new getMulti method signature
Include cache/integration-tests test suite for PSR-16
Stricter handling of invalid keys in Traversables passed to PSR-16
Return value of PSR-16 delete should always be true
Officialize psr/simple-cache support
Added $default param to PSR-16's get()
get()exists() to has()Add preliminary support for proposed PSR-16
counter, which is not typesafeMake sure expired items are also stored (they may override existing value)
Made MySQL's value a LONGBLOB, which can store bigger values
Removed deprecated Filesystem adapter
cache/taggable-cache now does the sameMemoryStore no longer evicts everything if infinite memory is allocated to PHP
Don't let expired deferred items appear to have hit cache
Add cache/taggable-cache implementation that works for all PSR-6 libraries
get result in buffer if it wasn't in there alreadyDeferred items now register as hit in psr/cache Item
Properly support PHPUnit's --filter to narrow down adapters
false & no value in cache, where $token should be nullcomposer.json now requires psr/cache
psr/cachePsr6 methods accepting $key now throw InvalidArgumentExceptionPsr\Cache filesflush return valueMade Redis multi/exec consistently return array
multi/exec consistently return arrayRestored original Filesystem adapter (for PHP5.3 B/C), but still deprecated
Psr6\Pool::hasItem, per PSR-6 specPsr6\Pool::deleteItem, per PSR-6 specPsr6\Pool::deleteItems returns result instead of static, per PSR-6 specPsr6\Pool::save returns result instead of static, per PSR-6 specPsr6\Pool::saveDeferred returns result instead of static, per PSR-6 specPsr6\Item::exists, per PSR-6 specPsr6\Item::getExpiration, per PSR-6 spec### Added - Added league/flysystem adapter ### Removed - Deprecated Filesystem adapter
league/flysystem adapterOptimized transactions (e.g. multiple set can be combined into setMulti)
set can be combined into setMulti)set on existing value in MemoryStore, don't doublecount the sizeAdded Psr6\Item::expiresAt, per PSR-6 spec
Psr6\Item::expiresAt, per PSR-6 specPsr6\Item::expiresAfter, per PSR-6 spec@file_get_contentsPsr6\Item::setExpiration, per PSR-6 specMemoryStore adapter, for testing
Your coding agent can read these notes before it upgrades. Set up the MCP server →