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
- Actively maintained: there is a very recent update (v1.1.1 on 2026-06-08), and earlier updates continue with no multi-year gaps, suggesting ongoing stewardship rather than maintenance mode.
- Update cadence: at least one update within 2024-12 and another in 2026-06, which implies a slower but still current rhythm (the evidence only shows these tagged points, not every commit).
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.