aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* 3.6.13.6.1Timmy Willison2022-08-268-3/+19728
|
* Release: update AUTHORS.txtTimmy Willison2022-08-151-0/+4
|
* Deprecated: Improve $.trim performance for strings with lots of whitespaceVladimir Sitnikov2022-07-201-2/+4
| | | | | | | | | | Regex imp implementation takes `O(N^2)` time to trim the string when multiple adjacent spaces were present. The new expression require that the "whitespace run" starts from a non-whitespace to avoid `O(N^2)` behavior when the engine would try matching `\s+$` at each space position. Closes gh-5068
* Docs: Update webpack website in READMESimon Legner2022-07-121-1/+1
| | | | | | | | Webpack has migrated to https://webpack.js.org/ since version 2. Closes gh-5037 (cherry picked from commit 01819bc3bcc44282e5bb9301c3478d837d1e5152)
* Tests: Exclude tests based on compilation flags, not API presence (3.x version)Michał Gołębiowski-Owczarek2022-07-1224-75/+162
| | | | | | | | | | | | | Introduces a new test API, `includesModule`. The method returns whether a particular module like "ajax" or "deprecated" is included in the current jQuery build; it handles the slim build as well. The util was created so that we don't treat presence of particular APIs to decide whether to run a test as then if we accidentally remove an API, the tests would still not fail. Closes gh-5071 Fixes gh-5069 Ref gh-5046 (partially cherry picked from commit fae5fee8b435cc20352d28b0a384b9784b1ad9ed)
* Build: Update GitHub ActionsMichał Gołębiowski-Owczarek2022-06-271-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Build(deps): Bump actions/cache from 2 to 3 Bumps [actions/cache](https://github.com/actions/cache) from 2 to 3. - [Release notes](https://github.com/actions/cache/releases) - [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md) - [Commits](https://github.com/actions/cache/compare/v2...v3) --- updated-dependencies: - dependency-name: actions/cache dependency-type: direct:production update-type: version-update:semver-major ... * Build(deps): Bump actions/setup-node from 2.1.2 to 3.3.0 Bumps [actions/setup-node](https://github.com/actions/setup-node) from 2.1.2 to 3.3.0. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v2.1.2...v3.3.0) --- updated-dependencies: - dependency-name: actions/setup-node dependency-type: direct:production update-type: version-update:semver-major ... * Build(deps): Bump actions/checkout from 2 to 3 Bumps [actions/checkout](https://github.com/actions/checkout) from 2 to 3. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v2...v3) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-major ... Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Closes gh-5067 (cherry picked from commit 52f452b2e8881e5ec5c9e880e277c8ecf633e8dc)
* Build: Add dependabot.yml config (GitHub Actions)Christian Oliff2022-06-271-0/+6
| | | | | | | | | This makes dependabot issue automated PRs to update GitHub Action versions monthly. Closes gh-5057 (cherry picked from commit 3f8bb2a46daf76f1427f49810d06a210ffbc7016)
* Build: Test on Node 17, update Grunt & `karma-*` packagesMichał Gołębiowski-Owczarek2022-03-143-24/+47
| | | | | | | | | | | | | | | | | This adds testing on Node.js 17 in addition to the currently tested 10, 12, 14 and 16 versions. Also, update Grunt & `karma-*` packages. Testing in Karma on jsdom is broken in Node 17 at the moment; until we find a fix, this change disables such testing on Node 17 or newer. Node smoke tests & promises aplus tests are disabled on Node.js 10 as they depend on jsdom and the latest jsdom version doesn't run properly on Node 10. Closes gh-5023 (cherry picked from commit 2525cffc42934c0d5c7aa085bc45dd6a8282e840)
* Tests: Workaround an XML parsing bug in FirefoxMichał Gołębiowski-Owczarek2022-02-281-1/+7
| | | | | | | | See https://bugzilla.mozilla.org/show_bug.cgi?id=1751796 Closes gh-5018 (cherry picked from commit af1cd6f218f699abc34b1582a910c0df00312aee)
* Docs: add link to preview the new CLAsTimmy Willison2022-02-071-1/+2
| | | Closes gh-5010
* CSS: Skip falsy values in `addClass( array )`, compress codeMichał Gołębiowski-Owczarek2022-01-252-36/+72
| | | | | | | | | | | | | | | | | | This change makes jQuery skip falsy values in `addClass( array )` & `removeClass( array )` instead of stopping iteration when the first falsy value is detected. This makes code like: ```js elem.addClass( [ "a", "", "b" ] ); ``` add both the `a` & `b` classes. The code was also optimized for size a bit so it doesn't increase the minified gzipped size. Fixes gh-4998 Closes gh-5003 (partially cherry picked from commit a338b407f2479f82df40635055effc163835183f)
* Docs: Replace `#NUMBER` Trac issue references with `trac-NUMBER`Michał Gołębiowski-Owczarek2022-01-1256-398/+404
| | | | | | | | | | | | | | | | | 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 5d5ea015114092c157311c4948f7cc3d8c8e7f8a
* Tests: lock colors version to 1.4.0Timmy Willison2022-01-101-0/+1
|
* Docs: remove expired links from old jquery sourceTimmy Willison2022-01-071-2/+0
| | | | | Ref gh-4981 Ref gh-4991
* Docs: Remove links to Web Archive from sourceMichał Gołębiowski-Owczarek2022-01-042-2/+0
| | | | | | | | | | | Neither of the removed links is crucial; one of them refers to a site that has since started being malicious; while the Web Archive links remain safe, some scanners warn about such links. Removing them is the safest thing to do. Fixes gh-4981 Closes gh-4991 (cherry picked from commit e24f2dcf3f6bda1a672502e0233c732065cbbe89)
* Build: Separate the install step from running tests in GitHub ActionsMichał Gołębiowski-Owczarek2022-01-041-2/+5
| | | | | | | | Also, update the "Run test" label to "Run tests". Closes gh-4992 (cherry picked from commit eef972508c8be6cc3cd0039d34dc9fe16bac916c)
* CSS: Justify use of rtrim on CSS property valuesRichard Gibson2022-01-031-0/+6
| | | | | | | | | | CSS does not acknowledge carriage return or form feed characters as whitespace but it does replace them with whitespace, making it acceptable to use `rtrim`. Closes gh-4956 (cherry picked from commit 655c0ed5e204b1f6427e09d615a49586a7bc84eb)
* Build: remove travis.yml and travis mentions from core (#4984)Timmy Willison2021-12-133-58/+1
| | | We've migrate jquery core to GH actions and have already disabled core builds on travis
* Tests: Skip ETag AJAX tests on TestSwarmMichał Gołębiowski-Owczarek2021-12-011-5/+18
| | | | | | | | | | TestSwarm is now proxied via Cloudflare which cuts out headers relevant for ETag tests, failing them. We're still running those tests in Karma on Chrome & Firefox (including Firefox ESR). Closes gh-4974 (cherry picked from commit 00c060d1619d472a2d8c5b104ed76fa3afc2ce97)
* Tests: Allow statusText to be "success" in AJAX testsMichał Gołębiowski-Owczarek2021-12-011-1/+2
| | | | | | | | | | | | | | | In HTTP/2, status message is not supported and whatever is reported as statusText differs between browsers. In Chrome & Safari it's "success", in Firefox & IE it's "OK". So far "success" wasn't allowed. This made the tests pass locally if you're running an HTTP/1.1 server but on TestSwarm which is now proxied via an HTTP/2-equipped Cloudflare, the relevant test started failing in Chrome & Safari. Allow "success" to resolve the issue. Closes gh-4973 (cherry picked from commit 19ced963c63372eae5aca9e1a4baec80b78a2b8e)
* Build: Migrate CI to GitHub Actionsygj62021-12-012-4/+72
| | | | | | Closes gh-4800 (cherry picked from commit e23190e63cb121da79b92e6641a81a44dcea9252)
* Docs: Update the URL to the latest jQuery build in CONTRIBUTING.mdMichał Gołębiowski-Owczarek2021-11-181-1/+1
| | | | | | | | | | It used to say https://code.jquery.com/jquery.js but that's a frozen URL to jQuery 1.11.1. Let's switch that to the URL to the Git build, i.e. https://releases.jquery.com/git/jquery-git.js. Closes gh-4972 (cherry picked from commit 9bdb16cd19097da67950a707baac3980bda873f3)
* Tests: Disable CSS Custom Properties tests in old Safari/iOSMichał Gołębiowski-Owczarek2021-11-151-1/+11
| | | | | | | | Safari 9.1 & iOS 9.3 support CSS custom properties but that support is buggy which crashes our tests. Disable those tests there. See https://caniuse.com/css-variables Closes gh-4966
* Tests: Make Karma browser timeout larger than the QUnit oneMichał Gołębiowski-Owczarek2021-10-301-0/+4
| | | | | | | | | | | | Since the default Karma browser no activity timeout was lower than the QUnit timeout, a single timing out test was interrupting the whole test run of a browser. The QUnit timeout is set to 1 minute so I set the Karma one to 2 minutes. Closes gh-4943 (cherry picked from commit 4fd6912bfd8fffbfabc98a9b0789d28f10af0914)
* CSS: Remove a redundant extension from rtrimCSS inclusion in curCSSMichał Gołębiowski-Owczarek2021-10-191-1/+1
| | | | This breaks the AMD mode.
* CSS: Trim whitespace surrounding CSS Custom Properties valuesfecore12021-10-186-29/+69
| | | | | | | | | | | The spec has recently changed and CSS Custom Properties values are trimmed now. This change makes jQuery polyfill that new behavior for all browsers. Ref w3c/csswg-drafts#774 Fixes gh-4926 Closes gh-4930 (partially cherry picked from commit efadfe991a5c287af561a9326bf1427d726c91c1)
* Docs: Remove the CLA checkbox in the pull request templateMichał Gołębiowski-Owczarek2021-10-181-1/+0
| | | | | | | | | | | | The EasyCLA status check is required so this won't get missed. The old JSF CLA is dead, the provided link doesn't return meaningful information. There's no good replacement link for the old CLA; PR authors are just supposed to sign the new CLA by clicking on a link posted by the EasyCLA bot when they submit their first PR since EasyCLA was enabled for the repo. Closes gh-4937 (cherry picked from commit e124893132d7a979d7987f978e968a1f889348b6)
* Tests: Don't remove csp.log in the cspClean action of mock.phpMichał Gołębiowski-Owczarek2021-09-301-1/+0
| | | | | | | | | For some reason the current setup worked fine with Apache but broke for me when I migrated to nginx. Closes gh-4936 (cherry picked from commit 1019074f7b1df96ee9d6409ada3dc0562046f6c7)
* Tests: Load the TestSwarm listener via HTTPSMichał Gołębiowski-Owczarek2021-09-291-1/+1
| | | | (cherry picked from commit d225639a8ea62863482bd20249077688f60235db)
* Manipulation: Don't remove HTML comments from scriptsMichał Gołębiowski-Owczarek2021-07-192-2/+20
| | | | | | | | | | | | | | | | | | | | | When evaluating scripts, jQuery strips out the possible wrapping HTML comment and a CDATA section. However, all supported browsers are already doing that when loading JS via appending a script tag to the DOM which is how we've been doing `jQuery.globalEval` since jQuery 3.0.0. jQuery logic was imperfect, e.g. it just stripped the `<!--` and `-->` markers, respectively at the beginning or the end of the script contents. However, browsers are also stripping everything following those markers in the same line, treating them as single-line comments delimiters; this is now also mandated by ECMAScript 2015 in Annex B. Instead of fixing the jQuery logic, just let the browser do its thing. We still need to strip CDATA sections for backwards compatibility. This shouldn't be needed as in XML documents they're already not visible when inspecting element contents and in HTML documents they have no meaning but we're preserving that logic for backwards compatibility. This will be removed completely in 4.0. Fixes gh-4904 Closes gh-4905 Ref gh-4906
* Build: Test on Node.js 16 instead of 15Michał Gołębiowski-Owczarek2021-07-121-2/+2
| | | | | | | | | Node.js 10 is kept for now despite being EOL'd as that's what our current infrastructure relies on. Closes gh-4902 (cherry picked from commit 0f623fdc8db128657716290cb7d57430e224c977)
* Tests: Switch background image from online file to local 1x1.jpgTimo Tijhof2021-05-242-19/+9
| | | | | | | | Also, remove unused `expected` property in `css` test cases. Closes gh-4866 (cherry picked from commit 482f846203e82b1c2620f580e483bf41d11f9f49)
* Event: Don't break focus triggering after `.on(focus).off(focus)`Michał Gołębiowski-Owczarek2021-05-102-4/+20
| | | | | | | | | | | | | | | | | | | | | | The `_default` function in the special event settings for focus/blur has always returned `true` since gh-4813 as the event was already being fired from `leverageNative`. However, that only works if there's an active handler on that element; this made a quick consecutive call: ```js elem.on( "focus", function() {} ).off( "focus" ); ``` make subsequent `.trigger( "focus" )` calls to not do any triggering. The solution, already used in a similar `_default` method for the `click` event, is to check for the `dataPriv` entry on the element for the focus event (similarly for blur). Fixes gh-4867 Closes gh-4885 (cherry picked from commit e539bac79e666bba95bba86d690b4e609dca2286)
* Build: Take core-js from the external directory as wellMichał Gołębiowski-Owczarek2021-04-144-1/+33
| | | | | | | | | | All the other files were already taken from the external directory. The fact core-js was taken from node_modules broke IE core tests on TestSwarm. Ref gh-4865 Ref gh-4870 (partially cherry picked from 345cd22e5664655ed315958ed2056610607c12ef)
* Tests: Strip untypical callback parameter characters from mock.phpMichał Gołębiowski-Owczarek2021-04-132-11/+21
| | | | | | | | | | | | | | Only allow alphanumeric characters & underscores for callback parameters. The change is done both for the PHP server as well as the Node.js-based version. This is only test code so we're not fixing any security issue but it happens often enough that the whole jQuery repository directory structure is deployed onto the server with PHP enabled that it makes is easy to introduce security issues if this cleanup is not done. Ref gh-4764 Closes gh-4871 (cherry picked from a70274632dc19ff4a64d7bb7657a2cc647ff38b9)
* Build: Updating the 3.x-stable version to 3.6.1-pre.Timmy Willison2021-03-021-1/+1
|
* Release: remove the need to install grunt globallyTimmy Willison2021-03-011-3/+3
|
* Release: update version to 3.6.0-preTimmy Willison2021-03-011-1/+1
|
* Release: drop the need for npm as a local dependencyTimmy Willison2021-03-012-36/+16
| | | | - Not meant to be used like that anymore
* Release: upgrade release dependenciesTimmy Willison2021-03-011-5/+5
|
* Release: update AUTHORS.txtTimmy Willison2021-03-011-0/+4
|
* Selector: Update Sizzle from 2.3.5 to 2.3.6Michał Gołębiowski-Owczarek2021-02-174-8/+8
| | | | Fixes gh-4782 Close gh-4846
* Support: ensure display is set to block for the support div (#4844)Timmy Willison2021-02-161-0/+8
| | | | | | - Fixes an issue with the support test in iframes in Android 8 Chrome 86+, where display: inline resulted in unexpected height values. Fixes gh-4832
* Build: Rename master to main across the repositoryMichał Gołębiowski-Owczarek2021-02-055-14/+14
| | | | | | | | | The default branch was updated, this updates the remaining occurrences in code & comments. Closes gh-4838 (cherry picked from commit 8ae477a432f0924cd4bd3bdeaef2c4c15e483a8f)
* Deferred: Rename master to primaryMichał Gołębiowski-Owczarek2021-01-121-8/+8
| | | | | | Closes gh-4828 (cherry picked from a32cf6324f8f2190e66a687e94be9687ebf840b7)
* Tests: Fix tests for not auto-executing scripts without dataTypeMichał Gołębiowski-Owczarek2021-01-112-2/+2
| | | | | | | | | | | | | | | | Two issues are fixed in testing for responses with a script Content-Type not getting auto-executed unless an explicit `dataType: "script"` is provided: * the test is now using a correct "text/javascript" Content-Type; it was using "text/html" until now which doesn't really check if the fix works * the Node.js based version of the tests didn't account for an empty `header` query string parameter Closes gh-4824 Ref gh-2432 Ref gh-2588 Ref 39cdb8c9aa0fde68f733553ba050a2ba9d86474c (cherry picked from commit d38528b17a846b7ca4513b41150a05436546292d)
* Dimensions: Modify reliableTrDimensions support test to account for FFTimmy Willison2021-01-113-10/+15
| | | | | | | | | Firefox incorrectly (or perhaps correctly) includes table borders in computed dimensions, but they are the only one. Workaround this by testing for it and falling back to offset properties Fixes gh-4529 Closes gh-4807
* Tests: Skip the jQuery.parseXML error reporting test in Legacy EdgeMichał Gołębiowski-Owczarek2020-12-081-3/+6
| | | | | | | | Legacy Edge, similarly to IE, doesn't report XML parsing errors but just tries to render the invalid document. Skip the error reporting test there, Edge Legacy will return a generic "Invalid XML" error, just like IE. Ref gh-4816
* Tests: Fix the jQuery.parseXML error reporting testMichał Gołębiowski-Owczarek2020-12-081-2/+4
| | | | | | | | Changes: * Remove incorrect `QUnit.testUnlessIE` usage as that util is only available on `master`, not here. * Change `firstCall.lastArg` to `firstCall.args[ 0 ]` as the former API is not available in older Sinon versions.
* Core: Report browser errors in parseXMLMichał Gołębiowski-Owczarek2020-12-082-8/+36
| | | | | | | Fixes gh-4784 Closes gh-4816 (cherry picked from commit 8969732518470a7f8e654d5bc5be0b0076cb0b87)