Back to Explore

isaacs/node-lru-cache

GitHub
5 updates · last 90 days1 watchersOpen source

Last release:

A fast LRU (least recently used) cache for JavaScript that automatically evicts the least recently accessed items when it reaches configured limits like max item count (or max size). Useful for speeding up repeated lookups where you want bounded memory and eviction based on recent access, with optional TTL behavior that treats expired items as missing.

Project status

  • Actively maintained: Recent upstream push on 2026-07-07 and multiple published updates in 2026 (from 2026-05-04 through 2026-07-07) indicate the project is being actively worked on rather than in maintenance mode.
  • Cadence: Updates appear roughly every 1 to 6 weeks in 2026 (mid-May through early June, then another in late May, and a final one in early July), suggesting an ongoing development cadence.

AI summary generated

AI-generated from public sources. May be inaccurate. Report

Recent updates

  • v11.5.2

    No release notes were provided for v11.5.2. The code changes are focused on internal TTL autopurge timer handling in src/index.ts, plus a new stress regression test to validate autopurging behavior under heavy load.

  • v11.5.1

    v11.5.1 is a small patch release with no publisher release notes provided. The code diff indicates this version primarily adjusts TypeScript option typing for LRUCache fetch/memo contexts, plus version metadata updates in package.json and package-lock.json.

  • v11.5.0

    This release introduces a new LRUCache option, backgroundFetchSize, which controls how much an in-flight background fetch promise counts toward cache size while it is pending. The change mainly affects calculatedSize, tracing metrics, and potentially eviction behavior during background fetches. The publisher-provided release notes were empty, so the code change details primarily come from CHANGELOG.md and the implementation.

    Features
  • v11.4.0

    Release v11.4.0 was published on 2026-05-18, but the publisher did not provide any release notes. Because no change log is available, it is not possible to reliably identify new features, bug fixes, breaking changes, or security updates from the provided information.

  • v11.3.6

    v11.3.6 has no published release notes. The code diff shows mostly internal refactors around performance timing support and diagnostics-channel wiring, along with packaging/build changes that introduce separate CommonJS outputs for browser and node conditions.

    Breaking
  • v11.3.5

    Release v11.3.5 does not include any publisher-provided release notes. The code diff indicates the main change is adding a browser-specific ESM export entry (and building the corresponding browser bundle artifact), along with a version bump in package.json and package-lock.json.

    Features
  • v11.3.4

    v11.3.4 introduces build and export changes to support a browser-specific ESM dialect. The release notes are missing (none provided), so the functional impact must be inferred from the code diff, which focuses on diagnostics-channel environment shims and new conditional exports/build outputs.

    Features
  • v11.3.3

    Release v11.3.3 has no publisher-provided release notes. The code changes focus on how the library integrates with Node's diagnostics_channel in non-node environments, including avoiding top-level await and altering the initialization timing for the metrics and tracing channels.

    Breaking
  • v11.3.2

    This release introduces a node-specific ESM build target (dist/esm/node) and a new diagnostics_channel adapter module, and it wires those outputs into package.json via the conditional export "node" condition. The code diff also shows updates to tracing-related test snapshots, suggesting the emitted tracing/metrics behavior may have shifted under the new diagnostics_channel integration.

    Features
  • v11.3.1

    Release v11.3.1 has no publisher release notes provided. The code changes primarily affect LRUCache observability and the values placed into the `status` object (used for `lru-cache:metrics` and tracing), especially for `get` operations when a background fetch is in progress or when stale values are involved.

    Breaking
  • v11.3.0

    The publisher did not provide release notes for v11.3.0, so there is no documented information about new functionality, fixes, or potential breaking changes. To assess upgrade risk, you will need to review the GitHub compare view for v11.3.0 vs the previous release and check for any API, configuration, or dependency changes.