Commit Graph

107 Commits

Author SHA1 Message Date
Timmy Willison
ec8802bafe
Build: migrate most grunt tasks off of grunt (3.x)
Close gh-5330

- lint
- npmcopy
- build, minify, and process for distribution.
- new custom build command using yargs
- compare size of minified/gzip built files
- pretest scripts, including qunit-fixture, babel transpilation, and npmcopy
- node smoke tests
- promises aplus tests
- new watch task using nodemon, which runs `npm run build:all` on `src` changes.

Also:

- upgraded husky and added the new lint command
- updated lint config to use new "flat" config format.
	See https://eslint.org/docs/latest/use/configure/configuration-files-new
- Temporarily disabled one lint rule until flat config is
	supported by eslint-plugin-import.
	See https://github.com/import-js/eslint-plugin-import/issues/2556
- committed package-lock.json
- updated all test scripts to use the new build
- added an express test server that uses middleware-mockserver
	this can be used to run tests without karma
- build-all-variants is now build:all
- run pretest script in jenkins

---------

Co-authored-by: Michał Gołębiowski-Owczarek <m.goleb@gmail.com>
2023-09-20 18:18:42 -04:00
Michał Gołębiowski-Owczarek
6fe88690a3
Core: Simplify code post browser support reduction
Summary of the changes:
* Tests: Remove legacy jQuery.cache & oldIE leftovers
* Tests: Reformat JavaScript in delegatetest.html
* Docs: "jQuery Foundation Projects" -> "jQuery Projects"
* Tests: Drop an unused localfile.html file (modern browsers don't support
  the `file:` protocol this way, there's no point in keeping the file around)
* Effects: Remove a redundant `!fn` check (`fn || !fn && easing` is equivalent
  to `fn || easing`; simplify the code)
* CSS: Explain the fallback to direct object access in curCSS better
* Tests: Deduplicate `jQuery.parseHTML` test titles
* Dimensions: Add a test for fractional values
* Tests: Fix a buggy WebKit regex

Closes gh-5296

(cherry picked from commit 93ca49e6d1)
2023-09-20 00:59:32 +02:00
Michał Gołębiowski-Owczarek
763ade6dda
Build: Generate the slim build on grunt & run compare_size on it
Summary of the changes:
* expand `node_smoke_tests` to test the full & slim builds
* run `compare_size` on all built minified files; don't run it anymore on
  unminified files where they don't provide lots of value

The main goal of this change is to make it easier to compare sizes of both the
full & slim builds between the `3.x-stable` & `main` branches.

Closes gh-5291
Ref gh-5255

(partially cherry-picked from commit 8be4c0e4f8)
2023-07-10 20:45:30 +02:00
Timmy Willison
141518e9c0
Docs: remove stale gitter badge from readme
Close gh-5274
2023-06-23 09:43:03 -04:00
Michał Gołębiowski-Owczarek
59f7b55bf6
Event: Simulate focus/blur in IE via focusin/focusout (3.x version)
In IE (all versions), `focus` & `blur` handlers are fired asynchronously
but `focusin` & `focusout` are run synchronously. In other browsers, all
those handlers are fired synchronously. Asynchronous behavior of these
handlers in IE caused issues for IE (gh-4856, gh-4859).

We now simulate `focus` via `focusin` & `blur` via `focusout` in IE to avoid
these issues. This also let us simplify some tests.

This commit also simplifies `leverageNative` - with IE now using `focusin`
to simulate `focus` and `focusout` to simulate `blur`, we don't have to deal
with async events in `leverageNative`. This also fixes broken `focus` triggers
after first triggering it on a hidden element - previously, `leverageNative`
assumed that the native `focus` handler not firing after calling the native 
`focus` method meant it would be handled later, asynchronously, which
was not the case (gh-4950).

To preserve relative `focusin`/`focus` & `focusout`/`blur` event order
guaranteed on the 3.x branch, attach a single handler for both events in IE.

A side effect of this is that to reduce size the `event/focusin` module
no longer exists and it's impossible to disable the `focusin` patch
in modern browsers via the jQuery custom build system.

Fixes gh-4856
Fixes gh-4859
Fixes gh-4950
Ref gh-5223
Closes gh-5224

Co-authored-by: Richard Gibson <richard.gibson@gmail.com>
2023-03-27 21:24:42 +02:00
Timmy Willison
e062f9cbc6
Docs: Remove stale badge from README
Close gh-5148

(cherry picked from commit bcd9c2bc3d)
2022-12-20 22:05:21 +01:00
fecore1
e0c670e66d
Docs: update irc to Libera and fix LAMP dead link
(cherry picked from commit 175db73ec7)
2022-12-20 22:05:07 +01:00
Michał Gołębiowski-Owczarek
6306ca4994
Selector: Inline Sizzle into the selector module: 3.x version (#5113)
This commit removes Sizzle from jQuery, inlining its code & removing obsolete
workarounds where applicable.

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 main `selector` module can be disabled in favor of `selector-native`
via:

    grunt custom:-selector

For backwards compatibility, the legacy `sizzle` alias is also supported (it
will be dropped in jQuery `4.0.0`):

    grunt custom:-selector

Sizzle tests have been ported to jQuery ones. Ones that are not compatible
with the `selector-native` module are disabled if the regular selector module
is excluded.

Backwards compatibility is still kept for all `Sizzle` utils - they continue to be
available under `jQuery.find` - but the primary implementation is now attached
directly to jQuery.

Some selector utils shared by `selector` & `selector-native` have been
extracted & deduplicated. `jQuery.text` and `jQuery.isXMLDoc` have been
moved to the `core` module.

The commit reduces the gzipped jQuery size by 851 bytes compared to the
`3.x-stable` branch.

Closes gh-5113
Ref gh-4395
Ref gh-4406
2022-12-14 01:41:31 +01:00
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
Michał Gołębiowski-Owczarek
627c573ac6 Build: Rename master to main across the repository
The default branch was updated, this updates the remaining occurrences in code
& comments.

Closes gh-4838

(cherry picked from commit 8ae477a432)
2021-02-05 23:21:21 +01:00
Michał Gołębiowski-Owczarek
7a3cf9c03c Ajax: Deprecate AJAX event aliases, inline event/alias into deprecated
A new `src/deprecated` directory makes it possible to exclude some deprecated
APIs from a custom build when their respective "parent" module is excluded
without keeping that module outside of the `src/deprecated` directory or
the `src/deprecated.js` file.

Closes gh-4572

(cherry picked from 23d53928f3)
2020-01-21 14:26:35 +01:00
Michał Gołębiowski-Owczarek
4cbdc745cc Build: Create a grunt custom:slim alias for the Slim build
Closes gh-4578

(cherry-picked from 9b9ed469b4)
2020-01-07 16:45:22 +01:00
Christian Oliff
ff5a43eb93 Docs: Convert link to Homebrew from HTTP to HTTPS
`http://brew.sh/` -> `https://brew.sh/`

Closes gh-4501

(cherry picked from commit e0022f2314)
2019-10-07 08:54:28 +02:00
Timmy Willison
9b9fca45f3
Update README.md 2019-04-02 12:31:43 -04:00
Timmy Willison
7869f83ddd
Docs: add gitter badge to README.md
Close gh-4138
2018-07-27 13:00:28 -04:00
Kris Borchers
45f0858825 README: Add FOSSA license scan status badge 2018-05-15 15:41:03 -04:00
Timo Tijhof
ecd8ddea33
Tests: Add support for running unit tests via grunt with karma
- 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
2017-12-18 12:27:38 -05:00
Dave Methvin
e5ffcb0838 Tests: Refactor testIframe() to make it DRYer and more consistent
Ref gh-3040
Closes gh-3049
2016-04-11 13:32:51 -04:00
Dave Methvin
08d73d7f9c Tests: Make iframe tests wait after checking isReady
Ref gh-3040
2016-04-11 13:29:11 -04:00
Bernhard M. Wiedemann
1de8346729 Docs: use https where possible
Close gh-2875
2016-01-27 10:52:43 -05:00
Timmy Willison
10c1254d15 Docs: remove compat references 2016-01-14 12:22:45 -05:00
Jon Dufresne
b0b280cd61 Docs: Updated links to https where they are supported.
Close gh-2746
2016-01-13 13:26:10 -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
67d7a2eefe CSS: Make show/hide/toggle methods a module
Unit test changes some uses of .show() and .hide() to .css( "display", ... ),
there was already an implicit assumption in several of the existing tests.

Fixes gh-2193
Close gh-2648
2015-10-18 12:30:00 -04:00
Gary Ye
03eaadb131 Tests:Docs: Fix various typos
* Changes "baar" to "bar" when used with "foo" in readme
  and comments of js files

* mousenter -> mouseenter

Thanks @garysye, @KimTaehee

Closes gh-2613
Closes gh-2601
2015-10-12 18:08:13 +03:00
Oleg Gaidarenko
3c92770867 Docs: remove redundant instruction from the readme
Thanks @elas7

Fixes gh-2359
2015-05-29 19:45:02 +03:00
Michał Gołębiowski
062b5267d0 Docs: Add info about Sizzle not being excludable on the compat branch
Most people just read the README that's displayed to them on GitHub which
is the one for the master branch. Let's include the info about Sizzle
not being excludable there.

Fixes gh-2184
2015-03-30 22:44:18 +02:00
Dave Methvin
b50e0f2c36 Docs: Fix README uppercase 2015-01-09 16:39:41 -05:00
Dave Methvin
a3779bc325 Docs: Clarify custom build instructions
Closes gh-1854
2015-01-06 22:15:53 -05:00
Dave Methvin
d30c482910 Misc: Mac OS is now OS X, thanks @xfq
Closes gh-1970
2015-01-06 21:04:25 -05:00
Michał Gołębiowski
b410b15e8d README: update the Homebrew site address
Thanks @xfq

Closes gh-1971
2015-01-03 19:42:37 +01:00
Oleg Gaidarenko
31b63fc236 README: various text fixes
Thank you @essamjoubori, @bcbcb, @namlede

Closes gh-1926
Closes gh-1927
Closes gh-1928
2014-12-15 16:07:10 +03:00
Dave Methvin
cfe2eae38d README: Add selector-native.js link. Thanks @randsonjs!
Closes gh-1715
2014-12-03 13:59:41 -05:00
Oleg Gaidarenko
9d6beac395 Docs: correct grunt command in README.md
Fixes gh-1850
2014-11-10 13:20:06 +03:00
Michał Gołębiowski
c309b95756 Misc: Adjust comments & docs to dropping IE<8 in jQuery Compat 2014-11-04 16:16:36 +01:00
Timmy Willison
758fd6cea9 Docs: 1.x-master branch -> compat branch; 2.x branch -> master branch 2014-11-03 12:34:45 -05:00
Michał Gołębiowski
1d75273101 README: Update the description of the deprecated module
.andSelf is now gone.
2014-10-30 14:16:32 +01:00
Dave Methvin
edfc94df92 Readme: Fix minor style issues. Thanks @MightyBranch! 2014-10-06 09:25:27 -04:00
Oleg Gaidarenko
2e9c1ead76 README: Improve build instructions
Thanks @NickStefan

Closes gh-1663
2014-09-26 20:51:48 +04:00
upisfree
df62159296 Readme: Fix punctuation in tile
Closes gh-1607
2014-07-12 22:20:03 +04:00
Dave Methvin
44247b1cf2 Readme: Fix subsection titles and grammar, thanks @robgraeber
Fixes gh-1540
2014-03-16 10:19:51 -04:00
Leonardo Balter
594687abdc Readme: updating QUnit information
updates QUnit reference site and method naming.

Closes gh-1493
2014-03-13 22:36:39 -04:00
Michał Gołębiowski
0fcb0f6826 Docs: Change raises to throws in README test assertions 2014-02-05 15:54:23 +01:00
Timmy Willison
4d19306c7f README: Add jQuery environment notes 2014-01-06 11:49:58 -08:00
Oleg
e1a4329d78 Doc: Update links and simplify build instructions 2013-12-31 23:38:34 +04:00
Timmy Willison
7e8a91c205 Build: add build option for setting the AMD name.
Fixes #14016.
2013-12-19 15:31:36 -05:00
Timmy Willison
a6f474e699 Build: Add the ability to remove global exposure.
Ref #14016
2013-12-19 15:00:06 -05:00
Dave Methvin
84190105c0 Readme: Fix typo, thanks @tcort 2013-12-18 20:44:32 -05:00
Timmy Willison
ac7ff97f8b Use grunt and bower packages as local dependencies. Close gh-1433. 2013-11-14 10:17:18 -05:00
Dominik D. Geyer
943dc6cf83 No ticket: Correct typo in README section "rebasing". Close gh-1398. 2013-10-11 11:07:59 -04:00