jquery: jQuery v3.6.0 breaks Bootstrap's test suite in IE
Opening the issue after quickly chatting with mgol on IRC
I made a branch to update jQuery to v3.6.0 in https://github.com/twbs/bootstrap/pull/33243. I notice our BrowserStack tests fail consistently on Internet Explorer 10 and 11. v3.5.1 works fine.
git clone https://github.com/twbs/bootstrap.git -b v4-dev-xmr-update-jquery
npm i
npm run js-test-cloud #assumes you have BrowserStack credentials set up
The failures seem to point to https://github.com/twbs/bootstrap/blob/v4-dev/js/tests/unit/dropdown.js#L860 and https://github.com/twbs/bootstrap/blob/v4-dev/js/tests/unit/dropdown.js#L870
EDIT: using jQuery v3.3.1 also works fine.
About this issue
- Original URL
- State: closed
- Created 3 years ago
- Reactions: 1
- Comments: 20 (13 by maintainers)
Commits related to this issue
- Event: Add tests for sequences triggering focus and/or blur Ref gh-4856 Ref gh-4859 — committed to gibson042/jquery by gibson042 3 years ago
- Event: Refactor leverageNative to support sequences of focus and/or blur Fixes gh-4856 Fixes gh-4859 — committed to gibson042/jquery by gibson042 3 years ago
- Use native focus events insted of jQuery focus events jQuery 3.x has introduced a bunch of different focus bugs in the process of attempting to migrate to using native focus events in more cases, som... — committed to desmosinc/mathquill by jwmerrill 3 years ago
- Use native focus events insted of jQuery focus events jQuery 3.x has introduced a bunch of different focus bugs in the process of attempting to migrate to using native focus events in more cases, som... — committed to desmosinc/mathquill by jwmerrill 3 years ago
- Event: Add tests for sequences triggering focus and/or blur Ref gh-4856 Ref gh-4859 — committed to gibson042/jquery by gibson042 3 years ago
- Event: Refactor leverageNative to support sequences of focus and/or blur Fixes gh-4856 Fixes gh-4859 — committed to gibson042/jquery by gibson042 3 years ago
- Event: Simulate focus/blur in IE via focusin/focusout In IE (all versions), `focus` & `blur` handlers are fired asynchronously but `focusin` & `focusout` are run synchronouslu. In other browsers, all... — committed to mgol/jquery by mgol a year ago
- Event: Simulate focus/blur in IE via focusin/focusout In IE (all versions), `focus` & `blur` handlers are fired asynchronously but `focusin` & `focusout` are run synchronouslu. In other browsers, all... — committed to mgol/jquery by mgol a year ago
- Event: Simulate focus/blur in IE via focusin/focusout In IE (all versions), `focus` & `blur` handlers are fired asynchronously but `focusin` & `focusout` are run synchronouslu. In other browsers, all... — committed to mgol/jquery by mgol a year ago
- Event: Simulate focus/blur in IE via focusin/focusout In IE (all versions), `focus` & `blur` handlers are fired asynchronously but `focusin` & `focusout` are run synchronouslu. In other browsers, all... — committed to mgol/jquery by mgol a year ago
- Event: Simulate focus/blur in IE via focusin/focusout In IE (all versions), `focus` & `blur` handlers are fired asynchronously but `focusin` & `focusout` are run synchronouslu. In other browsers, all... — committed to mgol/jquery by mgol a year ago
- Event: Simulate focus/blur in IE via focusin/focusout In IE (all versions), `focus` & `blur` handlers are fired asynchronously but `focusin` & `focusout` are run synchronouslu. In other browsers, all... — committed to mgol/jquery by mgol a year ago
- Event: Simulate focus/blur in IE via focusin/focusout In IE (all versions), `focus` & `blur` handlers are fired asynchronously but `focusin` & `focusout` are run synchronously. In other browsers, all... — committed to mgol/jquery by mgol a year ago
- Event: Simulate focus/blur in IE via focusin/focusout In IE (all versions), `focus` & `blur` handlers are fired asynchronously but `focusin` & `focusout` are run synchronously. In other browsers, all... — committed to mgol/jquery by mgol a year ago
- Event: Simulate focus/blur in IE via focusin/focusout In IE (all versions), `focus` & `blur` handlers are fired asynchronously but `focusin` & `focusout` are run synchronously. In other browsers, all... — committed to mgol/jquery by mgol a year ago
- Event: Simulate focus/blur in IE via focusin/focusout In IE (all versions), `focus` & `blur` handlers are fired asynchronously but `focusin` & `focusout` are run synchronously. In other browsers, all... — committed to mgol/jquery by mgol a year ago
- Event: Simulate focus/blur in IE via focusin/focusout In IE (all versions), `focus` & `blur` handlers are fired asynchronously but `focusin` & `focusout` are run synchronously. In other browsers, all... — committed to mgol/jquery by mgol a year ago
- Event: Simulate focus/blur in IE via focusin/focusout In IE (all versions), `focus` & `blur` handlers are fired asynchronously but `focusin` & `focusout` are run synchronously. In other browsers, all... — committed to mgol/jquery by mgol a year ago
- Event: Simulate focus/blur in IE via focusin/focusout In IE (all versions), `focus` & `blur` handlers are fired asynchronously but `focusin` & `focusout` are run synchronously. In other browsers, all... — committed to mgol/jquery by mgol a year ago
- Event: Simulate focus/blur in IE via focusin/focusout In IE (all versions), `focus` & `blur` handlers are fired asynchronously but `focusin` & `focusout` are run synchronously. In other browsers, all... — committed to mgol/jquery by mgol a year ago
@XhmikosR jQuery 3.7.0 has been released, you should be able to update it in Bootstrap v4 now.
https://blog.jquery.com/2023/05/11/jquery-3-7-0-released-staying-in-order/
Yes, that’s what I did. It looks like we’re good then!
Fixed on
main
(future4.x
) via #5223 and on3.x-stable
via #5224.It looks like we can fix this via simulating the async
focus
&blur
in IE via their bubbling but also synchronous equivalents:focusin
&focusout
. In other browsers, all those events are synchronous.PRs for:
We’ll address this in a patch. Related: dbcffb396c2db61ff96edc4162602e850797d61f