Skip to content

v0.7.0

Latest

Choose a tag to compare

@github-actions github-actions released this 18 Jul 08:41

🚀 Release @addon-core/storage v0.7.0 (2026-07-18)

💥 Breaking Changes

  • LockManager is now exported as WebLockManager. Update package-root imports to
    use WebLockManager; the old LockManager alias is not retained.

  • set rejects undefined, and flat keys or namespaces containing ":" are rejected.
    Unnamespaced SecureStorage keys now use secure:: instead of secure:, so legacy
    ciphertext requires explicit raw migration. Listener data or corruption errors now terminate the
    affected registration and surface asynchronously.

  • support aggregate batch update comparison

✨ Features

  • add batch storage operations and subscriptions (dff46a7)

    • add multi-key overloads for get, set, and update
    • add subscribe with FIFO event formatting and keep watch as a per-key projection
    • align Storage, SecureStorage, and MonoStorage locking, corruption, recovery, and no-op semantics
    • introduce strict physical-key decoding and explicit SecureStorage legacy migration
    • cover runtime, type-level, locking, codec, React, and batch-planner behavior
  • helpers: add functional storage API (5c2c43c)

    • add one-shot get/set and provider factories for all storage areas
    • support secure and mono providers through typed overloads
    • document provider reuse and cover runtime and type contracts
  • support aggregate batch update comparison (18d9e78)

  • types: support storage without explicit state (70dce43)

    • add default state generics across providers, factories, and related public types
    • preserve strict schema typing while documenting the loose playground mode
    • cover genericless and typed usage with compile-time assertions

📝 Documentation

  • restructure README around functional API (f7f841b)

    • make functional helpers and storage-area selection the primary onboarding path
    • consolidate class, batch, locking, watch, secure, and MonoStorage documentation
    • clarify provider scope, recovery behavior, public errors, and runtime limits
  • update package description (053e844)

    Highlight the functional API, type safety, batch operations,
    encryption, and subscriptions in npm package metadata.

🧹 Chores

  • release: align breaking-change bumps before 1.0 (96c550c)

    • treat breaking commits as minor releases on 0.x and major releases on 1.x
    • recognize bang syntax, parser flags, notes, and breaking footers consistently
    • preserve the minor release policy for revert commits
    • add focused release-policy tests and contributor documentation

🛠️ Refactoring

  • locking: rename LockManager to WebLockManager (daecdaa)

    • move the Web Locks implementation and tests into src/locking
    • add a locking barrel and re-export built-in lockers from the package root
    • keep WebLockManager as the default locker for storage providers
    • document the built-in implementation and verify its public type export

🙌 Contributors