- A new FilesystemCache
- Added a new serialiser which uses Parquet instead of pickle for Pandas
dataframes:
pyappcache.serialisation.pandas.DataFrameAwareSerialiser
. - Support for Python 3.12
- A new
BinaryFileSerialiser
- Caches now work on buffers internally, rather than strs
- This is a breaking change for compressors and serialisers
- This seems to work much better for larger values (eg dataframes, csv files, etc)
- SqliteCache will now use incremental blob I/O where possible (eg Python 3.11+)
- Fixed an issue with the default prefix being "pyappache"
- Sort out CacheControlProxy
- Support for Python 3.7
prefix
can be passed as an arg toCache.__init__
- Support up to Python 3.11
- Added a better repr for
SimpleStringKey
- Fixed two issues in sqlite where expiry and eviction were not correct
- Support for Python 3.6
- Improved documentation greatly (and put it on RTD)
- GPLv3 license
- Change the Key classes, a breaking change
- Support for operating as a read-through/write-through cache
get_via
(update-on-read)set_via
(update-on-write)
- Key "namespacing" (documentation to follow)
- pylibmc and redis are now optional dependencies
- eg install
pyappcache[memcache]
orpyappcache[redis]
to require them
- eg install
- Default cache prefix is now just "pyappcache" and slashes are added when building raw keys
- The required API surface of caches has been reduced further
- MemcacheCache will retry exactly once when pylibmc raises a ConnectionError
- in order to be robust against memcache restarts
- repr no longer defined on GenericStringKey
- First version