Alexandro.Net

Version 1.0.2

@stackline/es6-promise

A lightweight library that provides tools for organizing asynchronous code

Independent maintenance of es6-promise 4.2.8. Original authors and licenses are retained.

Installation

# Preserve existing imports with an npm alias
npm install es6-promise@npm:@stackline/es6-promise@1.0.2
# Or use the scoped package name in your imports
npm install @stackline/es6-promise@1.0.2

Node.js: See compatibility notes. Read the compatibility and maintenance notes before migrating.

Usage and API

@stackline/es6-promise

A lightweight library that provides tools for organizing asynchronous code.

npm version license GitHub repository Docs Reddit community

Documentation | npm | Issues | Repository

Current package version: 1.0.2


Why this package?

@stackline/es6-promise is the Stackline-maintained distribution of es6-promise@4.2.8. It is an independent continuation of es6-promise; original authors and licenses remain credited below.

Compatibility

Item Value
Package @stackline/es6-promise@1.0.2
API target es6-promise@4.2.8
Supported Node.js See supported framework requirements
License MIT
Main entry dist/es6-promise.js
Types es6-promise.d.ts
Runtime dependencies none

Installation

npm install @stackline/es6-promise

Preserve existing imports and plugin resolution with an npm alias:

npm install es6-promise@npm:@stackline/es6-promise

Usage and API reference

ES6-Promise (subset of rsvp.js) Build Status

This is a polyfill of the ES6 Promise. The implementation is a subset of rsvp.js extracted by @jakearchibald, if you're wanting extra features and more debugging options, check out the full library.

For API details and how to use promises, see the JavaScript Promises HTML5Rocks article.

Downloads

CDN

To use via a CDN include this in your html:


<script src="https://cdn.jsdelivr.net/npm/es6-promise@4/dist/es6-promise.js"></script>
<script src="https://cdn.jsdelivr.net/npm/es6-promise@4/dist/es6-promise.auto.js"></script> 


<script src="https://cdn.jsdelivr.net/npm/es6-promise@4/dist/es6-promise.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/es6-promise@4/dist/es6-promise.auto.min.js"></script> 

Node.js

To install:

yarn add @stackline/es6-promise

or

npm install @stackline/es6-promise

To use:

var Promise = require('@stackline/es6-promise').Promise;

Usage in IE<9

catch and finally are reserved keywords in IE<9, meaning promise.catch(func) or promise.finally(func) throw a syntax error. To work around this, you can use a string to access the property as shown in the following example.

However most minifiers will automatically fix this for you, making the resulting code safe for old browsers and production:

promise['catch'](function(err) {
  // ...
});
promise['finally'](function() {
  // ...
});

Auto-polyfill

To polyfill the global environment (either in Node or in the browser via CommonJS) use the following code snippet:

require('@stackline/es6-promise').polyfill();

Alternatively

require('es6-promise/auto');

Notice that we don't assign the result of polyfill() to any variable. The polyfill() method will patch the global environment (in this case to the Promise name) when called.

Building & Testing

You will need to have PhantomJS installed globally in order to run the tests.

npm install -g phantomjs

Credits and original authors

Original copyright, license notices and contributor acknowledgements remain part of this distribution. Stackline maintenance does not replace authorship of the original work.

License

MIT. See the license and notice files in the repository.

Community and Links

Use this repository's issue tracker for reproducible bugs and feature requests. Join r/Stackline for examples, usage questions and release discussions.

Upstream issues and maintenance review

Upstream review

Source: es6-promise@4.2.8, 1e68dce6f674e5613f4a1797aedd55dc70ac1dcb. Published upstream source files match the integrity-verified npm tarball. Generated distributions are rebuilt using current development tools; original library source, license and API contracts are retained.

Issue review (2026-09-29)

No upstream maintainer was contacted. These are scoped compatibility decisions rather than claims that every issue was solved.

Verification

Run npm ci --ignore-scripts, npm run build, npm test, npm run test:package, and npm audit --audit-level=low. CI and CodeQL must pass before the exact built tarball is published with provenance.

The original scheduler and Promise extension suites execute unchanged with a current Mocha runner. The obsolete PhantomJS/Ember test wrapper is replaced by direct Node tests and a real Chromium auto-polyfill check. The historical PhantomJS-specific Promises/A+ wrapper is not represented as a newly executed certification suite.

Release changes

Stackline changes

1.0.0

Master

4.2.5

4.2.4

4.2.3

4.2.2

4.2.1

4.2.0

4.1.0

4.0.5

4.0.4

4.0.3

4.0.2

4.0.0

3.3.1

3.3.0

3.2.2

3.2.1

3.2.0

3.1.2

3.1.0

3.0.2

3.0.1

3.0.0

2.3.0

2.2.0

2.1.1

2.1.0

2.0.0

1.0.0

Release files and references

Package bytes, npm provenance and the immutable GitHub release were verified for this version. Security checks describe the reviewed release; documented compatibility risks and upstream reports are not blanket claims of resolution.