338 lines
11 KiB
Markdown
338 lines
11 KiB
Markdown
# Master
|
||
|
||
# 4.8.5
|
||
|
||
* remove try/catch performance hacks, modern runtimes no longer require these tricks
|
||
* internal tooling improvements
|
||
|
||
# 4.8.2
|
||
|
||
* restore cast for 4.x
|
||
|
||
# 4.8.1
|
||
|
||
* Confuse Webpack (make is easier to pack this module)
|
||
|
||
# 4.8.0
|
||
|
||
* reject promise when non-array promise is passed to RSVP.filter
|
||
* fix issue with registering event callbacks
|
||
* remove publishing to S3 and rely on `npm` and `jsdelivr.com` instead
|
||
* general cleanup
|
||
|
||
# 4.7.0
|
||
|
||
* Release the same code as 4.0.2 but as 4.7.0 (fixes issues with `npm outdated`, `yarn update-interactive`, etc caused by accidental publishing of 4.6.1).
|
||
|
||
# 4.0.2
|
||
|
||
* Fix issue which occurs when you have a `.finally` after a promise has rejected with no rejection value.
|
||
|
||
# 4.0.1
|
||
|
||
* Fix bug in `RSVP.filter` where it would only respect explicitly `true` values (unlike `[].filter` which allows truthy values).
|
||
|
||
# 4.0.0
|
||
|
||
* remove es3 fallbacks
|
||
* make map/filter eager
|
||
|
||
# 3.5.0
|
||
|
||
* expose RSVP.asap for access to the micro-task polyfil
|
||
|
||
# 3.4.0
|
||
|
||
* [BUGFIX] Fix memory leak [#446]
|
||
* Mirror Node's LTS policy
|
||
* add dist/rsvp.es.js (bundle as a single ES module file)
|
||
* fix typo in readme
|
||
|
||
# 3.3.3
|
||
|
||
* [BUGFIX] Fix asap for Titanium \w webpack usage.
|
||
|
||
# 3.3.2
|
||
|
||
* [BUGFIX] fix invalid ES6
|
||
|
||
# 3.3.1
|
||
|
||
* [BUGFIX] for compat, ensure both default export and property export exist. This will likely go away in 4.0.0, and was the result of rollup producing proper output with `__esModule: true` brand
|
||
|
||
# 3.3.0
|
||
|
||
* improve build, switch to broccoli-rollup (among other things)
|
||
* RSVP.filter() now itself accepts a Promise.all as input
|
||
* compress and mangle prod build output
|
||
* [REVERT] reject instead of throwing, spec violation.
|
||
|
||
# 3.2.1
|
||
|
||
* reject instead of throwing
|
||
|
||
# 3.2.0
|
||
|
||
* add tamper protection - then / resolve tampering should avoid fast-paths the rely on those being predictable
|
||
* improve performance of Enumerator operating on non-promise objects
|
||
* Ensure the promise constructor continues to get inlined.
|
||
|
||
# 3.1.0
|
||
|
||
* `RSVP.on('error', function(reason, label) { ... }` now also provides the
|
||
rejected promises label.
|
||
|
||
# 3.0.21
|
||
|
||
* actually don't publish built tests to npm
|
||
|
||
# 3.0.20
|
||
|
||
* correctly publish bower & npm
|
||
|
||
# 3.0.19
|
||
|
||
* don't publish built tests to npm
|
||
|
||
# 3.0.18
|
||
|
||
* issue with phantomjs 2.0 on travis. I have lost patience..
|
||
* test on iojs and node 0.12
|
||
* bump ember-cli
|
||
* Support objects not inheriting from Object.prototype in RSVP.hash()
|
||
|
||
# 3.0.17
|
||
|
||
* Added browser field to fix browserification
|
||
* Fix stripping source map
|
||
* Fix duplicate imports
|
||
* Remove unused loader.js dependency
|
||
* Add the ember-cli dependency checker
|
||
* Remove the duplicate build script
|
||
* Remove the static middleware
|
||
* add npm run build:production
|
||
* browserify extern not needed
|
||
* also add lib for those es6 peeps
|
||
* enusre only dist is included in publishes
|
||
* strip source maps for now.
|
||
* copy correct tree into test
|
||
* prefer start to server
|
||
* use git-repo-version
|
||
* ah, prod builds used rename correctly.
|
||
* remove rename, prefer mv for this scenario
|
||
* prepend license
|
||
* Revert "node 0.10.x doesn’t like this. Its not really needed just run `npm run test` or `npm run test:ci`"
|
||
* node 0.10.x doesn’t like this. Its not really needed just run `npm run test` or `npm run test:ci`
|
||
* move stuff around + bump to broccoli-stew 0.0.3
|
||
* bump broccoli-stew which now supports globs
|
||
* Problem with path for vertx.js.
|
||
|
||
# 3.0.16
|
||
|
||
* use more supported version of export default
|
||
* more broccoli fun
|
||
* remove accidentally imported map file
|
||
* test non-minified (we can add a flag to test minified next)
|
||
* [BUGFIX release] Replace closure compiler
|
||
|
||
# 3.0.15
|
||
|
||
* Added Node 0.11 to travis ci test runner
|
||
* Replaced deprecated process.nextTick with setImmediate
|
||
* Ember test and npm run test:node passing
|
||
* (origin/upgrade-tooling) upgrade tooling
|
||
* Fix onerror test
|
||
* [fixes #322] don't inform instrumentation of errors until the current turn is complete.
|
||
* Follow thenable state not own state
|
||
* Correct minor spelling error in defer doc example
|
||
* Set [[AlreadyResolved]] as soon as resolve is called
|
||
* Finally should correctly trigger on('error')
|
||
* [fixes #294] finally work correctly with on(‘error’)
|
||
* Use git-repo-version to calculate build signature
|
||
* yay the new transpiler supports this now!!!
|
||
* Use the latest version of the transpiler
|
||
* add subclassing tests to finally
|
||
* extern event emitter stuff
|
||
* [fixes #309] some more externs
|
||
* ensure those select few using node with minified JS don't have an issue
|
||
* [fixes #302] use @calvinmetcalf’s promises-aplus-tests-phantom
|
||
|
||
# 3.0.14
|
||
|
||
* Instrumentation with stack is now opt-in
|
||
* improve cost of instrumentation by up to 15x in chrome
|
||
* reduce AST size
|
||
* last vertex related touch-ups.
|
||
* Add vert.x compatibility.
|
||
* [fixes #296] for define.amd and module.exports to no minify
|
||
* [fixes #292] ensure the deferred's api doesn't break when minified
|
||
* ignore some files for npm
|
||
* Add 'finally' to readme
|
||
* Use browserify assert instead of vendoring one
|
||
* Use mocha and json3 from npm, not bower
|
||
* Remove unused json2 file
|
||
* upgrade build tooling
|
||
* improve performance of instrumentation (also add seperate flag to include "stack" with instrumentation as it is unfortunately slow)
|
||
* ensure minified RSVP.defer() maintains known external API [#293](https://github.com/tildeio/rsvp.js/pull/293)
|
||
* add `finally` to the readme
|
||
* improve usage of browserify for promise/a+ tests
|
||
* add wasteful files to gitignore
|
||
* add [vert.x](http://vertx.io/) compatibility
|
||
|
||
# 3.0.13
|
||
|
||
* [Bugfix] fix `RSVP.hash` `RSVP.hashSettled` in runtimes < es5 by fixing a broken `Object.create` polyfil [#286](https://github.com/tildeio/rsvp.js/pull/286)
|
||
* [Enhancement] cleanup & improve test related build tooling [#288](https://github.com/tildeio/rsvp.js/pull/288)
|
||
|
||
# 3.0.12
|
||
|
||
* [Bugfix] fix regression in denodeify that broke foreign thenables as arguments to denodeifed functions [#281](https://github.com/tildeio/rsvp.js/pull/281)
|
||
|
||
# 3.0.11
|
||
|
||
* [Bugfix] some onerror scenarios did not result in error notifications [4dcf](https://github.com/tildeio/rsvp.js/commit/4dcfa92bab6f5fc9e97ca3abfb71025a08984e7e)
|
||
* [Bugfix] for more correctness internal optimization should only occure
|
||
if constructors equal, not just if instanceof check passes [96b5ec](https://github.com/tildeio/rsvp.js/commit/96b5ec201b2ddafc70cd5c836bc341a46081ae23)
|
||
* fancy new s3 publishing thanks to @rondale-sc
|
||
|
||
# 3.0.10
|
||
|
||
* faster denodeify
|
||
* rework tooling (Broccoli, testem, no grunt)
|
||
* utilize bundle format for super small UMD builds
|
||
|
||
# 3.0.9
|
||
* [Bugfix] no longer include promise-aplus tests as a production
|
||
dependency
|
||
* [Enhancement] fast then path for both rejection/fulfilment [0d252](https://github.com/tildeio/rsvp.js/commit/0d252ed4831eabb82991584e2e3eaae2a3a2ba42)
|
||
* [Enhancement] short-cut for faster then chaining in specific scenarios
|
||
[#256](https://github.com/tildeio/rsvp.js/pull/256)
|
||
|
||
# 3.0.8
|
||
* [Bugfix] custom onerror handler, for potentially unhandled errors
|
||
would report unhandled errors in some incorrect scenarios.
|
||
[#255](https://github.com/tildeio/rsvp.js/pull/255)
|
||
|
||
# 3.0.7
|
||
|
||
* improve tests in some older es5+ browsers
|
||
* [Bugfix] denodeify should not use console for deprecation warning unless console is defined
|
||
* [Enhancement] instrumentation should emit out-of-band. This should improve ember-extension performance
|
||
* [Bugfix] race should not be susceptible to zalgo
|
||
* [Perf] PromiseEnumerator increase performance of all enumerable methods all/allSettled/hash/hasSettled -> https://gist.github.com/stefanpenner/26465d5848f2924e2aca
|
||
* [Docfix] Fix small documentation inconsistency
|
||
* [Perf] an internal promise shouldn't bother validating `this` and `resolver`
|
||
* [Perf] flatten asap’s QUEUE structure
|
||
* [Perf] Reduce Constructor AST size.
|
||
* [Perf] some versions of v8, think keep marking these functions to be optimized. This hints to them not to be.
|
||
* [Perf] accidental resolve step, that merely needed to be a fulfill
|
||
* [Perf/Enhancement] simplify publishing
|
||
* [Spec ADdition]add spec test “Ensure `then` is always called with a clean stack.” ensure RSVP passes future a+ spec
|
||
* [Bugfix] web worker support
|
||
* [Docfix] Add a param name to make yuidoc happy
|
||
* [Enhancement] simplify async vs sync pub/sub code-paths
|
||
* [Bugfix] Passed the label through to the Promise object, as expected
|
||
* [Docfix] missing Parentheses on promise example in documentation
|
||
* [License] Add Stefan Penner to license
|
||
* [Docfix] document `var promises` in filter.js
|
||
|
||
# 3.0.3 -> 3.0.6 (missing changelog)
|
||
|
||
* Changes to RSVP.denodeify: Behaviour for multiple success callback parameters
|
||
has been improved and the denodefied function now inherits from the original
|
||
node function.
|
||
|
||
# 3.0.2
|
||
|
||
* [Spec compliance] Promise.all and Promise.race should reject, not throw on invalid input
|
||
* Add RSVP.allSettled
|
||
|
||
# 3.0.1
|
||
|
||
* Optimization: promises with noop resolvers now don't bother try to handle them.
|
||
* [perf] skip costly resolver invocation if it is known not to be needed.
|
||
* improve promise inspector interopt
|
||
|
||
# 3.0.0
|
||
|
||
* align with the promise spec
|
||
https://github.com/domenic/promises-unwrapping
|
||
* idiomatic es6 usage
|
||
* RSVP.all: now casts rather then resolves, and doesn't touch the
|
||
"then"
|
||
* RSVP.hash: now casts rather then resolves, and doesn't touch the
|
||
"then"
|
||
* MutationObserver: prefer text mutation, this fixes interop with
|
||
MutationObserver polyfils
|
||
* Removing asap unload listener. Allows back/forward page cache, chrome
|
||
bug is old. Fixes #168
|
||
* add grunt docs task
|
||
* document: Promise.cast
|
||
* document: Promise.resolve/Promise.reject
|
||
* document: Promise.race
|
||
* document: Promise.all
|
||
* document: Promise.hash
|
||
* document: RSVP.denodeify
|
||
* document: RSVP.EventTarget
|
||
* document: RSVP.rethrow
|
||
* document: RSVP.defer
|
||
* Document: RSVP.on('error'
|
||
* Add Instrumentation hooks for tooling
|
||
* Significant internal cleanup and performance improvements
|
||
* require Promise constructor to be new'd (aligned with es6 spec)
|
||
* Prefer tasks + config inline within project
|
||
* Add Promise.finally
|
||
* Add Promise.cast
|
||
* Add Promise.resolve
|
||
* Add Promise.reject
|
||
* Add Promise.all
|
||
* Add Promise.race
|
||
* Add RSVP.map
|
||
* Support promise inheritance
|
||
* optimize onerror and reduce promise creation cost by 20x
|
||
* promise/a+ 2.0.3 compliant
|
||
* RSVP.async to schedule callbacks on internal queue
|
||
* Optimization: only enforce a single nextTick for each queue flush.
|
||
|
||
# 2.0.4
|
||
|
||
* Fix npm package
|
||
|
||
# 2.0.3
|
||
|
||
* Fix useSetTimeout bug
|
||
|
||
# 2.0.2
|
||
|
||
* Adding RSVP#rethrow
|
||
* add pre-built AMD link to README
|
||
* adding promise#fail
|
||
|
||
# 2.0.1
|
||
* misc IE fixes, including IE array detection
|
||
* upload passing builds to s3
|
||
* async: use three args for addEventListener
|
||
* satisfy both 1.0 and 1.1 specs
|
||
* Run reduce tests only in node
|
||
* RSVP.resolve now simply uses the internal resolution procedure
|
||
* prevent multiple promise resolutions
|
||
* simplify thenable handling
|
||
* pre-allocate the deferred's shape
|
||
* Moved from Rake-based builds to Grunt
|
||
* Fix Promise subclassing bug
|
||
* Add RSVP.configure('onerror')
|
||
* Throw exception when RSVP.all is called without an array
|
||
* refactor RSVP.all to just use a promise directly
|
||
* Make `RSVP.denodeify` pass along `thisArg`
|
||
* add RSVP.reject
|
||
* Reject promise if resolver function throws an exception
|
||
* add travis build-status
|
||
* correctly test and fix self fulfillment
|
||
* remove promise coercion.
|
||
* Fix infinite recursion with deep self fulfilling promises
|
||
* doc fixes
|
||
|
||
# 2.0.0
|
||
|
||
* No changelog beyond this point. Here be dragons.
|