Changes

Version 0.13.0

Released 2024-04-13

  • default hashlib.md5 may not be available in FIPS builds. We now do not access it at import time on FileSystemCache``so developers have time to change the default. ``hashlib.md5 will be lazy loaded when a new default is not provided

Version 0.12.0

Released 2024-02-11

  • RedisCache now supports callables as keys

  • Added MongoDB as a cache backend

Version 0.11.0

Released 2024-02-10

  • Drop python 3.7 support

  • Add python 3.11 support

Version 0.10.2

Released 2023-01-31

  • Fix broken release

Version 0.10.1

Released 2023-01-22

  • Fix logging pollution due to DynamoDB logging handler

Version 0.10.0

Released 2023-01-22

  • Improve error message when FileSystemCache methods are called with non-str keys. #170

  • Added DynamoDb as a cache backend #209

Version 0.9.0

Released 2022-06-26

  • Add separate internal read/write clients to RedisCache to improve compatibility with flask-caching. #159

  • Fix bug where cache entries would expire immediately when RedisCache.add was called without timeout. #157

  • Improve FileSystemCache.set compatibility with Windows systems. #158

Version 0.8.0

Released 2022-06-13

  • Remove deprecated RedisCache.load_object and RedisCache.dump_object. #147

Version 0.7.0

Released 2022-05-14

  • FileSystemCache now stores universal expiration timestamps using python’s struct module. #126

  • Drop support for Python 3.6. #134

Version 0.6.0

Released 2022-01-18

  • A custom hash_method may now be provided to FileSystemCache for hashing keys. #107

  • Fix PermissionError issue with FileSystemCache on Windows. #111

Version 0.5.0

Released 2021-12-31

  • Cache types now have configurable serializers. #63

Version 0.4.1

Released 2021-10-04

  • Fix break in RedisCache when a host object was passed in RedisCache.host instead of a string. #82

Version 0.4.0

Released 2021-10-03

  • All cache types now implement BaseCache interface both in behavior and method return types. Thus, code written for one cache type should work with any other cache type. #71

  • Add type information for static typing tools. #48

  • FileNotFound exceptions will not be logged anymore in FileSystemCache methods in order to avoid polluting application log files. #69

Version 0.3.0

Released 2021-08-12

  • Optimize FileSystemCache pruning. #52

  • Fix a bug in FileSystemCache where entries would not be removed when the total was over the threshold, and the entry count would be lost. #52

  • FileSystemCache logs system-related exceptions. #51

  • Removal of expired entries in FileSystemCache is only triggered if the number of entries is over the threshhold when calling set. get has still return None and False respectively for expired entries, but will not remove the files. All removals happen at pruning time or explicitly with clear and delete. #53

Version 0.2.0

Released 2021-06-25

  • Support for Python 2 has been dropped. Only Python 3.6 and above are supported.

  • Fix FileSystemCache.set incorrectly considering value overrides on existing keys as new cache entries. #18

  • SimpleCache and FileSystemCache first remove expired entries, followed by older entries, when cleaning up. #26

  • Fix problem where file count was not being updated in FileSystemCache.get and FileSystemCache.has after removals. #20

  • When attempting to access non-existent entries with Memcached, these will now be initialized with a given value delta. #31

Version 0.1.1

Released 2020-06-20

  • Fix FileSystemCache on Windows.