Commit Graph

6021 Commits

Author SHA1 Message Date
Oleg Gaidarenko
b078a62013 Ajax: Mitigate possible XSS vulnerability
Proposed by @jaubourg

Fixes gh-2432
Closes gh-2588
2015-10-12 17:05:18 +03:00
Richard Kraaijenhagen
735dea34fb Docs: "npm run build" was missing from the contributing guides
Close gh-2537
2015-10-12 09:59:39 -04:00
Richard Gibson
f23a64d745 Tests: Use QUnit URL parameter parsing 2015-10-08 23:29:32 -04:00
Richard Gibson
f9af896bb8 Tests: Add dummy modules when running basic tests
Without this, other modules don't appear in the QUnit module picker.

Ref 855b0c8c28
Closes gh-2582
2015-10-08 23:26:03 -04:00
Anthony Ryan
99e8ff1baa Manipulation: Don't provide the parser with sloppy table markup
While we can reply on parsers that were designed to cope with
malformed syntax to understand what we mean, we shouldn't
intentionally provide bad markup, not all parsers will accept
it.

"Be conservative in what you do, be liberal in what you accept
from others."

Reverts 0ea342a6a6

Refs gh-2031
Refs gh-2002
Fixes gh-2493
Closes gh-2499
2015-09-14 22:01:04 +02:00
Jason Bedard
b5f7c9e2d5 Data: Combine register and cache methods
Closes gh-2553
2015-09-14 21:53:27 +02:00
Michał Gołębiowski
ce3b4a6242 Ajax:Attributes:CSS:Manipulation: Reduce Android 2.3 support
Drop non-critical workarounds for Android 2.3.

Fixes gh-2483
Fixes gh-2505
Closes gh-2581
2015-09-14 21:26:48 +02:00
Michał Gołębiowski
64fd7ef3d0 Tests: Account for Edge in originalEvent UA-sniffs
All other cases where Edge user agent needed to be taken into account
in tests have already been resolved.

Fixes gh-2357
2015-09-14 21:13:44 +02:00
Michał Gołębiowski
cea94a83c7 Build: Remove a double empty line at the end of .travis.yml
The file already had an empty line at the end, I just can't see.

Refs 06320c88af
2015-09-11 21:44:54 +02:00
Michał Gołębiowski
06320c88af Build: Use double quotes in .travis.yml
.travis.yml used single quotes which is inconsistent with what we use in most
other files. Also, the file was missing an empty line at the end.
2015-09-11 21:35:22 +02:00
Michał Gołębiowski
250a1990ba Build: Drop io.js testing, test on latest Node.js
Node.js & io.js have merged, there will be no more major io.js releases.
Also, as of today io.js is officially unsupported (even if it still gets some
updates) while Node.js 4.0.0 (just released!) will be supported until 2018.
2015-09-08 22:38:29 +02:00
Richard Gibson
d3d8d9751f Tests: Provide equal() arguments in correct order (actual, expected)
Ref 224271982e
Ref f5bf9bc488
2015-09-08 16:28:44 -04:00
Jason Bedard
0e982433eb Data: avoid using delete on DOM nodes
Closes gh-2479
2015-09-08 20:22:54 +02:00
Sean Henderson
d4def22e4c Manipulation: Switch rnoInnerhtml to a version more performant in IE
IE versions greater than 9 do not handle the old regular expression well
with large html content. This is due to the use of a non-capturing group
after a very common html character (<).

Test suite: http://jsfiddle.net/Lwa0t5rp/3/
Microsoft bug: https://connect.microsoft.com/IE/feedback/details/1736512/

Fixes gh-2563
Closes gh-2574
2015-09-08 19:31:57 +02:00
Michał Gołębiowski
1b566d37a2 Tests: Really fix tests in IE 8 this time
IE 8 doesn't have indexOf on arrays. Also, one toLowerCase() was missing. Oops.

This commit is not necessary on master but has been brought here to keep
tests similar in both branches.

(cherry-picked from 1b48eef4ca)
2015-09-08 19:02:35 +02:00
Michał Gołębiowski
5914b10362 Tests: Make basic tests work in IE 8
IE 8 prints tag names in upper case which was breaking some tests.

This commit is not necessary on master but has been brought here to keep
tests similar in both branches.
2015-09-08 18:43:08 +02:00
Michał Gołębiowski
855b0c8c28 Tests: Don't load non-basic tests when basic module is selected
When loading basic tests don't load any others to not overload Android 2.3.
The drawback is that most tests are not selectable in the module dropdown
when the basic module is seelcted.

Refs 2c7e9c9349
2015-09-08 18:36:42 +02: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
Michał Gołębiowski
f9ef427d35 Traversing: Don't expose jQuery.dir & jQuery.sibling
jQuery.dir & jQuery.sibling are undocumented internal APIs; they shouldn't
be exposed.

Fixes gh-2512
Closes gh-2525
2015-09-08 17:32:07 +02:00
Oleg Gaidarenko
c161eecce0 Tests: more style corrections
Provocated by jscs-dev/node-jscs@2de68c0d83

Closes gh-2578
2015-09-08 04:06:20 +03:00
Oleg Gaidarenko
c8d15a2f9f Tests: further improvements QUnit 2.0 migration
* Remove QUnit jshint globals
* Extend QUnit.assert methods
* Use assert.async instead of start/stop/done

Ref b930d14ce6
2015-09-08 04:06:20 +03:00
Thomas Tortorini
3dd3d1357d Effects: Finish should call progress
Fixes gh-2283
Closes gh-2292
2015-09-08 02:40:54 +02:00
Yongwoo Jeon
98cee73244 Core: Remove unnecessary parameter to jQuery#constructor
Closes gh-2441
2015-09-08 02:30:26 +02:00
Batiste Bieler
ab30934c1d Build: Fix an email address of a contributor
Closes gh-2455
2015-09-08 02:26:05 +02:00
Jason Bedard
f5bf9bc488 Data: do not create data cache when fetching single property
Closes gh-2554
2015-09-08 01:55:51 +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
Jason Bedard
224271982e Data: Don't expose jQuery.acceptData
jQuery.acceptData is an undocumented internal API that shouldn't be exposed.

Fixes gh-2555
2015-09-08 01:00:31 +02:00
Michał Gołębiowski
02e10082b2 Tests: lower the PHP sleep time in unreleasedXHR.html
The AJAX test performed in unreleasedXHR.html was scheduling PHP processes
sleeping for 10 minutes. When a lot of commits are tested in short intervals
this was causing build failures due to the drained php-fpm pool.

The 10 seconds sleep time should be enough for this test.

Refs 62acda819f
2015-09-08 00:44:44 +02:00
Michał Gołębiowski
14c0fe4432 Serialize: Fix object detection
jQuery.type doesn't just return "null" for null but also e.g. "array"
for arrays instead of object so it's not really a typeof analogue.

My suggestion was stupid. Sorry.

Refs 3d7ce0a65f
2015-09-07 23:22:56 +02:00
Daniel Nill
3d7ce0a65f Serialize: Handle arrays with null values
Closes gh-2436
2015-09-07 22:45:23 +02:00
Reed Loden
835e9218be Build: Update grunt-contrib-uglify because of a security issue in uglify
Update grunt-contrib-uglify dependency to v0.9.2 in order to
avoid a security issue fixed in uglify-js v2.4.24.

https://github.com/mishoo/UglifyJS2/issues/751
https://zyan.scripts.mit.edu/blog/backdooring-js/

Closes gh-2556
2015-09-07 22:19:47 +02:00
Thomas Tortorini
b7a7dea95f Effects: Remove additional parameters of easings
Fixes gh-2367
Closes gh-2376
2015-09-07 22:07:32 +02:00
Oleg Gaidarenko
c9cf250daa Ajax: do not quote "throws" option - use dot notation instead
Fixes gh-2571
Closes gh-2542
2015-09-07 20:03:51 +03:00
Oleg Gaidarenko
e35bdc1a22 Build: correct style tests files which could be automatically corrected 2015-09-07 20:03:50 +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
Oleg Gaidarenko
7aa46e0df8 Tests: do not define two modules with the same name
Fixes gh-2437
2015-08-16 09:06:13 +03:00
Oleg Gaidarenko
b930d14ce6 Tests: partially use new qunit interface
http://qunitjs.com/upgrade-guide-2.x/

For most of the boring work was used
https://github.com/apsdehal/qunit-migrate package

However, it can't update local qunit helpers, plus in some places
old QUnit.asyncTest signature is still used

Fixes gh-2540
2015-08-16 09:02:01 +03:00
Richard Gibson
9d820fbde6 Event: Only check elements for delegation matches
Closes gh-2529
Ref trac-13208
(cherry picked from commit fc2ba2e136)
2015-08-10 10:26:13 -04:00
Michał Gołębiowski
9adfad1986 Core: Don't expose jQuery.access
jQuery.access was never documented, there is no need to keep it exposed.

Fixes gh-2513
Closes gh-2524
2015-08-03 19:33:38 +02: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
Oleg Gaidarenko
aabe94edb4 Tests: don't use deprecated argument in test declaration
Closes gh-2507
2015-07-30 20:46:31 +03:00
Bruno Pérel
360a478033 Docs: Fix various spelling mistakes
Closes gh-2487
2015-07-30 15:47:23 +02:00
Jason Bedard
5fe76c663f Data: remove user data in cleanData
Fixes gh-2503
Closes gh-2480
2015-07-28 14:22:03 +02:00
Michał Gołębiowski
6044fb6a73 Ajax: Account for Android 2.3 not firing window.onerror on script errors
Android 2.3 doesn't fire the window.onerror handler, just accept the reality
there and skip the test.

Refs gh-1573
Refs gh-1786
Refs jquery/jquery.com#108
Closes gh-2458
2015-07-28 13:20:20 +02:00
Michał Gołębiowski
2792845534 Event: Update support comments for mouseenter/mouseleave implementation
Custom mouseenter/mouseleave implementation was needed because of:
1. Safari 6 not implementing mouseenter/mouseleave at all.
2. Chrome sending mouseenter too often.

The second issue has been fixed in Chrome but exists now in Safari 7
(it's fixed in Safari 8) so we have to keep it for now, unfortunately.
2015-07-27 22:29:38 +02:00
Michał Gołębiowski
93bee4701d Core: Adjust comments & tests after dropping Safari 6 support
Support comments that mentioned only Safari < 7 were checked & updated
to account for bugs existing in newer versions as well; Safari 6 support
test results were removed.

Refs gh-2482
2015-07-27 22:14:48 +02:00
Thomas Tortorini
bf48c21d22 Core: .each/.map should accept an undefined/null value
Fixes gh-2267
Closes gh-2363
2015-07-27 19:57:34 +02:00
Michał Gołębiowski
d242753726 Core: Add a support comment for Safari 8
Related issue: https://bugs.webkit.org/show_bug.cgi?id=137337

Thanks @phistuck!

Refs cfe468f29c
2015-07-20 20:22:34 +02:00