Commit Graph

819 Commits

Author SHA1 Message Date
jaubourg
c272f5f7da Implements joined jQuery.when statements. Makes it so calling jQuery.when with no parameter returns a resolved promise. Ensures promise method on promises supports the promise(obj) signature. Ensures a deferred and its promise always return the same promise (itself for the promise). Unit tests provided. 2011-01-16 17:41:39 +01:00
jaubourg
cfca6d3836 Fixed the ajax test regarding the jsonp option set to false and added a test to control the prefilter actually does not tamper with the url. 2011-01-16 05:36:20 +01:00
jaubourg
0e93b2e24c Revised jsonp unit tests and added a test for when the jsonp option is set to false. 2011-01-16 05:27:16 +01:00
jaubourg
8ab23aec2c Fixes #2994. Not finding a transport now fires the error callbacks and doesn't make ajax return false. Had to revise how jsonp and script prefilters & transports work (better separation of concerns). Also took the opportunity to revise jXHR getRequestHeader and abort methods and enabled early transport garbage collection when the request completes. 2011-01-16 02:57:39 +01:00
wycats
f4add19759 So embarrassing :( 2011-01-14 12:46:22 -05:00
wycats
fa45f25d1c Fix a failing subclass test due to a change in master 2011-01-14 11:17:32 -05:00
wycats
3716f2d041 Overwrite CRLF with LF 2011-01-14 10:39:06 -05:00
Jared Grippe
d483ce0a9c added jQuery.subclass 2011-01-14 10:38:32 -05:00
jaubourg
44fc87f66c Fixes #4964. Adds a statusCode object together with a new statusCode method on the jXHR object (deferred behaviour). They accept a map of statusCode/callback(s). Callbacks are fired when the status code of the response correponds to the key (as a success or an error callback depending on how the request completed). Unit tests added. 2011-01-13 17:01:25 +01:00
jaubourg
0c51e9d55f Fixes #4897. Added ?? as a context-insensitive placeholder for the callback name of a JSONP request. Unit tests provided. 2011-01-12 18:36:00 +01:00
jaubourg
f83cdc3c4c Yet another missing semicolon! 2011-01-11 23:43:02 +01:00
jaubourg
6504d4f700 Fixes #6230. Added a unit test to control that, since the ajax rewrite, setting the Accept header actually replaced the previous value and didn't append to it (tested in Safari 4.0.4 for which the problem was specifically reported). 2011-01-11 23:01:18 +01:00
jaubourg
5a721cf31b Fixes 4825. jQuery.fn.load: use the jXHR's Promise interface to get the actual response in case ajaxSettings contains a dataFilter. Unit test added. 2011-01-11 20:02:33 +01:00
Colin Snover
c5c1f18adb Merge branch 'master' of github.com:jquery/jquery into jquery-master 2011-01-09 18:41:15 -06:00
Colin Snover
b14f02899e Ensure that buildFragment clones elements properly in all browsers. Fixes #3879, #6655. Also improves form element clone tests and fixes bugs in $.fn.clone exposed by these new test cases related to the values of checkboxes and radio buttons in IE. 2011-01-09 18:38:44 -06:00
jaubourg
84319aa4a3 Fixes a race condition in JSONP Local test. 2011-01-10 00:52:20 +01:00
jaubourg
8c8bd3bf6a Fixes #5812. =? will be detected even when it has been escaped during data serialization. 2011-01-09 21:48:52 +01:00
jaubourg
7bc5386230 Simplified cross-domain detection tests. 2011-01-09 17:27:29 +01:00
jaubourg
5a5f67800b Fixes #5955. Option crossDomain now forces ajax to consider a request as cross-domain even when it is not. Useful for when servers issue redirects to cross-domain urls. Unit test added. 2011-01-09 16:50:13 +01:00
jaubourg
63487505c6 Added a test for retrying a request on error using jQuery.ajax(this). Works as intended. Fixes #7461. 2011-01-09 06:19:27 +01:00
jaubourg
afefb4f3d2 Fixes #7465. Reworked the regexp and associated test for cross-domain detection so that it now includes ports. Added cross-domain detection tests for protocol, hostname and port. 2011-01-09 06:01:00 +01:00
jaubourg
d515068ee8 Fixes #7868. ResponseText is now properly propagated for error callbacks. 2011-01-09 04:53:29 +01:00
jaubourg
69497c3fd7 Fixes #7881. Setting contentType to false will prevent the Content-Type header from being sent. Unit test added. 2011-01-09 04:28:42 +01:00
jaubourg
368f2441f6 Added missing commas. 2011-01-07 15:52:58 +01:00
jaubourg
1ca82ccd94 Renamed "complete" to "done" in order to avoid conflicts with jXHR.complete. 2011-01-06 01:26:06 +01:00
jaubourg
c43b078c69 Renamed src/transports to src/ajax (in case we need prefilters in the future and to avoid a separate prefilters directory). 2011-01-06 01:17:31 +01:00
Colin Snover
e56de77df9 Cleaning up trailing whitespace again. 2011-01-05 15:44:07 -06:00
wycats
ae6655bcb6 Revert "Register as a CommonJS async module if in that kind of environment. Fixes #7102."
This reverts commit 6ffa730721.

Conflicts:

	src/core.js
2011-01-05 13:26:05 -08:00
jaubourg
cbf591152c "then" renamed "complete" and new "then" method defined using "complete" and "fail" internally. The API is still symetrical (complete/fail), still promotes AOP but is also now Promise/A compliant. Changed unit tests and ajax module accordingly. 2011-01-05 04:29:30 +01:00
Dave Methvin
eed3803c98 When serializing text, encode all line breaks as CRLF pairs per the application/x-www-form-urlencoded specification. Fixes #6876. 2010-12-31 13:56:51 -06:00
jaubourg
6fb9759a75 Simplified the way a Promise is tested for (removed promiseMarker). Removed isCancelled helper method from _Deferred, wasn't used nor tested. Reworked jQuery.Deferred and removed unnecessary variables. Also ensured a Promise will return itself when asked for a Promise. Finally, the jQuery.when tests have been revamped. 2010-12-31 04:15:15 +01:00
jaubourg
6dbffb8596 Introduced a new promise method on deferreds that returns an immutable object (exposing then, fail, isResolved, isRejected and promise itself only). Remove $.isDeferred and moved logic directly into $.when. Made sure $.when returns a promise by using promise(). Used promise() in ajax code too. 2010-12-31 04:15:11 +01:00
jaubourg
6165cc45b7 Renamed several ajaxSettings options. Removed cors test, fixed failing cors test. 2010-12-31 04:15:09 +01:00
jaubourg
981d1e08eb Removed re-usability from jXHR object (no more open, send & onreadystatechange support). Streamlined the implementation and put it back into ajax.js (removed xhr.js in the process). Went back to a more simple & direct approach to options handling (keeping much room to further minification-related optimizations). Code is cleaner, smaller & faster. Removed & edited unit tests accordingly. All build files have had xhr.js removed. 2010-12-31 04:13:40 +01:00
unknown
240d8b681e Removed custom method in isDeferred and when. 2010-12-31 04:05:56 +01:00
unknown
23d455b446 Deferred cannot be cancelled by returning false in a callback. Exception in the callback are still propagated and execution of remaining callbacks is still possible. 2010-12-31 04:05:55 +01:00
unknown
2d4001b82c Capitalized Deferred & _Deferred to clearly mark them as new types, like Event. 2010-12-31 04:05:53 +01:00
unknown
22e28b01e6 Changed dataConverters key format. 2010-12-31 04:05:52 +01:00
jaubourg
5bacb53866 Added deferred to core. Used internally for DOM readyness and ajax callbacks. 2010-12-31 03:49:22 +01:00
Colin Snover
4eeae8b0bc Remove patch for very early versions of Opera 9 that made it impossible to animate values smaller than -10000. Fixes #7193. Thanks to igorw for initial patch & test case. 2010-12-30 01:23:08 -06:00
Colin Snover
3e0cc81504 Clean trailing whitespace from all files. 2010-12-30 00:34:48 -06:00
Dave Methvin
5fd21fc02b Don't cache non-html strings in buildFragment to avoid possible collision with the names of Object methods like toString. Also makes the unit tests 0.5% to 8% faster. Fixes #6779. 2010-12-27 13:43:52 -06:00
Dave Methvin
64ee5581af When a native browser event is bubbling up the DOM, make sure that the correct isDefaultPrevented value is reflected by jQuery's Event object. Fixes #7793. 2010-12-27 13:30:05 -06:00
jrburke
6ffa730721 Register as a CommonJS async module if in that kind of environment. Fixes #7102. 2010-12-27 13:03:27 -06:00
Colin Snover
82ac384b49 Don't use for-in loops on Arrays. Fixes #7817. Thanks to dmethvin.
Conflicts:
	src/manipulation.js
2010-12-22 18:32:33 -06:00
Colin Snover
e199ead4cb More unit tests and a $.hasData that works for JS objects too. 2010-12-22 15:03:01 -06:00
Colin Snover
f5d4bf8920 Update jQuery.hasData to always return a boolean, with unit tests. 2010-12-22 14:54:37 -06:00
Colin Snover
445fdf720c Remove code for ticket #7717 which has been marked WONTFIX to match existing $.data functionality and to prevent infinite loops caused by circular references. 2010-12-22 14:43:17 -06:00
Dave Methvin
4424bda377 Use a for loop rather than for/in loop when copying events, so that code will work with an augmented Array.prototype. Fixes 7809. 2010-12-20 22:23:59 -05:00
Colin Snover
faefbb1ad0 Fix #7717 and #7165. Thanks to dmethvin and iliakan for their help fixing these issues. 2010-12-19 15:33:53 -06:00