| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
Also, run such a suite in CI to make sure modules are working as expected
when used directly.
Closes gh-4550
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
jQuery source has been migrated in gh-4541 from AMD to ES modules. To maintain
support for consumers of our AMD modules, this commits adds a task transpiling
the ES modules sources in `src/` to AMD in `amd/`.
A "Load with AMD" checkbox was also restored to the QUnit setup. Note that,
contrary to jQuery 3.x, AMD files need to be generated via `grunt amd` or
`grunt` as sources are not authored in ECMAScript modules. To achieve a similar
no-compile experience during jQuery 4.x testing, use the new "Load as modules"
checkbox which works in all supported browsers except for IE & Edge (the
legacy, EdgeHTML-based one).
Ref gh-4541
Closes gh-4554
|
|
|
|
|
|
|
| |
This commit gets rid of rollup-plugin-hypothetical in favor of a simpler
inline Rollup plugin that fits our need and is compatible with Windows.
Fixes gh-4548
Closes gh-4549
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
jQuery source is now authored in ECMAScript modules. Native browser support
for them requires full file names including extensions. Rollup works even
if import paths don't specify extensions, though, so one import slipped
through without such an extension, breaking native browser import of
src/jquery.js.
A new ESLint rule using eslint-plugin-import prevents us from regressing
on that front.
Also, eslint-plugin-import's no-cycle rule is used to avoid import cycles.
Closes gh-4544
Ref gh-4541
Ref 075320149ae30a5c593c06b2fb015bdf033e0acf
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
| |
Now that Sizzle is gone & we use npm, we can read from node_modules directly
and skip the setup that copies some files to the external directory.
Closes gh-4466
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
| |
Fixes gh-1756
Fixes gh-4170
Fixes gh-4249
Closes gh-4345
|
| |
|
|
|
|
|
|
|
|
| |
core-js 3 no longer includes a built file in the bundle but core-js-bundle
does.
Closes gh-4342
Ref gh-4341
|
|
|
| |
Closes gh-4341
|
|
|
|
|
|
| |
The basic test suite is now run in jsdom on all supported Node.js versions
(8, 10 & 11 as of now).
Closes gh-4310
|
|
|
| |
Closes gh-4307
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
| |
Close gh-4098
|
|
|
|
|
|
|
|
| |
raw gz Compared to last run
= = dist/jquery.js
-294 -88 dist/jquery.min.js
Closes gh-3994
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
- Thanks to @mgol for first pass
Fixes gh-3743
Close gh-3920
|
|
|
|
| |
Ref gh-3744
Closes gh-3894
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Update QUnit to 1.23.1
- Remove unused dl#dl from test/index.html
- Remove unused map#imgmap from test/index.html
- Ensure all urls to data use baseURI
- Add the 'grunt karma:main' task
- customContextFile & customDebugFile
- Add 'npm run jenkins' script
Close gh-3744
Fixes gh-1999
|
| |
|
|
|
| |
Closes gh-3786
|
|
|
|
|
|
|
| |
- Uses new typeofs option for compression
- See https://github.com/mishoo/UglifyJS2/issues/2198
Close gh-3710
|
| |
|
|
|
|
|
| |
- Also ignore yarn.lock
Close gh-3669
|
| |
|
|
|
|
| |
This reverts commit 066bd8681c4a8ba2de707d59ee3a8df771804970.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
Commit messages used to fail the style check if they contained a word
starting with "ref", like reformat or reference, in their message body.
Close gh-3437
Ref jzaefferer/commitplease#91
|
|
|
|
| |
Close gh-3414
|
| |
|
|
|
|
|
|
| |
The older promises-aplus-tests was relying on old Mocha that, in turn,
used an obsolete graceful-fs version that is not guaranteed to work fine
with the upcoming Node 7 and later.
|
|
|
|
| |
Fixes gh-3263
|
| |
|
|
|
|
| |
Fixes gh-3224
|
|
|
|
| |
Fixes gh-3246
|
|
|
|
| |
Closes gh-3176
|
| |
|
|
|
|
|
|
| |
ESLint is now skipped in Node older than 4.x so we're safe.
Refs gh-3222
|
|
|
|
| |
Since it is not supported by older node versions :/
|
| |
|
| |
|
| |
|