jaubourg [Sun, 23 Jan 2011 04:01:36 +0000 (05:01 +0100)]
Fixes some coding style issues in core.js. In jQuery.fn.ready(), simplifies the whole code (for better backward compatibility) and removes redefinition of the function itself (in order not to clash with proxying). Also, in jQuery.when(), removes unnecessary closure and early rejection test and makes use of then instead of done/fail (better interoperability).
jaubourg [Sat, 22 Jan 2011 03:45:20 +0000 (04:45 +0100)]
Re-organizes ajax.js: prefilters and transports are no longer stored in ajaxSettings (their structure is not handled correctly by extend() and was causing some overhead when constructing the final options map in ajax()); base function for ajaxPrefilter and ajaxTransport has been renamed and split in two (one for inspection, one for addition); response/dataType determination and data conversion logics have been externalized from the ajax() internal callback; data conversion no longer sets responseXXX fields; some minor re-formatting and simplifications.
jaubourg [Fri, 21 Jan 2011 02:58:28 +0000 (03:58 +0100)]
Replaces "text in-between" technique with a full-fledged one-level transitive search for converters (unit tests added). Also cleans up auto dataType determination and adds converter checks in order to guess the best dataType possible.
jeresig [Thu, 20 Jan 2011 16:58:44 +0000 (11:58 -0500)]
Bring jQuery('#id') and jQuery('body') logic back into core (while leaving it in Sizzle at the same time). Was causing too much of a performance hit to leave it all to Sizzle.
jaubourg [Thu, 20 Jan 2011 16:38:21 +0000 (17:38 +0100)]
Renames determineDataType as determineResponse. Makes it more generic as a first step into integrating the logic into the main ajax done callback. Also fixes some comments in ajax/xhr.js.
jeresig [Thu, 20 Jan 2011 16:34:35 +0000 (11:34 -0500)]
Move jQuery(...) selector speed-up logic into Sizzle(...) qSA handling. Additionally add in a new catch for Sizzle('.class') (avoid using qSA and use getElementsByClassName instead, where applicable).
jaubourg [Thu, 20 Jan 2011 03:12:15 +0000 (04:12 +0100)]
Cleans up and simplifies code shared by ajaxPrefilter and ajaxTransport. Removes chainability of ajaxSetup, ajaxPrefilter and ajaxTransport. Also makes sure context is handled properly by ajaxSetup (unit test added).
scottjehl [Wed, 19 Jan 2011 17:40:32 +0000 (12:40 -0500)]
Revised the Nokia support fallback. It turns out that Nokia supports the documentElement property but does not define document.compatMode. Adding this third fallback allows Nokia to run jQuery error-free and return proper values for window width and height.
jaubourg [Wed, 19 Jan 2011 17:16:29 +0000 (18:16 +0100)]
Moves determineDataType into ajaxSettings so that it is accessible to transports without the need for a second argument and so that we can now pass the original options to the transport instead. Also ensures the original options are actually propagated to prefilters (they were not).
John Resig [Tue, 18 Jan 2011 20:13:09 +0000 (15:13 -0500)]
Add another tweak for handling CSP - we need to make sure that we don't trigger any eval on load (not sure if it's the best tweak, definitely not ideal). Add a test page as well so that it's easier to catch problem.
Colin Snover [Tue, 18 Jan 2011 03:06:57 +0000 (21:06 -0600)]
Clarify cygwin instructions slightly and swap the order of arguments to which in Makefile because of a bug in current versions of MSYS that causes only the first argument to /bin/which to be searched.
Colin Snover [Tue, 18 Jan 2011 00:49:24 +0000 (18:49 -0600)]
Replace build system with a faster new one that uses Node and UglifyJS and generates smaller minified files. Also removes builds through rake/ant since having 3 different build systems was too much to maintain (make was the only one consistently kept up-to-date). Fixes #7973.
Colin Snover [Mon, 17 Jan 2011 21:22:49 +0000 (15:22 -0600)]
Introduce a temporary hack to allow jQuery.fn.data("events") to continue to work. This will be going away in 1.6. More information will be available in the 1.5 release notes.
jaubourg [Sun, 16 Jan 2011 17:33:32 +0000 (18:33 +0100)]
Put the split to get the list of promise methods out of the promise method itself and also switched from jQuery.each to a while loop to remove as much overhead as possible. Thanks go to scott_gonzalez for reminding me of this.
jaubourg [Sun, 16 Jan 2011 16:41:39 +0000 (17:41 +0100)]
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.
jaubourg [Sun, 16 Jan 2011 01:57:39 +0000 (02:57 +0100)]
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.
jeresig [Fri, 14 Jan 2011 19:12:29 +0000 (14:12 -0500)]
Revert "Revert fb4445070cd9e06929c7b6f27c10dbf42d4a3367 which is no longer necessary with the release of Opera 11. Fixes #7608." We will be continuing to support Opera 10.6 in jQuery 1.5.
Scott González [Fri, 14 Jan 2011 14:55:40 +0000 (09:55 -0500)]
Avoid running jQuery.unique() for methods that are guaranteed to produce a unique result set. Fixes #7964 - Some traversal methods perform an unnecessary uniqueness check.
jaubourg [Thu, 13 Jan 2011 17:33:24 +0000 (18:33 +0100)]
Moved jQuery.ajax.prefilter and jQuery.ajax.transport to jQuery.ajaxPrefilter and jQuery.ajaxTransport so that proxying the ajax method doesn't turn into a nightmare. Thanks go to scott_gonzalez and DaveMethvin for pointing out the issue. Also made ajaxSetup return "this" to enable chainable definitions -- jQuery.ajaxSetup(...).ajaxPrefilter(...).ajaxTransport(...).
jaubourg [Thu, 13 Jan 2011 16:01:25 +0000 (17:01 +0100)]
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.
jaubourg [Thu, 13 Jan 2011 15:58:16 +0000 (16:58 +0100)]
Removed xhr pooling since failing cross-domain requests leaves the xhr object in an undefined state in Firefox. Also rewrote comments related to the active xhr list so that they make sense.