This is-promise is a small utility that checks whether a value looks like a Promises/A+ promise, returning true for objects that match the expected shape. It is useful for runtime validation in JavaScript or TypeScript when you need to distinguish promise-like values from non-promises.
Project status
- The repository appears quiet rather than actively maintained, with the last upstream push on 2023-04-29 and no recent updates shown beyond a cluster of changes in 2020.
- Update cadence looks sporadic, with multiple breaking packaging and typing changes concentrated in April 2020, and then a long gap with no evidence of ongoing iteration through 2026-09-10.
AI summary generated
Recent updates
4.0.0
Release 4.0.0 updates the TypeScript type definitions for the `is-promise` function to recognize `PromiseLike` instead of only `Promise`. This is a TypeScript breaking change intended to reflect the library's duck-typing behavior rather than strict `instanceof Promise` checks.
Breaking3.0.0
Release 3.0.0 introduces Node conditional exports and aligns ES Module usage to default importing, and it ships bundled TypeScript definitions. The package metadata changes are consistent with the release notes, and additional CI and import/typing tests were added to validate CommonJS, ESM, and TypeScript consumption.
BreakingFeatures2.2.2
Release 2.2.2 removes the package's ESM support that was introduced in 2.2.0. The code diff shows this is accomplished by deleting the package.json exports map, which previously pointed ESM imports to index.mjs.
Breaking2.2.1
Release 2.2.1 claims to have attempted an ESM-related fix, but states that importing the package.json file is still broken for some users. The code diff shows only packaging metadata changes (package.json), not any runtime implementation changes.
2.2.0
Release 2.2.0 adds TypeScript definition files and support for ES Module style default imports. However, the release notes warn that version 2.2.0 is broken, and recommends upgrading to 2.2.2 instead.
BreakingFeatures