Back to Explore

inspect-js/which-builtin-type

GitHub
2 watchersOpen source

Last release:

which-builtin-type determines the type of a built-in JavaScript value, working across realms without relying on instanceof and without being misled by a constructor property. It is useful when you need a reliable way to classify values like arrays, typed arrays, dates, regexes, numbers, and functions.

Project status

  • The source shows some ongoing activity on GitHub (last upstream push 2026-03-16), but the most recent tagged which-builtin-type updates in the provided history were published on 2024-12-13 (v1.2.1), suggesting relatively infrequent packaged updates rather than rapid release cycles.
  • Update cadence appears sporadic: earlier updates are spaced by months to years (examples in the history include 2024-07-29, 2024-11-23, 2024-12-13, then no newer published update shown after 2024-12-13), with a noticeable gap before the next upstream push in 2026.

AI summary generated

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

Recent updates

  • v1.2.1

    This release (v1.2.1) appears to be a dependency and internal refactor update, with no explicit user-facing release notes provided by the publisher. The code change is small (index.js swap from call-bind to call-bound), while package.json updates multiple dependency versions and slightly alters CI workflows.

  • v1.2.0

    v1.2.0 adds first-party TypeScript definitions (index.d.ts) and updates the runtime implementation to use call-bind/callBound for Promise.prototype.then access. There are also CI workflow changes for the Node 10-20 and 20+ test ranges, plus dependency bumps (notably is-finalizationregistry). No release notes were provided by the publisher.

    Features
  • v1.1.4

    Release v1.1.4 was published on 2024-07-29, but the publisher did not provide any release notes. No specific changes, fixes, or migration guidance are documented in the provided information.

  • v1.1.3

    No release notes were provided for v1.1.3. The code diff indicates this release is primarily publishing and packaging metadata updates (exports/package metadata, npmignore generation, and CI workflow changes), plus some dev dependency bumps.

  • v1.1.2

    Release v1.1.2 is primarily a dependency and internal refactor update for which-builtin-type. The provided release notes are empty (none given), so the actual behavior-affecting change is not documented there.

  • v1.1.1

    This release (v1.1.1) updates the internal logic used to determine Symbol.toStringTag availability and bumps several dependencies, including linting and runtime packages. The only functional code change shown is a refactor of the @@toStringTag detection mechanism in the main entrypoint.

  • v1.1.0

    This release (v1.1.0) significantly expands `which-builtin-type` detection for modern builtins like `Promise`, `WeakRef`, and `FinalizationRegistry`, and adds logic intended to prevent spoofed builtins via `constructor` and `Symbol.toStringTag`. No release notes were provided by the publisher, so the practical changes should be inferred from the code diff.

    Features
  • v1.0.1

    This release (v1.0.1) appears to be largely tooling and dependency related, with changes focused on CI workflows, test/coverage setup, and various dev and runtime package bumps. The only direct code change shown in the diff is inside the test suite, and the public entrypoint implementation is not modified in the provided diff.

  • v1.0.0

    This release is v1.0.0, published on 2020-01-25. No release notes were provided by the publisher, so there is no documented information about new features, fixes, breaking changes, or migration steps.