Skip to content

v6.0.0

Compare
Choose a tag to compare
@sindresorhus sindresorhus released this 11 Nov 09:30

Breaking

  • Simplify the default cacheKey (#43) b7a0766
    It now defaults to cacheKey: x => x instead of the much more complicated previous default. This means it will now only cache the first argument, and only if it's a primitive. Previously, it tried to cache all arguments using JSON.stringify(), but this was both error-prone and slow. This change makes the memoization logic very straightforward, explicit and fast by default. See the readme for how to handle multi-argument or non-primitive value situations.
  • Drop the cachePromiseRejection option (#43) b7a0766
    It was not a good fit for mem and we plan to add it to p-memoize instead (sindresorhus/p-memoize#11), which is like mem, but focused on promises.
  • Throw when .clear() is called with a non-memoized function (#44) c73c23b

v5.1.1...v6.0.0