| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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 438b1a3e8a52d3e4efd8aba45498477038849c97)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The previous regex caused the final jQuery binary to have syntax errors for
var-modules with names starting with "return". For example, the following module
wouldn't work when the file is named `returnTrue.js`:
```js
define( function() {
"use strict";
return function returnTrue() {
return true;
};
} );
```
Closes gh-4389
(cherry picked from commit 9ec09c3b4aa5182c2a8b8f51afb861b685a4003c)
|
|
|
|
|
|
|
|
|
|
|
|
| |
Because of the above conditional, the 'type' variable has a value of type
'string' or undefined. Therefore, boolean comparisons for 'type' variable
is always unnecessary because it return true. The patch removed the
unnecessary conditional statement.
Fixes gh-4374
Closes gh-4375
(cherry picked from commit 110802c7f22b677ef658963aa95ebdf5cb9c5573)
|
|
|
|
|
|
|
| |
Fixes gh-4363
Closes gh-4461
(cherry picked from 5ea5946094784f68437ef26d463dfcfbbbaff1f6)
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Calling `Array.prototype.concat.apply( [], inputArray )` to flatten `inputArray`
crashes for large arrays; using `Array.prototype.flat` avoids these issues in
browsers that support it. In case it's necessary to support these large arrays
even in older browsers, a polyfill for `Array.prototype.flat` can be loaded.
This is already being done by many applications.
(cherry picked from 9df4f1de12728b44a4b0f91748f12421008d9079)
Fixes gh-4320
Closes gh-4459
|
| |
|
|
|
|
|
|
|
|
|
| |
`:even` & `:odd` are deprecated since jQuery 3.4.0 & will be removed in 4.0.0.
The new `even()` & `odd()` methods will make the migration easier.
Closes gh-4485
(cherry picked from commit 78420d427cf3734d9264405fcbe08b76be182a95)
|
|
|
|
|
|
| |
This commit backports a looser assertion from `master` where the browsers passes
offset tests.
Closes gh-4470
|
|
|
|
|
|
| |
Android was catching the generic iOS regex. Checking for Android first should
eliminate that issue as iOS user agents don't contain the word "Android".
Putting Safari last makes Android UAs not be tested against it.
|
|
|
|
|
|
|
|
| |
The regexes detecting browsers with their versions have been updated for iOS
and Safari so that all iOS >=11 & all Safari (desktop) >= 11 are recognized.
This is required to make Safari 13 & iOS 13 pass support tests but it'll also
make tests forward-compatible with future Safari/iOS versions.
Closes gh-4488
|
|
|
|
|
| |
Close gh-4446
Ref gh-4445
|
|
|
|
|
|
|
|
|
|
| |
This commit also backports some jQuery.isXMLDoc tests from master so that this
behavior doesn't regress.
(partially cherry-picked from 79b74e043a4ee737d44a95094ff1184e40bd5b16)
Closes gh-4438
Ref jquery/sizzle#378
Ref jquery/sizzle#436
|
|
|
|
|
|
|
|
|
|
|
|
| |
The original fix didn't account for the fact that in IE `<object>` elements
with no `data` attribute have an object `contentDocument`. The fix leverages
the fact that this special object has a null prototype.
(cherry-picked from ccbd6b93424cbdbf86f07a86c2e55cbab497d7a3)
Closes gh-4390
Ref gh-4384
Ref gh-4385
|
|
|
|
|
|
|
| |
(cherry-picked from 4d865d96aa5aae91823c50020b5c19da79566811)
Fixes gh-4384
Closes gh-4385
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
The test for Shadow DOM v1 support has been changed to rely on the presence of
`documentElement.getRootNode` as iOS 10.0-10.2 supports `attachShadow` but
doesn't support `getRootNode`.
No new test is necessary - iOS 10.0 fails lots of our test suite because of
this bug.
Fixes gh-4356
Closes gh-4360
|
|
|
| |
Closes gh-4353
|
|
|
|
| |
Fixes gh-4350
Closes gh-4354
|
|
|
|
|
|
| |
(cherry-picked from b8d4712825a26a7f24c2bdb5a71aa3abcd345dfd)
Closes gh-4369
|
|
|
|
|
|
|
|
|
|
| |
Also, prevent further similar breakages by changing our ESLint configuration
to disallow relying on a global jQuery object in AMD modules.
(cherry-picked from 874030583c9b94603de467124420e6c7a1c3c8ac)
Fixes gh-4358
Closes gh-4361
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
(cherry-picked from 0b2c36adb4e2c048318659e4196e0925da10ead2)
Fixes gh-1756
Fixes gh-4170
Fixes gh-4249
Closes gh-4345
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Android Browser disregards td's box-sizing, treating it like it was content-box.
Unlike in IE, offsetHeight shares the same issue so there's no easy way to
workaround the issue without incurring high size penalty. Let's at least check
we get the size as the browser sees it.
Also, fix the nearby support comment syntax.
Closes gh-4335
|
|
|
|
|
|
|
| |
Android Browser versions provided by BrowserStack fail the "prototype collision
(constructor)" test while locally fired emulators don't, even when they connect
to TestSwarm. Just skip the test there to avoid a red build.
Closes gh-4334
|
|
|
|
|
| |
Fixes gh-4323
Closes gh-4328
|
|
|
|
|
|
| |
Also, reduce size.
Closes gh-4329
Ref gh-4279
|
|
|
| |
Closes gh-4333
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary of the changes/fixes:
1. Trigger checkbox and radio click events identically (cherry-picked from
b442abacbb8464f0165059e8da734e3143d0721f that was reverted before).
2. Manually trigger a native event before checkbox/radio handlers.
3. Add test coverage for triggering namespaced native-backed events.
4. Propagate extra parameters passed when triggering the click event to
the handlers.
5. Intercept and preserve namespaced native-backed events.
6. Leverage native events for focus and blur.
7. Accept that focusin handlers may fire more than once for now.
Fixes gh-1741
Fixes gh-3423
Fixes gh-3751
Fixes gh-4139
Closes gh-4279
Ref gh-1367
Ref gh-3494
|
|
|
|
|
|
|
|
| |
Fixes gh-4322
Closes gh-4325
Ref gh-3991
Ref gh-4010
Ref gh-4185
Ref gh-4187
|
|
|
|
|
|
| |
The basic test suite is now run in jsdom on all supported Node.js versions
(8, 10 & 11 as of now).
Closes gh-4310
|
|
|
|
|
|
| |
It was needed when QUnit 1.x one used but we've since upgraded to QUnit 2.x.
Closes gh-4312
Ref gh-4307
|
|
|
|
|
|
| |
The default reporter is very verbose as it prints all the test names it
encounters. We already use the dot reporter for Karma tests.
Closes gh-4313
|
|
|
| |
Closes gh-4307
|
|
|
|
|
|
|
|
| |
Node.js 10 has been in Active LTS since 2018-04-24 and Node.js 8 is now in
maintenance mode.
See https://github.com/nodejs/Release for more details.
Closes gh-4311
|
|
|
|
|
|
|
|
|
|
|
| |
So far, we've been testing that jQuery element iteration works with polyfilled
Symbol & transpiled for-of via a Node test with jsdom with the Symbol global
removed. Unfortunately, jsdom now requires Symbol to be present for its internal
functionality so such a test is no longer possible. Instead, it's been migrated
to an iframe test with transpiled JavaScript.
This PR also enables us to use ECMAScript 2017 or newer in Node.js code.
Closes gh-4305
|
|
|
|
|
| |
We had quite a few obsolete globals declared in various ESLint config files. We also no longer allow to rely on the `noGlobal` & `jQuery` globals in the built file which is not needed.
Closes gh-4301
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The only packages not fully updated are:
- qunitjs & karma-qunit as that's a QUnit 2.x update that will require some
changes and we'll do that later
- jsdom as we need to first rewrite the test with the Symbol polyfill - newer
jsdom versions don't work with such a hacked Symbol instance
- sinon as the v2 -> v7 upgrade requires to update our unit tests
- uglify-js & grunt-contrib-uglify as latest uglify-js versions slightly worsen
the minified gzipped size
Closes gh-4227
Closes gh-4228
Closes gh-4230
Closes gh-4232
|
|
|
|
|
|
|
|
| |
Also, run `grunt npmcopy` to sync the "external" directory with dependencies
from package.json. For example, the Sinon library version didn't match.
Ref gh-4234
Closes gh-4297
|
|
|
|
|
|
|
|
|
|
| |
JSFiddle doesn't support IE (even 11) anymore so we shouldn't advise users
to use it to create test cases. To make people have a choice, add CodePen
to the list.
Also, link to specific starter templates so that novices don't need to spend
time thinking how to set up the basic structure.
Closes gh-4289
|
|
|
|
|
|
| |
Fixes gh-4278
Closes gh-4280
Ref gh-3541
Ref gh-4269
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR #3869 added support for `<script type="module">` & some support for
the `nomodule` attribute but with no tests for `nomodule` and with the
attribute only respected on inline scripts. This commit adds support for
source-based scripts as well. It also adds tests for `nomodule`, including
making sure legacy browsers execute such scripts as they'd natively do - that's
the whole point of `nomodule` scripts, after all.
Fixes gh-4281
Closes gh-4282
Ref gh-3871
Ref gh-3869
|
|
|
|
|
|
|
|
|
|
| |
Old iOS & Android Browser versions support script-src but not nonce, making the
nonce test impossible to run. Browsers not supporting CSP at all are not
a problem as they'll skip script-src restrictions completely.
Ref gh-3541
Ref gh-4269
Ref c7c2855ed13f23322c4064407c1ed84561b95738
|
|
|
|
| |
Fixes gh-3541
Closes gh-4269
|
|
|
|
|
|
|
|
| |
Android Browser only returns the last value for each header so there's no way
for jQuery get all parts.
Closes gh-4259
Ref gh-3403
Ref gh-4173
|
|
|
|
|
|
| |
IE and iOS <10 XHR transport does not succeed on data: URIs
Ref gh-4243
Ref gh-4126
Closes gh-4258
|
|
|
|
|
| |
Fixes gh-4126
Closes gh-4243
|
|
|
|
|
|
|
|
|
| |
Read target[name] only when it's needed.
In addition to doing the property read-only when needed, this
avoids a slow path in V8 (see the issue for more details).
Fixes gh-4245
Closes gh-4246
|