SoulCache

Release Notes

Changelog and release notes

Release Notes

v1.1.1

Security

  • Honest checksum algorithms (SLC-INTEGRITY-001)checksum: 'sha-256' now writes a real FIPS 180-4 SHA-256 digest (64-hex). Previously every configured label (sha-256, sha-384, sha-512, md5, fast-32) silently computed the same 32-bit djb2 value. Writes under the never-implemented sha-384/sha-512/ md5 labels now throw; payloads persisted by 1.0.0/1.1.0 remain readable (dual-mode verification).
  • dehydrate() no longer includes error.stack by default (SLC-HYDRATE-003) — internal file paths no longer leak to clients in SSR flows. Opt in with includeStack: true.
  • hydrate() validates entry structure (SLC-HYDRATE-001) — malformed entries are rejected before they can corrupt the cache; overwrite semantics unchanged.
  • generateId() uses a CSPRNG (SLC-RNG-001)crypto.randomUUID() when available, legacy scheme as fallback.

Upgrade notes

  • No public API changes; no persisted-payload migration required.
  • Review the migration guide for the two behavior changes (error.stack opt-in, deprecated checksum labels).

v1.1.0

Features

  • MemoryAdapter.maxEntries — optional size cap; oldest entry evicted on set
  • EventBus handler capmaxHandlersPerType option guards against unbounded listeners
  • Query serialization hardeningdeepEqual recursion depth guard and deserialize input validation
  • API-compatible with v1.0.0 (verified against the public-API baseline)

Documentation

  • TTL caching terminology replaces the incorrect "Stale While Revalidate" claims
  • Query Engine, Retry Engine, and the plugin system are now correctly documented as internal/roadmap components

Testing

  • 1312/1312 tests passing (root suite, core + devtools + devtools-core)
  • 199/199 tests passing (React bindings, jsdom)
  • Full type coverage
  • Zero runtime dependencies

v1.0.0

Features

Query Client

Full TypeScript support with automatic caching

Cache Engine

Automatic garbage collection with O(1) operations

React Adapter

Hooks and components for React applications

DevTools

Floating panel with timeline and metrics

The following modules ship in v1.0.0 but are internal (not part of the public API) and are staged for future release or roadmap work:

  • Retry Engine (exponential backoff with error classification)
  • Observer Manager (reactive updates with batch notifications)
  • Query Engine (orchestrating data fetching with deduplication)
  • Plugin System (extensible hooks for custom behavior)

Performance

Performance Highlights

  • O(1) cache operations
  • Automatic request deduplication
  • TTL-based caching
  • Memory-safe observer management

Testing

  • 1110/1110 tests passing at release time (root suite, core + devtools + devtools-core)
  • 195/195 tests passing (React bindings)
  • Full type coverage
  • Zero runtime dependencies

v0.9.0 (Beta)

  • Initial public beta
  • Core runtime implementation
  • React adapter
  • Documentation platform

v0.8.0 (Alpha)

  • Internal alpha release
  • Core modules
  • Basic testing

On this page