Oleg Gaidarenko
522f546d96
Build: More ESLint related changes
2016-07-09 00:49:43 +03:00
Michał Gołębiowski
ad6a94c3f1
Core: Re-throw errors that happened in callbacks wrapped in jQuery ready
...
Also, expose jQuery.readyException that allows to overwrite the default
ready error handler.
Fixes gh-3174
Closes gh-3210
2016-07-07 10:23:06 +02:00
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
a4474c9a00
Tests: Move promise/A+ adapters for tests to dedicated folder
2016-06-11 10:39:51 +03:00
Oleg Gaidarenko
f80ae67c53
Build: Switch from jscs+jshint to eslint
2016-06-11 10:39:51 +03:00
Michał Gołębiowski
d5dae259eb
Deferred: Propagate progress correctly from unwrapped promises
...
Progress parameters are now correctly propagated from a deferred to which
another deferred resolved unwrapping it.
Thanks to @gibson042 for the report and a clear description of the problem
and the needed fix.
Fixes gh-3062
Closes gh-3150
2016-06-09 14:53:34 +02:00
Michał Gołębiowski
e06fda69f0
Attributes: Avoid infinite recursion on non-lowercase attribute getters
...
Attribute hooks are determined for the lowercase versions of attribute names
but this has not been reflected in the bool attribute hooks. The code that
temporarily removed a handler to avoid an infinite loop was removing an
incorrect handler causing stack overflow.
Fixes gh-3133
Refs gh-2914
Refs gh-2916
Closes gh-3134
2016-06-03 22:48:43 +02:00
Michał Gołębiowski
f9ea869ab5
Tests: Remove side-effects of one attributes test
...
One test in the attribute module was overwriting jQuery.expr.attrHandle.checked
and wasn't restoring the original state after it finished. It started causing
issues for another checked-related test.
2016-06-03 11:51:33 +02:00
Dave Methvin
2df590e4ec
Event: Allow constructing a jQuery.Event without a target
...
Fixes gh-3139
Closes gh-3140
2016-06-02 20:56:47 -04:00
Oleg Gaidarenko
94efb79929
Events: don't execute native stop(Immediate)Propagation from simulation
...
In Firefox, called `stop(Immediate)Propagation` methods,
in capturing phase prevents receiving focus
Fixes gh-3111
2016-05-19 21:56:39 +04:00
Christophe Tafani-Dereeper
69db408d82
CSS: Remove units from a 0 width/height element
...
Close gh-3122
2016-05-16 10:46:47 -04:00
Dave Methvin
07c11c03cc
Deferred: Give better stack diagnostics on exceptions
...
Ref gh-2736
The exception stack has the name of the immediately outer function where the
exception occurred, which can be very handy for tracing errors. Since we already
have the exception object we might as well use it.
2016-05-11 20:21:04 -04:00
Richard Gibson
de71e9755f
Deferred: Make jQuery.when synchronous when possible
...
Closes gh-3102
Fixes gh-3100
Closes gh-3105
2016-05-09 12:14:22 -04:00
Richard Gibson
e8825a529b
Event: Cover invalid delegation selector edge cases
...
Ref 7fd36ea145
2016-05-06 22:12:53 -04:00
Felipe Sateler
7fd36ea145
Event: Evaluate delegate selectors at add time
...
This ensures that invalid selectors throw right away.
Fixes gh-3071
Closes gh-3097
2016-05-06 22:12:20 -04:00
Jason Bedard
e61fccb9d7
Event: Remove fixHooks, propHooks; switch to ES5 getter with addProp
...
Fixes gh-3103
Fixes gh-1746
Closes gh-2860
- Removes the copy loop in jQuery.event.fix
- Avoids accessing properties such as client/offset/page/screen X/Y
which may cause style recalc or layouts
- Simplifies adding property hooks to event object
2016-05-04 15:57:25 -04:00
Michał Gołębiowski
7f2ebd2c4d
Tests: Make the regex catching Safari 9.0/9.1 more resilient
...
The word boundary character will prevent iOS from being a false positive.
2016-05-02 23:05:56 +02:00
Michał Gołębiowski
234a2d8280
Tests: take Safari 9.1 into account
...
Safari 9.1 shares its support test results with Safari 9.0 but it's been
excluded from the regex catching Safari 9.0. This has been fixed.
2016-05-02 22:49:17 +02:00
Richard Gibson
356a3bccb0
Deferred: Separate the two paths in jQuery.when
...
Single- and no-argument calls act like Promise.resolve.
Multi-argument calls act like Promise.all.
Fixes gh-3029
Closes gh-3059
2016-05-02 12:30:31 -04:00
Oleg Gaidarenko
d6e99d9b5e
Revert "Effects: Remove additional parameters of easings"
...
This reverts commit b7a7dea95f
.
Fixes #3064
2016-04-27 23:21:56 +03:00
Richard Gibson
7f1e59343b
Deferred: Provide explicit undefined context for jQuery.when raw casts
...
Fixes gh-3082
Closes gh-3084
2016-04-27 15:33:12 -04:00
Dave Methvin
df2051cf59
Ajax: Ensure ajaxSettings.traditional is still honored
...
Fixes gh-3023
Closes gh-3081
Since .param() no longer looks at this setting we need unit tests
to ensure it is still honored by $.ajax().
2016-04-27 09:06:43 -04:00
Alexander K
4f270427d2
Serialize: .param - don't use ajaxSettings.traditional
...
Ref gh-3023
Closes gh-3030
2016-04-27 09:05:30 -04:00
Richard Gibson
f496182216
Tests: Weaken sync-assumption from jQuery.when to jQuery.ready.then
2016-04-26 10:14:53 -04:00
Richard Gibson
76084372c2
Deferred: Remove default callback context
...
Employs strict mode to simplify Deferred callback context handling.
Fixes gh-3060
Closes gh-3061
2016-04-23 00:30:48 -04: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
Richard Gibson
755e7ccf01
CSS: Toggle detached elements as visible unless they have display: none
...
Fixes gh-2863
Closes gh-3037
2016-04-11 13:21:11 -04:00
Oleg Gaidarenko
ce6c83f710
Core: add test for jQuery.isPlainObject(localStorage)
...
Ref gh-3045
2016-04-08 13:54:23 +03:00
Joe Trumbull
9fdbdd393a
Serialize: Treat literal and function-returned null/undefined the same
...
Fixes gh-3005
Closes gh-3007
2016-04-05 10:38:56 -04:00
Oleg Gaidarenko
5d20a3c3f1
Ajax: execute jQuery#load callback with correct context
...
Thanks @blq (Fredrik Blomqvist)
Fixes gh-3035
Close gh-3039
2016-04-04 16:22:35 -04:00
Oleg Gaidarenko
c158f5761a
Tests: do not run IE9 effect tests if inside testswarm
...
That test doesn't work properly in such environment
Ref e04e246552
Fixes gh-2888
Closes gh-3034
2016-04-04 21:58:33 +03:00
Richard Gibson
e0d3bfa770
Core: Simplify isPlainObject
...
Fixes gh-2986
Close gh-2998
2016-04-04 12:02:13 -04:00
Timmy Willison
10fc59007d
Core: set the base href of the context in parseHTML
...
Fixes gh-2965
Close gh-3022
2016-04-04 11:30:27 -04: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
6072d150d6
Docs: Update support comments to follow the new syntax
...
The changes follow the spec proposed in:
https://github.com/jquery/contribute.jquery.org/issues/95#issuecomment-69379197
2016-03-30 23:45:17 +02:00
Michał Gołębiowski
622db29d9c
Docs:Tests: Remove legacy code & add support comments where needed
...
This commits backports some changes done in the patch to the then-existing
compat branch that removed support for old browsers and added some support
comments.
Refs 90d7cc1d8b
2016-03-30 11:21:36 +02:00
Timmy Willison
7052698191
Attributes: strip/collapse whitespace for set values on selects
...
Fixes gh-2978
Close gh-3002
2016-03-17 12:24:51 -04:00
Richard Gibson
0c1f72667d
Core: Restore 1.x isPlainObject constructor checks
...
- Guard isPlainObject against inherited scalar constructors
Fixes gh-2982
Close gh-2985
2016-03-14 11:45:07 -04:00
Oleg Gaidarenko
728ea2f277
Tests: add additional test for jQuery.isPlainObject
...
Ref 00575d4d8c
Also see discussion in
https://github.com/jquery/jquery/pull/2970#discussion_r54970557
2016-03-12 16:43:02 +03:00
Alexander Lisianoi
59ec78e602
Tests: Restrict "p > * > *" selection in selector.js to #qunit-fixture
...
Add `match` and `QUnit.assert.selectInFixture` functions that
mimic `QUnit.assert.t`.
Ref gh-2880
Closes gh-2973
2016-03-09 14:09:20 -05:00
Michał Gołębiowski
9b086888b8
Docs:Tests: Remove obsolete code from tests, update support comments
...
Support comments that were lacking the final IE/Edge version that exhibits
the bug were checked & updated. Links to the Chromium bug tracker were updated.
Code in tests related to unsupported browsers (like Android 2.3 in non-basic
tests) has been removed.
Fixes gh-2868
Closes gh-2949
2016-03-08 23:26:46 +01:00
Timmy Willison
00575d4d8c
Core: restore enumeration behavior in isPlainObject
...
Fixes gh-2968
Close gh-2970
2016-03-07 11:12:47 -05:00
Michał Gołębiowski
93a8fa6bfc
Core: Deprecate jQuery.parseJSON
...
Fixes gh-2800
Closes gh-2948
2016-03-02 13:12:35 +01:00
Vitaliy Terziev
f00dd0f0b2
Dimensions: Add tests for negative borders & paddings
...
Closes gh-2869
2016-02-24 14:27:19 +01:00
Alexander Lisianoi
ddb2c06f51
Tests: limit selection to #qunit-fixture in attributes.js
...
Ref gh-2880
Close gh-2921
2016-02-22 11:56:04 -05:00
William Robinet
12038c7234
Tests: fix typos
...
Closes gh-2927
2016-02-17 14:13:45 -05:00
Oleg Gaidarenko
fc50791469
Tests: use jQuery
variable instead of $
...
For some reason that works with `amd` but not with builded version
Fixes gh-2909
2016-02-13 21:22:15 +03:00
Oleg Gaidarenko
a2f63ffd96
Tests: test element position outside view
...
Ref 49833f7795
Ref gh-2828
Ref gh-2836
Fixes gh-2909
2016-02-11 22:59:09 +03:00
Timmy Willison
5943f1d7ff
Build: use hard-coded path to sizzle in selector-sizzle
...
Fixes gh-2898
2016-02-10 13:47:25 -08:00
Oleg Gaidarenko
f52fa81811
Tests: account for new offset tests
...
Ref 49833f7795
2016-02-09 00:27:03 +03:00
Oleg Gaidarenko
49833f7795
Revert "Offset: account for scroll when calculating position"
...
This reverts commit 2d715940b9
.
This commit provoked new issues: gh-2836, gh-2828.
At the meeting, we decided to revert offending commit
(in all three branches - 2.2-stable, 1.12-stable and master)
and tackle this issue in 3.x.
Fixes gh-2828
2016-02-09 00:24:22 +03:00
Oleg Gaidarenko
f1300f1887
Tests: fix another traverse test
...
Tricky test - if isolated, was executed fine, but falling
if runned with other tests
Ref b97c8d30c5
2016-01-31 12:09:48 +03:00
Oleg Gaidarenko
b97c8d30c5
Tests:Build: update qunit and fix incorrect test
...
* Update QUnit to the latest version (1.20.0)
* Corrected test was dependent on QUnit UI, which is always a bad idea
2016-01-29 21:22:52 +03:00
Timmy Willison
25068bf2c6
Selector: add jQuery.escapeSelector
...
Fixes gh-1761
Close gh-2878
2016-01-28 17:25:41 -05:00
Timmy Willison
a8c0194d3d
CSS: Add test for gh-2867
2016-01-27 11:36:34 -05: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
Zack Hall
28f0329a02
Tests: Set Edge's expected support for clearCloneStyle to true
...
This is done for a version 13 or newer as the bug still exists in Edge 12.
Closes gh-2857
2016-01-27 12:14:04 +01:00
Michał Gołębiowski
0b0d4c634a
Tests: Fix manipulation tests in Android 4.4
...
Chromium < 35 incorrectly upper-cases µ; Android 4.4 uses such a version by
default (and its WebView, being un-updatable, will use it for eternity) so we
need to blacklist that one for the tests to pass.
2016-01-27 12:02:00 +01:00
Richard Gibson
2868db0d41
Core: Update isNumeric tests for pre-ES2015 safety
...
Ref 7103d8ef47
2016-01-24 19:51:06 -05:00
Steve Mao
7103d8ef47
Core: Improve isNumeric logic and test coverage
...
Also add back accidentally deleted comments about the implementation.
Fixes gh-2780
Ref gh-2663
Ref gh-2781
Closes gh-2827
2016-01-24 19:07:09 -05:00
Michał Gołębiowski
5c01cb1cc4
Tests: Fix Deferred tests in Android 5.0's stock Chrome browser & Yandex.Browser
...
Some Chrome versions newer than 30 but older than 42 display the "undefined is
not a function" error, not mentioning the function name. This has been fixed
in Chrome 42. Relax two tests to allow for this divergence in older Chromoiums.
This affects our Android 5.0 & Yandex.Browser testing.
2016-01-20 13:54:31 +01:00
Devin Wilson
17f0e26ad9
Event: Fix chaining .on() with null handlers
...
Fixes gh-2846
2016-01-19 12:27:58 -05:00
Timmy Willison
780cac802b
Attributes: fix setting selected on an option in IE<=11
...
Fixes gh-2732
Close gh-2840
2016-01-19 11:36:47 -05:00
Timmy Willison
10c1254d15
Docs: remove compat references
2016-01-14 12:22:45 -05:00
Richard Gibson
dba93f79c4
CSS: Restore cascade-override behavior in .show
...
Fixes gh-2654
Fixes gh-2308
Close gh-2810
Ref 86419b10bf
2016-01-13 16:05:09 -05:00
Richard Gibson
a268f5225c
Traversing: Never let .closest() match positional selectors
...
Fixes gh-2796
Close gh-2818
2016-01-13 13:37:11 -05:00
Martijn W. van der Lee
0e2f8f9eff
Traversing: .not/.filter consistency with non-elements
...
Fixes gh-2808
Close gh-2809
2016-01-13 13:33:01 -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
Henry Wong
1712457fbc
Tests: fixed grammar in comment
...
Close gh-2757
2016-01-13 13:20:20 -05:00
Josh Soref
aae44111e2
Docs: Fix various spelling errors
...
Closes gh-2761
2016-01-13 13:11:11 -05:00
Dave Methvin
36a7cf9b1e
Deferred: Warn on exceptions that are likely programming errors
...
Fixes gh-2736
Closes gh-2737
2016-01-13 12:39:58 -05:00
Dave Methvin
bdf1b8f317
Deferred: Remove undocumented progress notifications in $.when
...
Fixes gh-2710
Closes gh-2816
2016-01-13 12:21:17 -05:00
Leonardo Braga
fb9472c7fb
Manipulation: Bring tagname regexes up to spec
...
Fixes gh-2005
Closes gh-2634
2016-01-07 16:48:49 -05:00
Jun Sun
df822caff0
CSS: Add animation-iteration-count to cssNumber, fix tests
...
Fixes gh-2792
Closes gh-2793
2016-01-07 21:46:22 +01:00
Timmy Willison
a4d16a26ab
Revert "Attributes: Remove undocumented .toggleClass( boolean ) signature"
...
This reverts commit 53f798cf4d
.
- Turns out this is documented, even if not fully. Need to deprecate before removal.
2016-01-07 14:06:41 -05:00
Timmy Willison
fbf829b724
Attributes: exclusively lowercase A-Z in attribute names
...
Fixes gh-2730
Close gh-2749
2015-12-02 10:39:02 -05:00
Dave Methvin
e077ffb083
Ajax: Preserve URL hash on requests
...
Fixes gh-1732
Closes gh-2721
2015-11-30 19:55:50 -05:00
Timmy Willison
cb80b42b91
Effects: add tests for using jQuery.speed directly
...
Fixes gh-2716
Close gh-2724
2015-11-17 15:11:46 -05:00
Timmy Willison
78b9eac119
Deferred: syncronize single and multiple target handling in $.when
...
Fixes gh-2546
Fixes gh-2018
Close gh-2707
2015-11-13 11:16:26 -05:00
Timmy Willison
88046440da
Selector: pass jQuery unit tests with selector-native
...
- Ignore certain tests that obviously are not supported
- Beefed up the sortOrder, uniqueSort, isXMLDoc, and attr functions
Fixes gh-1742
Fixes gh-2048
Close gh-2703
2015-11-11 10:10:10 -05:00
Dave Methvin
2937019060
Offset: offsetLeft/Top on empty set returns undefined
...
Fixes gh-2319
Closes gh-2702
Ref gh-2701
2015-11-10 10:01:45 -05:00
Dave Methvin
97d79ecf6b
Dimensions: Empty sets should return undefined
...
Ref gh-2319
Closes gh-2701
2015-11-10 09:59:48 -05:00
Timmy Willison
75b3cdd509
Dimensions: properly manipulate non-px values
...
Fixes gh-1712
Close gh-2695
2015-11-09 17:38:00 -05:00
Timmy Willison
22449eb968
Manipulation: execute scripts from iframe in the iframe's context
...
Fixes gh-1757
Close gh-2696
2015-11-09 14:14:30 -05:00
Dave Methvin
67fa2eab6e
Event: Move VML test out of event alias test
...
Ref gh-2693
2015-11-07 15:51:03 -05:00
Dave Methvin
7d44d7f9e7
Dimensions: outerWidth/Height include scrollbar
...
Fixes gh-1729
Closes gh-2694
2015-11-07 15:13:31 -05:00
Dave Methvin
2cb8ebadcb
Event: Make event aliases optional in unit tests
2015-11-06 10:00:46 -05:00
Timmy Willison
79fc806e85
Attributes: return empty array for select-multiple with no values
...
Fixes gh-2562
Close gh-2689
2015-11-05 17:41:49 -05:00
Dave Methvin
e05c63e17a
Event: Add basic unit tests for event aliases
...
Fixes gh-2302
Closes gh-2687
At the moment it's not possible to run the full event unit tests without aliases
so this was just tested with a custom build by running this one test.
2015-11-05 14:14:36 -05:00
Timmy Willison
493b0fd7f5
Event: Ensure delegation doesn't error on comment nodes
...
Fixes gh-2055
Close gh-2659
2015-11-04 18:09:33 -05:00
Dave Methvin
769446c697
Ajax: Don't throw exceptions on binary data response
...
Fixes gh-2498
Closes gh-2682
The added unit test shows how this could be used to support an
ArrayBuffer return, but $.ajax does not support it natively.
The goal with this change was to avoid the exception.
2015-11-04 12:47:16 -05:00
Timmy Willison
76e9a95dbe
Ajax: trigger error callback on native abort
...
- IE9 does not have onabort. Use onreadystatechange instead.
Fixes gh-2079
Close gh-2684
2015-11-03 12:34:04 -05:00
Dave Methvin
70605c8e56
Ajax: Only form-encode requests with a body
...
Fixes #2658
Closes #2671
2015-11-02 13:14:46 -05:00
Michał Gołębiowski
015d16c02d
Tests: Make regexes for iOS devices more rigid
2015-10-30 19:17:07 +01:00
Michał Gołębiowski
47e2aa6593
Tests: Remove Safari 7.0 & iOS 6 support tests results
2015-10-30 19:17:01 +01:00
Michał Gołębiowski
1c2b5362ef
Tests: Add iOS 9 support tests results
2015-10-30 19:13:56 +01:00
Timmy Willison
dabd5ba96c
Core: use interactive to evaluate dom ready, barring IE9-10
...
Fixes gh-2100
2015-10-29 10:21:50 -04:00
Timmy Willison
87bd130289
Attributes: remove flakey test for selected attribute
...
- The change is already covered by the "checked" test.
Since this test is redundant, just drop it.
2015-10-26 11:38:04 -04:00