Commit Graph

402 Commits

Author SHA1 Message Date
Michał Gołębiowski-Owczarek
95e34b6955
Docs: Replace #NUMBER Trac issue references with trac-NUMBER
This is a version of gh-4993 for the `3.x-stable` branch.

The GitHub UI treats `#NUMBER` as referring to its own issues which is confusing
when in jQuery source it's usually referring to the old deprecated Trac instance
at https://bugs.jquery.com. This change replaces all such Trac references with
`trac-NUMBER`.

A few of the references came with the Sizzle integration and referred to the
Sizzle GitHub bug tracker. Those have been replaced with full links instead.

A new entry describing issue reference conventions has been added to README.

Closes gh-4994
Ref gh-4993
Ref 5d5ea01511
2022-01-12 23:23:10 +01:00
Dallas Fraser
3bae54aa50 Ajax: Execute JSONP error script responses
Issue gh-4379 was meant to be a bug fix but the JSONP case is a bit special:
under the hood it's a script but it simulates JSON responses in an environment
without a CORS setup and sending JSON payloads on error responses is quite
typical there.

This commit makes JSONP error responses still execute the payload. The regular
script error responses continue to be skipped.

Fixes gh-4771
Closes gh-4773

(cherry picked from commit a1e619b03a)
2020-08-25 21:43:02 +02:00
Wonseop Kim
9b8cadc736 Build: Correct code indentations based on jQuery Style Guide
1. Correct code indentations based on jQuery Style Guide
   (contribute.jquery.org/style-guide/js/#spacing).
2. Add rules to "src/.eslintrc.json" to enable "enforcing consistent
   indentation", with minimal changes to the current code.

Closes gh-4672

(cherry picked from 3d62d57049)
2020-05-05 13:04:46 +02:00
Sean Robinson
da3dd85b63 Ajax: Do not execute scripts for unsuccessful HTTP responses
The script transport used to evaluate fetched script sources which is
undesirable for unsuccessful HTTP responses. This is different to other data
types where such a convention was fine (e.g. in case of JSON).

(cherry picked from 50871a5a85)

Fixes gh-4250
Fixes gh-4655
Closes gh-4379
2020-04-06 22:33:56 +02:00
Christian Wenz
065143c2e9 Ajax: Overwrite s.contentType with content-type header value, if any
This fixes the issue of "%20" in POST data being replaced with "+"
even for requests with content-type different from
"application/x-www-form-urlencoded", e.g. for "application/json".

Fixes gh-4119
Closes gh-4650

(cherry picked from 7fb90a6bea)

Co-authored-by: Richard Gibson <richard.gibson@gmail.com>
Co-authored-by: Michał Gołębiowski-Owczarek <m.goleb@gmail.com>
2020-04-06 21:19:25 +02:00
Michał Gołębiowski-Owczarek
22bf701fe1
Core:Ajax: Align nonce & global with master, fix an AMD issue
This commit aligns the `3.x-stable` branch with `master` in two aspects:
1. It migrates the nonce module to return an object instead of a primitive
variable. This had to be changed on `master` as in ES modules you export
live read-only bindings to variables, meaning you can't increment the nonce
directly. Also, the way it was done so far was working differently in AMD & the
single built file - in the built file one nonce variable was declared, accessed
and incremented. In AMD mode separate instances were create for each module
that depend on the nonce module, creating unintended nonce clashes.
2. Whether the `noGlobal` parameter was set to `true` is now checked using the
typeof operator to align with `master`.

Closes gh-4612
Ref gh-4541
Ref d0ce00cdfa
2020-02-24 19:10:03 +01:00
Michał Gołębiowski-Owczarek
d525ae3416
Build:Tests: Fix custom build tests, verify on Travis; name Travis jobs
This commit fixes unit tests for the following builds:

1. The no-deprecated build: `custom:-deprecated`
2. The current slim build: `custom:-ajax,-effects`
3. The 4.0 (#4553) slim build: `custom:-ajax,-callbacks,-deferred,-effects`

It also adds separate Travis jobs for the no-deprecated & slim builds.

Apart from that, add intuitive names to Travis jobs. Otherwise it's hard to see
at a glance that a particular job is running on Firefox ESR, for example.

Ref gh-4577
Ref gh-4596
Closes gh-4600
2020-01-27 18:54:47 +01:00
Michał Gołębiowski-Owczarek
d7e13f128a Build: ESLint: forbid unused function parameters
This commit requires all function parameters to be used, not just the last one.
In cases where that's not possible as we need to match an external API, there's
an escape hatch of prefixing an unused argument with `_`.

This change makes it easier to catch unused AMD dependencies and unused
parameters in internal functions the API of which we may change at will, among
other things.

Unused AMD dependencies have been removed as part of this commit.

Closes gh-4381

(cherry-picked from 438b1a3e8a)
2019-09-26 01:59:57 +02:00
Andrei Fangli
e0d9411569 Ajax: Fix getResponseHeader(key) for IE11
- getResponseHeader(key) combines all header values for the provided key into a
single result where values are concatenated by ', '. This does not happen for
IE11 since multiple values for the same header are returned on separate lines.
This makes the function only return the last value of the header for IE11.
- Updated ajax headers test to better cover Object.prototype collisions

Close gh-4173
Fixes gh-3403
2018-11-26 12:00:41 -05:00
Dave Methvin
d7237896c7 Ajax: Don't process non-string data property on no-entity-body requests
Fixes gh-3438
Closes gh-3781
2018-01-15 21:48:54 -05:00
Jason Bedard
3d732cca6b Core: deprecate jQuery.isFunction
Fixes gh-3609
2018-01-15 09:26:19 -08:00
Michał Gołębiowski
731c501155 Docs:Tests: Update IE/Edge-related support comments & tests
Closes gh-3661
2017-05-15 20:37:14 +02:00
Timmy Willison
3bbcce68d7
Core: rnotwhite -> rhtmlnotwhite and jQuery.trim -> stripAndCollapse
- Renames and changes rnotwhite to focus on HTML whitespace chars
- Change internal use of jQuery.trim to more accurate strip and collapse
- Adds tests to ensure HTML space characters are retained where valid
- Doesn't add tests where the difference is inconsequential and
  existing tests are adequate.

Fixes gh-3003
Fixes gh-3072
Close gh-3316
2016-09-15 10:40:27 -04:00
Dave Methvin
cd4ad00478 Ajax: Don't mangle the URL when removing the anti-cache param
Fixes gh-3229
Closes gh-3253
2016-08-08 12:13:22 -04: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
Ralin Chimev
0bd98b1b13 Ajax: Remove unnecessary use of jQuery.trim
The subsequent .match already ignores leading/trailing space.

Ref gh-3003
Closes gh-3095
2016-04-29 16:27:56 -04:00
Michał Gołębiowski
305f193aa5 Build: Put all AMD modules in "src/" in strict mode
Fixes gh-3073
2016-04-25 20:25:08 +02:00
Michał Gołębiowski
693f1b537b Docs: Update support comments related to IE
All support comments were checked for Edge applicability.
2016-03-30 11:21:36 +02:00
Michał Gołębiowski
93a8fa6bfc Core: Deprecate jQuery.parseJSON
Fixes gh-2800
Closes gh-2948
2016-03-02 13:12:35 +01:00
Timmy Willison
250fd800a1 Ajax: add serialize to AMD dependencies
Fixes gh-2842
2016-01-19 12:37:41 -05:00
Dave Methvin
e077ffb083 Ajax: Preserve URL hash on requests
Fixes gh-1732
Closes gh-2721
2015-11-30 19:55:50 -05:00
Richard Gibson
eaa3e9f0cf Ajax: Golf away 21 bytes
Close gh-2699
2015-11-19 16:04:19 -05:00
Dave Methvin
c9935b6d2d Event: Separate trigger/simulate into its own module
Fixes gh-1864
Closes gh-2692

This also pulls the focusin/out special event into its own module, since that
depends on simulate(). NB: The ajax module triggers events pretty heavily.
2015-11-06 09:36:48 -05:00
Dave Methvin
70605c8e56 Ajax: Only form-encode requests with a body
Fixes #2658
Closes #2671
2015-11-02 13:14:46 -05:00
Oleg Gaidarenko
239169bb2e Ajax: improve content-type detection
Fixes gh-2584
Closes gh-2643
2015-10-12 22:38:15 +03:00
Oleg Gaidarenko
b078a62013 Ajax: Mitigate possible XSS vulnerability
Proposed by @jaubourg

Fixes gh-2432
Closes gh-2588
2015-10-12 17:05:18 +03:00
Oleg Gaidarenko
c9cf250daa Ajax: do not quote "throws" option - use dot notation instead
Fixes gh-2571
Closes gh-2542
2015-09-07 20:03:51 +03:00
Oleg Gaidarenko
10fdad742a Build: Update jscs and lint files
Fixes gh-2056
2015-09-07 20:03:50 +03:00
Michał Gołębiowski
842958e7ae Core: Switch from modules to just window.setTimeout etc.
Using modules for window.setTimeout etc. made those functions cached and
disabled Sinon mocking, making effects tests fail. Just writing
window.setTimeout directly is smaller anyway.
2015-06-17 12:59:01 +02:00
Michał Gołębiowski
219c749493 Core: Use window.setTimeout & friends instead of global equivalents
Fixes gh-2177
2015-06-17 12:29:49 +02:00
Oleg Gaidarenko
9d1b989f20 Ajax: remove deprecated extensions from ajax promise
Fixes gh-2084
Closes gh-2092
2015-02-17 09:58:45 +03:00
George Mauer
89ce0af2cf Ajax: $.post and $.get can now take an options object
Fixes gh-1986
Closes gh-1995
2015-01-11 20:32:38 -05:00
Michał Gołębiowski
76df9e4e38 Build: Don't assume the browser environment; smoke test on Node w/ jsdom
Fixes gh-1950
Closes gh-1949
2014-12-26 13:26:46 +01:00
Ben Toews
b091fdbafa Ajax: use anchor tag for parsing urls
Fixes gh-1875
Closes gh-1880
2014-12-11 15:26:04 -05:00
Dan Hart
598ed050f6 Ajax: Fix for request aborted in ajaxSend
Fixes gh-1775
Close gh-1619
2014-11-01 12:44:43 -04:00
Timmy Willison
c869a1ef8a Build: update grunt-jscs-checker and pass with the new rules 2014-07-17 10:25:59 -07:00
Chris Antaki
e5190982c4 Ajax: Remove workaround for IE6/7
Closes gh-1597
Ref #8138
2014-07-13 00:34:40 +04:00
Dave Methvin
d837f119c3 Support: clean up comments and Support notation
Closes gh-1577
2014-06-10 23:28:14 -04:00
TJ VanToll
d41e81980e Ajax: Support usage without jQuery.event
Fixes #15118
Closes gh-1588
2014-06-02 15:08:40 -04:00
Timmy Willison
97c803acfb Ajax: move ajax event aliases to their own file
Fixes #15126
2014-06-02 12:39:11 -04:00
njhamann
0d68b7877f Fix #14036. Remove user/pass from ajaxLocation. Close gh-1340. 2013-11-13 22:53:15 -05:00
Oleg
cb37994d76 No ticket: fix code style inconsistencies. Closes gh-1361 2013-09-13 01:04:29 +04:00
Timmy Willison
825ac37736 Separate jQuery.fn.init into its own module (for lighter core dependencies across all modules) 2013-09-09 19:13:01 -05:00
Timmy Willison
99191a510e Apply consistent ordering in all modules. -38 bytes. Order modules like functions > jQuery.extend > jQuery.fn.extend. 2013-09-09 13:54:46 -05:00
Timmy Willison
99c123b159 Move parsing methods to their own files (separates manipulation dependency from core) 2013-09-08 21:05:07 -04:00
Timmy Willison
6318ae6ab9 AMD-ify jQuery sourcegit s! Woo! Fixes #14113, #14163. 2013-08-15 14:15:49 -04:00
Julian Aubourg
a2cd89a795 Handles HEAD requests as if they always were 204. Fixes #13922. 2013-05-23 02:11:37 +02:00
Richard Gibson
03db1ada2c Fix #12838: hook point for non-jQuery.ajax synchronous script fetch/execute in domManip. Close gh-1051. 2013-04-17 11:27:57 -04:00
Michał Gołębiowski
7049877530 Correct oldIE-related comments, revert some workarounds. Close gh-1207. 2013-04-04 12:55:03 -04:00
Michał Gołębiowski
1205103a72 Update grunt-contrib-jshint to 0.3.0, close gh-1204.
(cherry picked from 4adde5d145)

Conflicts:
	src/data.js
	src/effects.js
2013-04-03 20:51:30 -04:00