Commit Graph

156 Commits

Author SHA1 Message Date
Oleg Gaidarenko
58c6ca9822 Build: ESLint details
Use eslint pragmas, fix new errors, etc

Closes gh-3148
2016-06-11 10:41:33 +03:00
Oleg Gaidarenko
f80ae67c53 Build: Switch from jscs+jshint to eslint 2016-06-11 10:39:51 +03:00
Michał Gołębiowski
d3a781d762 Build: Don't lint the built file in the husky precommit hook
The husky Git precommit hook was linting not only the source but also the
built file. Normally it's expected, we want to run basic checks on what's
built but in the precommit hook we're not building the file so we might
be linting some previous, broken version.

Fixes gh-3091
2016-04-29 10:36:57 +02:00
Richard Gibson
cf1497a58c Build: A more modest block-level function proposal
This reverts commit fa610da684.
2016-04-23 22:14:25 -04:00
Michał Gołębiowski
fa610da684 Build: Workaround strict mode violations caused by UglifyJS
This commit increases the gzipped size by 90 bytes so a better solution
is needed but, at the same time, it disables the very optimizations
that are causing strict mode violations in Firefox 45, Safari 9 & IE 10.

Refs 76084372c2
Refs mishoo/UglifyJS2#1052
2016-04-23 20:30:00 +02:00
Timmy Willison
5cbb234dd3 Core: implement ready without Deferred
- Make jQuery.ready promise-compatible
- Gives up sync guarantee for post-ready callbacks

Fixes gh-1778
Fixes gh-1823
Close gh-2891
2016-04-04 11:26:22 -04:00
Michał Gołębiowski
c7431c7793 Build: Drop testing on jsdom with Node 0.10 & 0.12
Fixes gh-2841
2016-02-10 12:57:49 +01:00
Michał Gołębiowski
991e3f3e2a Build: Move the stripJSONComments variable to the function that uses it 2016-02-10 12:54:25 +01:00
Michał Gołębiowski
3f46cec169 Build: Stop removing the JSHint onevar option, it's no longer there 2016-02-09 10:18:19 +01:00
Jha Naman
d94c453979 Build: run linters on git-commit
Fixes gh-2577
Closes gh-2881
2016-01-29 02:34:55 +03:00
Michał Gołębiowski
67c96a59f5 Build: Update npm deps, fix Sinon npmcopy config
All deps were updated except:
 * jsdom - tests using a Symbol polyfill are hacky and break with newer jsdom;
   we need to re-do them properly first
 * qunitjs - versions 1.19.0 & 1.20.0 introduce race conditions to the tests,
   making the fail randomly

Those two packages will be updated once issues related to them get resolved.

Fixes gh-2877
2016-01-27 12:54:39 +01:00
Michał Gołębiowski
dda87f6b16 Build: enable JSCS for test/unit/support.js, fix styling issues 2016-01-27 12:14:17 +01:00
Timmy Willison
f5fb8d71cb Build: Encode non-ASCII as \uXXXX 2016-01-11 11:42:33 -05:00
Timmy Willison
cf7102c3f1 Release: push a custom slim build to the CDN
Fixes gh-2653
Close gh-2711
2015-11-16 11:22:20 -05:00
Dave Methvin
1144e754a6 Build: Add "deprecated" to the Testswarm module list
Ref #1740

Yeah.
2015-10-20 12:30:01 -04: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
Michał Gołębiowski
2c7e9c9349 Tests: Add simple tests for Android 2.3
Fixes gh-2505
Closes gh-2509
Refs gh-2483
2015-09-08 18:03:49 +02:00
Michał Gołębiowski
dbb2daa8c3 Build: Don't install jsdom 3 on Node.js 0.10 & 0.12 by default
jsdom 3 requires Python & Visual Studio on Windows which is a significant
barrier to contributors. Newer jsdom versions don't require pre-compiling
but work only on io.js. This commit installs the new jsdom everywhere (it
does install in old Node.js, it just won't work) and executes Node-related
tests only on newer Nodes or if a working jsdom version is installed. The
latter can be achieved by running the `old_jsdom` task.

Node.js is merging with io.js soon so this will become a smaller problem over
time.

One drawback is our Jenkins setup runs on Node 0.10 so it won't be running
Node tests anymore. We have Travis set up on io.js, though so all PRs
have those tests run. When the new LTS Node.js arrives (as it soon merges
with io.js) we should update our Jenkins infrastructure so that it runs on this
new version.

Fixes gh-2519
Closes gh-2526
2015-09-08 17:42:38 +02:00
Thomas Tortorini
3dd3d1357d Effects: Finish should call progress
Fixes gh-2283
Closes gh-2292
2015-09-08 02:40:54 +02:00
Oleg Gaidarenko
5adf04a73c Build: put back "lint" command to the "dev" list
Also fix lint error in `data` module.

It seems this command was removed from the list during merge
2015-09-08 02:33:43 +03:00
Oleg Gaidarenko
99975c44ab Build: correct jscs paths 2015-09-07 20:03:50 +03:00
Oleg Gaidarenko
10fdad742a Build: Update jscs and lint files
Fixes gh-2056
2015-09-07 20:03:50 +03:00
Michał Gołębiowski
669cb16d76 Build: Add a comment explaining why the es3 option is needed
It might not be obvious to everyone that IE 9 & Android 4.0 are not
ES5-compliant browsers (by a large margin) so it's better to add a support
comment. This requires slight changes in parsing the config file
as it's not a pure JSON anymore. JSHint understands such files without
problems.

Closes gh-2520
2015-08-03 18:51:18 +02:00
Corey Frang
b3b2d6c3dd Effects: Adding unit tests for jQuery.Animation
Closes gh-2326
2015-06-26 20:06:03 -04:00
Corey Frang
cdaed15c7e Effects: Add tests for jQuery.Tween 2015-06-26 20:05:25 -04:00
Michał Gołębiowski
bb026fc12c Core: Make jQuery objects iterable
Make iterating over jQuery objects possible using ES 2015 for-of:

    for ( node of $( "<div id=narwhal>" ) ) {
        console.log( node.id ); // "narwhal"
    }

Fixes gh-1693
2015-06-13 23:14:36 +02:00
Oleg Gaidarenko
285cfbfccc Build: remove bower.json lint target
Ref 26eca143c2
2015-06-11 16:25:36 +03:00
Michał Gołębiowski
ab40725879 Core: Test all factory use cases from intro.js
There is a lot of logic in intro.js; now we test four cases:
1. (implicitly, via QUnit tests) A real browser with window being the global
2. Browserify where there are both global & window variables.
3. Node with jsdom where window is passed manually to the jQuery factory.
4. Pure Node with incorrect window passed; jQuery should throw then.

Previously the second & fourth case was not tested and the third was tested
in a way that interfered with the main test environment.

We now also test if in the Browserify case we're not creating a jQuery global
by default.

Fixes gh-2181
Closes gh-2234
2015-04-27 22:44:47 +02:00
Richard Gibson
555a50d340 Deferred: Backwards-compatible standards interoperability
Fixes gh-1722
Closes gh-1996
2015-03-20 02:00:17 -04:00
Timmy Willison
a76c781236 Release: remove sourcemap comment from all copies of minified file
Fixes gh-1707
2015-01-30 12:22:31 -08:00
Richard Gibson
bb928bde7e Build: Rearrange grunt/npm tasks into a build/dist/test pattern
Ref 76df9e4e38
Closes gh-1980
2015-01-11 10:28:18 -05:00
Anne-Gaelle Colom
66e1b6b8d4 Build: Remove dates from copyright notice
Closes gh-1983
2015-01-03 16:01:57 -05:00
Michał Gołębiowski
76df9e4e38 Build: Don't assume the browser environment; smoke test on Node w/ jsdom
Fixes gh-1950
Closes gh-1949
2014-12-26 13:26:46 +01:00
Timmy Willison
7602dc708d Sizzle: update to 2.1.1 2014-12-15 12:30:43 -05:00
Timmy Willison
269a27c702 Build: update source map options for the new grunt jshint 2014-07-17 11:15:19 -07:00
Timmy Willison
c869a1ef8a Build: update grunt-jscs-checker and pass with the new rules 2014-07-17 10:25:59 -07:00
Timmy Willison
e1949f4371 Build: drop bower; use npm for front-end deps
Fixes #15186
Closes gh-1620
2014-07-17 09:02:59 -07:00
Timmy Willison
bcca4f041b Build: update Sizzle to 2.0.0 2014-07-01 16:50:27 -04:00
Timmy Willison
c0b23e2b71 Build: update Sizzle to 1.11.1 and include license 2014-06-25 13:43:09 -04:00
Scott González
c5d9d88dce Build: Move all external libraries to external directory
Closes gh-1593
2014-06-24 10:17:50 -04:00
Scott González
8d113104e9 Build: Remove unused Sizzle test files 2014-06-24 10:16:55 -04:00
Timmy Willison
97c803acfb Ajax: move ajax event aliases to their own file
Fixes #15126
2014-06-02 12:39:11 -04:00
Timmy Willison
b80700c75f Build: run jshint and jscs on release scripts 2014-05-23 13:01:03 -04:00
Oleg Gaidarenko
1514dca501 Build: Remove json check for jscs config 2014-04-23 20:02:06 +04:00
Michał Gołębiowski
d0131da70e Build: Remove Sizzle from run names passed to the testswarm task 2014-04-15 16:38:23 +02:00
Oleg Gaidarenko
9d79b99874 Build: Add lint task 2014-04-15 17:45:59 +04:00
Oleg Gaidarenko
3dee2983ab Build: Use jscs to check test helpers
Also fix issues found by jscs
2014-04-15 17:45:59 +04:00
Timmy Willison
710d236ad1 Sizzle: update committed dependencies 2014-01-13 16:37:42 -05:00
Dave Methvin
3118f58c46 Build: Happy New Year! Thanks @marlonlandaverde 2014-01-09 20:51:21 -05:00
Timmy Willison
281808f61d Gruntfile: fix watch task 2013-12-20 18:38:57 -05:00
Michał Gołębiowski
7deee6af72 Build: Upgrade to grunt-contrib-jshint 0.7.1 and squash subtasks
grunt-contrib-jshint 0.7.1 allows the jshintrc option to be set to true to have
it read the appropriate config file based on the file being checked. The only
place where we can’t use it is the check for dist/jquery.js that has the onevar
option removed.

Fixes #14504
2013-12-18 15:24:29 +01:00
Timmy Willison
f9ad13c9ec Manage bower dependencies with grunt-bowercopy
Tracked bower dependencies are located at "src/sizzle" and "test/libs".
The source-destination mapping is in the Gruntfile.

When updating a bower dependency, update the version in bower.json, run
`grunt bower`, and then commit the result. When adding a dependency,
update the bowercopy task accordingly.

Fixes #14615.
Closes gh-1452.
2013-12-06 16:04:35 -05:00
Timmy Willison
ac7ff97f8b Use grunt and bower packages as local dependencies. Close gh-1433. 2013-11-14 10:17:18 -05:00
Michał Gołębiowski
d0fadbba9f Remove workarounds for the uglify task mishandling banners when used with source maps.
The issue was fixed in grunt-contrib-uglify:
https://github.com/gruntjs/grunt-contrib-uglify/issues/22
2013-11-09 23:12:06 +01:00
Oleg
85d4c0133b Check Gruntfile and tasks for code style 2013-11-08 16:03:51 +01:00
Sindre Sorhus
abfa210adf Add load-grunt-tasks package dependency
Close gh-1405
2013-11-07 21:38:38 +01:00
Oleg
5ce0b34257 Fix #12757 - use jscs to check the style guide
Close gh-1396
2013-11-07 20:58:27 +01:00
Timmy Willison
209f0a8a8b Only set uglify options if not already the default 2013-10-15 17:59:58 -04:00
Timo Tijhof
3ca883f863 No ticket: Clean up uglifyjs compress options. Close gh-1382.
(cherry picked from commit e15627022f)
2013-10-15 16:49:47 -04:00
Timmy Willison
6095be1260 Preparations for npm/bower publishing 2013-10-15 16:14:35 -04:00
Timmy Willison
fc4ff9315d Add bower install script and release scripts to jshint and pass lint 2013-10-07 18:24:02 -04:00
Michał Gołębiowski
923bfc80db No ticket. Simplify the post-uglify task. 2013-10-02 00:39:49 +02:00
Michał Gołębiowski
1a25f21dc3 No ticket. Restore checking individual src/**/*.js files by jsHint. 2013-09-06 20:31:18 +02:00
Michał Gołębiowski
bbbdd94725 Fix #10814. Make support tests lazy and broken out to components. 2013-09-06 03:38:22 +02:00
Michał Gołębiowski
dfaee326e6 Fix #13983. Switch to //# for sourcemap directives. 2013-09-05 18:23:56 +02:00
Timmy Willison
31f0912267 Custom builds: Remove _evalUrl when excluding ajax 2013-08-16 10:11:22 -04:00
Oleg Gaidarenko
df67c1ab09 Move jQuery specific tasks to independent files. Close gh-1334.
Also:
	* Confirm build task to the style guide
	* Use grunt API to load jQuery specific tasks
	* Add "use strict"; statements
2013-08-16 09:48:00 -04:00
Timmy Willison
6318ae6ab9 AMD-ify jQuery sourcegit s! Woo! Fixes #14113, #14163. 2013-08-15 14:15:49 -04:00
Timmy Willison
07b5f126e2 Lint JSON manifests during development 2013-07-19 09:54:15 -04:00
Michał Gołębiowski
c33108cad1 Update devDependencies, adjust .jshintrc to jsHint 2.x, use .jshintignore. Close gh-1283. 2013-07-11 12:52:48 -04:00
Timmy Willison
b13d8229ae Include Sizzle and Qunit with bower. Fixes #14118. 2013-07-10 12:00:26 -04:00
Timmy Willison
1f67d07c60 Support CommonJS environments by accentuating the need for a window with a document. Fixes #13768. 2013-07-04 14:00:26 -04:00
Dave Methvin
6e630fbbb1 Revert "Fix #13983. Switch to //# for sourcemaps."
Per the discussion here:
https://code.google.com/p/chromium/issues/detail?id=256636

Thanks to the Chrome team for the quick response!

This reverts commit d53ddc90c1.
2013-07-02 16:58:20 -04:00
Dave Methvin
d53ddc90c1 Fix #13983. Switch to //# for sourcemaps.
Normally we'd avoid doing this on a patch release, but Chrome Canary is
spewing deprecation warnings already and that's generating bug tickets.
2013-07-02 09:48:40 -04:00
Jörn Zaefferer
8643ac77fb Build: Update testswarm task to node-testswarm 1.x API 2013-06-05 15:58:33 +02:00
Michał Gołębiowski
997da31121 Fix #13793. Correct source map generation bugs. Close gh-1275. 2013-05-23 21:08:57 +02:00
Dave Methvin
8ee67bde11 Add release time to header on uncompressed file.
(cherry picked from commit 71f33cc7d9)
2013-05-11 15:58:45 -04:00
Kyle Robinson Young
b5580a9898 Use grunt option with grunt.util.spawn, close gh-1255. 2013-05-09 15:14:46 -04:00
Richard Gibson
9d16fe6283 Fix #13776: Add banner before generating source map. Close gh-1246. 2013-04-18 13:35:37 -04:00
Oleg
aae7abfeb6 Change uglify compression options, close gh-1245. 2013-04-18 12:38:00 -04:00
Michał Gołębiowski
8576e24bfe Tell uglifyjs to not mangle undefined; saves 44 bytes. Fixes #13759. Close gh-1239. 2013-04-15 18:46:14 +02:00
Timmy Willison
ac9cad19fa Add onevar to jshintrc, but remove the option for linting the concatenated file 2013-04-09 12:48:34 -04:00
Timmy Willison
0fa52c11cb Update jshintrc to conform to new style guide. Conform to onevar and unused in tests. Fixes #13755. 2013-04-09 11:59:31 -04:00
Dave Methvin
5031c9db4b Fix #13741. Make wrap/unwrap methods optional. Close gh-1222. 2013-04-06 16:00:58 -04:00
Richard Gibson
5d1dfe7474 Fix #13539: Utilize Sizzle hooks. Close gh-1215.
(cherry picked from commit 4ef516903e)
2013-04-05 00:37:36 -04:00
Michał Gołębiowski
ba16ba2efc Update grunt-contrib-jshint to 0.3.0, part 2, close gh-1203. 2013-04-04 12:27:21 -04:00
Richard Gibson
5b59a63b2b No ticket: fix build date formatting 2013-04-01 13:02:57 -04:00
Tom Fuertes
1f530e2867 No ticker: grunt_compare_size options. Close gh-1210. 2013-03-26 20:50:30 -04:00
Timmy Willison
8f4572406c Build selector.js from built sizzle. Update Sizzle. 2013-03-19 15:56:20 -04:00
Richard Gibson
91d57647e9 No ticket: compare_size returns!
(remember to `npm install`)
2013-03-11 10:09:10 -04:00
Richard Gibson
1083f82d1e Fix #13434: native-API selector module
What's out:
* 6 KB
* attribute not equal selector
* positional selectors (:first; :eq(n); :odd; etc.)
* type selectors (:input; :checkbox; :button; etc.)
* state-based selectors (:animated; :visible; :hidden; etc.)
* :has(selector)
* custom selectors
* leading combinators (e.g., $collection.find("> *"))
* reliable functionality on XML fragments
* requiring all parts of a selector to match elements under context (e.g., $div.find("div > *") now matches children of $div)
* matching against non-elements
* reliable sorting of disconnected nodes
2013-02-27 22:45:55 -05:00
Dave Methvin
6f7b6915bf Fix #12656. Make event shorthands excludable. 2013-01-27 09:07:00 -05:00
Dave Methvin
47a6f52dc9 Fix build until next grunt rc, disable compare_size. 2013-01-26 15:05:42 -05:00
Richard Gibson
487b703521 Fix #13274: Wrap sourceMap directive in multiline comments. Close gh-1143.
(cherry picked from commit ac93559eb9)
2013-01-25 10:09:27 -05:00
Dave Methvin
fa71737fb4 Leave out the web site, you know where to find us. 2013-01-11 16:59:24 -05:00
Dave Methvin
c0c1bdde60 Update copyrights used in file headers. 2013-01-11 16:08:09 -05:00
Dave Methvin
2ff2d1d3dc Fix #12886. Fix map file reference in .min.js file.
Cherry picked from e348b40608 .
2013-01-10 10:50:25 -05:00
Dave Methvin
d2a51f0e44 Allow build to continue with --force on bad line endings. 2013-01-06 10:03:59 -05:00
Dave Methvin
b760d798d3 Fix #12471. Use consistent line endings in jquery.js 2013-01-06 09:55:51 -05:00
Rick Waldron
df7431b7dd Set testswarm browsersets to "popular-no-old-ie"
Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
2012-12-31 13:10:05 -05:00