| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
Don't try to remove a script element that has already removed itself.
Also, compress `DOMEval.js`.
Fixes gh-5377
Closes gh-5378
|
|
|
|
|
|
|
|
|
| |
The `default` export is treated differently across tooling when transpiled
to CommonJS - tools differ on whether `module.exports` represents the full
module object or just its default export. Switch `src/` modules to named
exports for tooling consistency.
Fixes gh-5262
Closes gh-5292
|
|
|
|
|
|
|
| |
The `jQuery.contains` method is quite simple in jQuery 4+. On the other side,
it's a dependency of the core `isAttached` util which is not ideal; moving
it from the `selector` the `core` module resolves the issue.
Closes gh-5167
|
|
|
|
|
|
|
|
|
|
| |
The third parameter of `jQuery.fn.init` - `root` - was just needed to support
`jQuery.sub`. Since this API has been removed in jQuery 1.9.0 and Migrate 3.x
is not filling it in, this parameter is no longer needed.
This parameter has never been documented but it's safer to remove it in a major
update.
Closes gh-5096
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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-4993
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This ensures HTML wrapped in TrustedHTML can be used as an input to jQuery
manipulation methods in a way that doesn't violate the
`require-trusted-types-for` Content Security Policy directive.
This commit builds on previous work needed for trusted types support, including
gh-4642 and gh-4724.
One restriction is that while any TrustedHTML wrapper should work as input
for jQuery methods like `.html()` or `.append()`, for passing directly to the
`jQuery` factory the string must start with `<` and end with `>`; no trailing
or leading whitespaces are allowed. This is necessary as we cannot parse out
a part of the input for further construction; that would violate the CSP rule -
and that's what's done to HTML input not matching these constraints.
No trusted types API is used explicitly in source; the majority of the work is
ensuring we don't pass the input converted to string to APIs that would
eventually assign it to `innerHTML`. This extra cautiousness is caused by the
API being Blink-only, at least for now.
The ban on passing strings to `innerHTML` means support tests relying on such
assignments are impossible. We don't currently have such tests on the `main`
branch but we used to have many of them in the 3.x & older lines. If there's
a need to re-add such a test, we'll need an escape hatch to skip them for apps
needing CSP-enforced TrustedHTML.
See https://web.dev/trusted-types/ for more information about TrustedHTML.
Fixes gh-4409
Closes gh-4927
Ref gh-4642
Ref gh-4724
|
|
|
|
| |
Fixes gh-4784
Closes gh-4816
|
|
|
|
|
|
|
|
|
|
|
|
| |
Drop support for Edge Legacy: the non-Chromium, EdgeHTML-based Microsoft
Edge version. Also, restrict some workarounds that were applied
unconditionally in all browsers to run only in IE now. This slightly
increases the size but reduces the performance burden on modern browsers
that don't need the workarounds.
Also, clean up some comments & remove some obsolete workarounds.
Fixes gh-4568
Closes gh-4792
|
|
|
|
|
|
|
| |
To achieve that, use `eslint-plugin-import`'s `no-unused-modules` rule.
Also, explicitly import `event/trigger.js` from `jquery.js`; so far it was
only imported from ajax.js, making it mistakenly skipped in the
`custom:slim,-deprecated` build.
|
|
|
|
|
| |
Closes gh-4696
Ref jquery/eslint-config-jquery#15
Ref jquery/eslint-config-jquery#16
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
| |
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 future (#4553) slim build: `custom:-ajax,-callbacks,-deferred,-effects`
It also adds separate Travis jobs for the no-deprecated & slim builds.
Closes gh-4577
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Migrate all source AMD modules to ECMAScript modules. The final bundle
is compiled by a custom build process that uses Rollup under the hood.
Test files themselves are still loaded via RequireJS as that has to work in
IE 11.
Tests can now be run in "Load as modules" mode which replaces the previous
"Load with AMD" option. That option of running tests doesn't work in IE
and Edge as it requires support for dynamic imports.
Some of the changes required by the migration:
* check `typeof` of `noGlobal` instead of using the variable directly
as it's not available when modules are used
* change the nonce module to be an object as ECMASscript module exports
are immutable
* remove some unused exports
* import `./core/parseHTML.js` directly in `jquery.js` so that it's not
being cut out when the `ajax` module is excluded in a custom compilation
Closes gh-4541
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit removes Sizzle from jQuery, inlining its code & removing obsolete
workarounds where applicable.
The selector-native module has been removed. Further work on the selector
module may decrease the size enough that it will no longer be necessary. If
it turns out it's still useful, we'll reinstate it but the code will look
different anyway as we'll want to share as much code as possible with
the existing selector module.
The Sizzle AUTHORS.txt file has been merged with the jQuery one - people are
sorted by their first contributions to either of the two repositories.
The commit reduces the gzipped jQuery size by 1460 bytes compared to master.
Closes gh-4395
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
| |
Also, update support comments format to match format described in:
https://github.com/jquery/contribute.jquery.org/issues/95#issuecomment-69379197
with the change from:
https://github.com/jquery/contribute.jquery.org/issues/95#issuecomment-448998379
(open-ended ranges end with `+`).
Fixes gh-3950
Fixes gh-4299
Closes gh-4347
|
|
|
|
|
|
|
|
| |
The camelCase implementation used by the data module no longer turns `-ms-foo`
into `msFoo` but to `MsFoo` now. This is because `data` is supposed to be
a generic utility not specifically bound to CSS use cases.
Fixes gh-3355
Closes gh-4365
|
|
|
|
|
|
| |
Fixes gh-4278
Closes gh-4280
Ref gh-3541
Ref gh-4269
|
|
|
|
| |
Fixes gh-3541
Closes gh-4269
|
|
|
|
|
|
|
| |
Allow `isAttached` to check Shadow DOM for attachment.
Fixes gh-3504
Closes gh-3996
Ref gh-3977
|
|
|
|
| |
Fixes gh-4124
Closes gh-4125
|
|
|
|
|
| |
Fixes gh-3871
Close gh-3869
|
|
|
|
|
| |
Fixes gh-3605
Close gh-3895
|
|
|
|
| |
Fixes gh-3609
|
|
|
|
|
| |
Close gh-3604
Fixes gh-3384
|
| |
|
|
|
|
| |
- nodeName was included at the wrong spot in dependency lists
|
|
|
|
|
| |
Fixes gh-3475
Closes gh-3505
|
|
|
|
|
| |
Fixes gh-3288
Close gh-3306
|
|
|
|
| |
Close gh-3284
|
|
|
|
| |
Close gh-3318
|
|
|
|
|
|
|
|
|
|
|
|
| |
- 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
|
| |
|
|
|
|
|
|
|
|
| |
Also, expose jQuery.readyException that allows to overwrite the default
ready error handler.
Fixes gh-3174
Closes gh-3210
|
|
|
|
| |
Fixes gh-3073
|
|
|
|
|
| |
Fixes gh-2965
Close gh-3022
|
|
|
|
|
|
|
|
|
| |
- Make jQuery.ready promise-compatible
- Gives up sync guarantee for post-ready callbacks
Fixes gh-1778
Fixes gh-1823
Close gh-2891
|
|
|
|
|
| |
The changes follow the spec proposed in:
https://github.com/jquery/contribute.jquery.org/issues/95#issuecomment-69379197
|
|
|
|
|
|
|
|
|
|
| |
Support comments that were lacking the final IE/Edge version that exhibits
the bug were checked & updated. Links to the Chromium bug tracker were updated.
Code in tests related to unsupported browsers (like Android 2.3 in non-basic
tests) has been removed.
Fixes gh-2868
Closes gh-2949
|
|
|
|
|
| |
Fixes gh-2005
Closes gh-2634
|
|
|
|
|
| |
Closes jquery/api.jquery.com#831
Closes gh-2718
|
|
|
|
| |
Fixes gh-2100
|
|
|
|
| |
Fixes gh-2056
|
|
|
|
|
|
|
| |
jQuery.access was never documented, there is no need to keep it exposed.
Fixes gh-2513
Closes gh-2524
|
|
|
|
|
|
|
|
| |
Related issue: https://bugs.webkit.org/show_bug.cgi?id=137337
Thanks @phistuck!
Refs cfe468f29c4cbe1a457d0feb17dec90dcfd7c280
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
Fixes gh-2177
|
|
|
|
|
| |
Fixes gh-2264
Close gh-2265
|
|
|
|
| |
Fixes gh-2224
|
|
|
|
|
|
| |
- This will be tested in migrate
Fixes gh-2101
|