Richard Gibson
5d79c64663
Deferred: Stop inventing jQuery.when() resolution values
...
Fixes gh-3442
Closes gh-3445
2016-12-16 11:45:35 -05:00
Oleg Gaidarenko
58c6ca9822
Build: ESLint details
...
Use eslint pragmas, fix new errors, etc
Closes gh-3148
2016-06-11 10:41:33 +03:00
Michał Gołębiowski
d5dae259eb
Deferred: Propagate progress correctly from unwrapped promises
...
Progress parameters are now correctly propagated from a deferred to which
another deferred resolved unwrapping it.
Thanks to @gibson042 for the report and a clear description of the problem
and the needed fix.
Fixes gh-3062
Closes gh-3150
2016-06-09 14:53:34 +02:00
Dave Methvin
07c11c03cc
Deferred: Give better stack diagnostics on exceptions
...
Ref gh-2736
The exception stack has the name of the immediately outer function where the
exception occurred, which can be very handy for tracing errors. Since we already
have the exception object we might as well use it.
2016-05-11 20:21:04 -04:00
Richard Gibson
de71e9755f
Deferred: Make jQuery.when synchronous when possible
...
Closes gh-3102
Fixes gh-3100
Closes gh-3105
2016-05-09 12:14:22 -04:00
Richard Gibson
356a3bccb0
Deferred: Separate the two paths in jQuery.when
...
Single- and no-argument calls act like Promise.resolve.
Multi-argument calls act like Promise.all.
Fixes gh-3029
Closes gh-3059
2016-05-02 12:30:31 -04:00
Richard Gibson
7f1e59343b
Deferred: Provide explicit undefined context for jQuery.when raw casts
...
Fixes gh-3082
Closes gh-3084
2016-04-27 15:33:12 -04:00
Richard Gibson
76084372c2
Deferred: Remove default callback context
...
Employs strict mode to simplify Deferred callback context handling.
Fixes gh-3060
Closes gh-3061
2016-04-23 00:30:48 -04:00
Michał Gołębiowski
6072d150d6
Docs: Update support comments to follow the new syntax
...
The changes follow the spec proposed in:
https://github.com/jquery/contribute.jquery.org/issues/95#issuecomment-69379197
2016-03-30 23:45:17 +02:00
Michał Gołębiowski
5c01cb1cc4
Tests: Fix Deferred tests in Android 5.0's stock Chrome browser & Yandex.Browser
...
Some Chrome versions newer than 30 but older than 42 display the "undefined is
not a function" error, not mentioning the function name. This has been fixed
in Chrome 42. Relax two tests to allow for this divergence in older Chromoiums.
This affects our Android 5.0 & Yandex.Browser testing.
2016-01-20 13:54:31 +01:00
Dave Methvin
36a7cf9b1e
Deferred: Warn on exceptions that are likely programming errors
...
Fixes gh-2736
Closes gh-2737
2016-01-13 12:39:58 -05:00
Dave Methvin
bdf1b8f317
Deferred: Remove undocumented progress notifications in $.when
...
Fixes gh-2710
Closes gh-2816
2016-01-13 12:21:17 -05:00
Timmy Willison
78b9eac119
Deferred: syncronize single and multiple target handling in $.when
...
Fixes gh-2546
Fixes gh-2018
Close gh-2707
2015-11-13 11:16:26 -05:00
Oleg Gaidarenko
c8d15a2f9f
Tests: further improvements QUnit 2.0 migration
...
* Remove QUnit jshint globals
* Extend QUnit.assert methods
* Use assert.async instead of start/stop/done
Ref b930d14ce6
2015-09-08 04:06:20 +03:00
Oleg Gaidarenko
10fdad742a
Build: Update jscs and lint files
...
Fixes gh-2056
2015-09-07 20:03:50 +03:00
Oleg Gaidarenko
b930d14ce6
Tests: partially use new qunit interface
...
http://qunitjs.com/upgrade-guide-2.x/
For most of the boring work was used
https://github.com/apsdehal/qunit-migrate package
However, it can't update local qunit helpers, plus in some places
old QUnit.asyncTest signature is still used
Fixes gh-2540
2015-08-16 09:02:01 +03:00
Michał Gołębiowski
1c59b308d2
Build: Acknowledge Android 2.3 is not ES5-compatible
...
Android 2.3 chokes on unquoted reserved words being used as property names
which was making Deferred tests not run.
Acknowledge the sad fact that Android 2.3 is not ES5-compliant browser
and enable the "es3" option in JSHint config.
Fixes gh-2478
Closes gh-2481
2015-07-20 18:37:26 +02:00
Timmy Willison
84ccf2606c
Deferred: add .catch handler
...
Fixes gh-2102
2015-07-06 10:47:30 -04:00
Richard Gibson
002240a6eb
Deferred: Always handle progress callbacks before done/fail
...
Fixes gh-2013
Fixes gh-2010
Closes gh-2210
2015-04-22 15:24:37 -04:00
Richard Gibson
555a50d340
Deferred: Backwards-compatible standards interoperability
...
Fixes gh-1722
Closes gh-1996
2015-03-20 02:00:17 -04:00
Nicolas HENRY
ab20d9d24f
Deferred: Fix $.when with resolved deferred and progress callbacks
...
Fixes gh-1894
Closes gh-1915
2014-12-25 15:39:28 +03:00
Daniel Herman
584a4af9c8
No ticket: add assertions for jQuery.when( array ). Close gh-1312.
2013-08-19 18:25:42 +02:00
Timmy Willison
0fa52c11cb
Update jshintrc to conform to new style guide. Conform to onevar and unused in tests. Fixes #13755 .
2013-04-09 11:59:31 -04:00
nanto_vi
e7fdda9819
Propagete context of returned deferred object in Deferred.then(). Fixes #13160
2013-01-07 02:49:15 +09:00
jaubourg
23d7cf0488
Deferred: .resolve(), .reject() and .notify() now set the callback context to the promise instance rather than the deferred instance ; .then() has also been amended. Fixes #11405 .
2012-12-07 15:14:12 +01:00
Erick Ruiz de Chavez
efc2d8b1a6
Fixing style for deferred.js unit tests. Close gh-973.
...
Close jquery/2012-dev-summit/#56
2012-10-16 08:24:18 -04:00
jaubourg
74cdd78497
deferred.promise(obj) should work with non-objects. Fixes #12521 . Much needed unit tests added!
2012-09-13 15:44:12 +02:00
Chad Killingsworth
de9bed319e
Make unit tests friendly to Closure Compiler. Closes gh-845.
...
Conflicts:
test/unit/effects.js
test/unit/offset.js
2012-07-05 15:52:42 -04:00
Rick Waldron
7ff3da186c
Unit tests are linted and passing.
2012-06-21 15:30:24 -04:00
jaubourg
f93a2f569d
Preserves context objects when multiple Deferreds are passed to $.when(). Context is an array containing the original contexts in order. When non-observable value is given, associated context is undefined. In case only a single non-observable value is given, context is the global object (thanks so much Function.prototype.apply!). Fixes #11749 .
2012-05-12 21:41:39 +02:00
Dave Methvin
c5fda2945c
Fix #11736 . Remove deprecated Deferred.isResolved/isRejected.
2012-05-11 15:02:18 -04:00
jaubourg
a41f240674
Makes Deferred implementation truly Promise/A compliant. Unit tests amended. Actually few changes required in jQuery's own source and we gained 8 bytes minified gzipped \o/.
2012-04-02 01:29:39 +02:00
jaubourg
2a9f0681de
Have Deferred.always return the object onto which it is currently attached to enable true chainability. Fixes #10723 . Unit tests added.
2011-11-09 01:02:29 +01:00
Mike Sherov
f35ba5e699
Fix #10691 . Remove all instances of equals() and same(), as these are deprecated in QUnit.
2011-11-06 15:27:42 -05:00
jaubourg
d29182e8d0
Removes isPending and introduces state as a means to retrieve the Deferred/Promise state. Unit tests amended.
2011-10-11 20:23:56 -04:00
jaubourg
749d32a290
isProgressing becomes isPending. Unit tests added.
2011-10-04 12:08:46 -04:00
jaubourg
4092e3d275
$.Callbacks, $.Topic and notify/progress on $.Deferred.
2011-09-19 15:42:30 -04:00
jaubourg
139135a98a
Fixes #9446 . Context is properly propagated using pipe. If context was the original deferred, then context is updated to next deferred in the chain. Unit tests added.
2011-07-01 01:51:50 +02:00
jaubourg
8c13cfa805
Fixes #9104 . Returning null or undefined in a pipe callback shouldn't end up throwing an exception. Silly, silly, me.
2011-05-09 10:01:20 +02:00
jaubourg
7a1c6beab0
Renames chain as pipe.
2011-04-08 17:35:08 +02:00
jaubourg
bb99899ca0
Adds always and chain methods to deferreds.
2011-04-07 05:49:32 +02:00
jaubourg
2d0bc7ce72
Moves Deferred-related code into a separate module. Context handling has been simplified in _Deferred.resolve and jQuery.when has been refactored for clarity (and minor optimization).
2011-03-03 19:38:06 +01:00