All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Allow objects with potentially
undefined
fields to be used asCacheKey
values. Any fields containingundefined
will be omitted during serialization.
- Do not die when trying to cache errors with circular dependencies. However, we also no longer preserve custom properties on errors, because we don't know if they're safe to serialize.
- Added support for JSON objects as hash keys using
json-stable-stringify
.
- Update to latest Redis client library.
- Updated to TypeScript 4.
- Tests can now be run using
npm test
.
- Full native TypeScript support.
- Linting using
eslint
. - Code formatting using
prettier
.
- The
cache-manager
library has been removed, and replaced with direct access to Redis and an LRU cache. - Cache construction options have changed, if you choose to construct a cache manually (which is no longer encouraged).
- You should use
cache.wrap
andcache.get
to acccess the cache. - Locking has been totally rewritten.
- The test suite has been replaced with the excellent 4.x test suite, ported to
mocha
.
- Quite a few minor bugs have been fixed. Some new ones have probably been added.
- A subtantial number of implementation details have been removed from the public API.