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. |