side-channel is a JavaScript utility for storing extra information associated with any JS value using a side channel, using WeakMap when available. It provides methods to set, get, check, assert, and delete that stored data, and in environments without WeakMap it can leak memory until you delete the key.
Project status
- The repository appears actively maintained, with the latest upstream push on 2026-06-08 and a follow-on update (v1.1.1) the same day, which is only a few months before today (2026-09-10).
- Update cadence looks bursty rather than steady: there was a long gap between v1.1.0 (2024-12-11) and the next updates in 2026-06, but then a quick patch release occurred (v1.1.1).
AI summary generated
Recent updates
v1.1.1
v1.1.1 contains a targeted change to `getSideChannel().assert` behavior when a missing key triggers an error, plus some CI/workflow and dependency version bumps. No release notes were provided for this version, so the practical change is only discoverable by inspecting the diff.
v1.1.0
No release notes were provided by the publisher for v1.1.0. The code diff for v1.0.6 to v1.1.0 shows a substantial internal refactor to delegate storage to new helper packages, adds a new `channel.delete` API, and changes the public TypeScript typings.
v1.0.6
v1.0.6 adds first-party TypeScript support by introducing an index.d.ts file and wiring it into package.json. The code changes shown are primarily type annotation (JSDoc) and development tooling updates, plus a small dependency bump for call-bind.
Featuresv1.0.5
Release v1.0.5 was published on 2024-02-06, but the publisher did not provide any release notes. As a result, the specific code changes, potential breaking changes, bug fixes, or security updates cannot be determined from the provided information.
v1.0.4
No release notes were provided for v1.0.4. The code changes primarily refactor the internal non-WeakMap “object side channel” storage from an array to a linked list, and it updates runtime dependencies (switching from es-abstract to call-bind and get-intrinsic) plus various CI/test tooling updates.
v1.0.3
Release v1.0.3 includes no human-authored release notes. The diff shows mostly automation and dependency updates, plus a new package exports entry for ./package.json and a change to CI workflow trigger behavior.
Featuresv1.0.2
This release is primarily a dependency update. The only code-diff changes are to CHANGELOG.md (adding the v1.0.2 entry) and package.json (version bump plus dependency version bumps), with no direct source code modifications shown.
v1.0.1
v1.0.1 primarily updates the package metadata. The code diff shows a version bump, the addition of a package.json "exports" map, and a corresponding changelog entry referencing a missing exports fix.
v1.0.0
This release is tagged v1.0.0, but the publisher provided no release notes. As a result, there is no documented information about new features, bug fixes, breaking changes, security updates, or dependency changes in the provided data.