Make WordPress Core

Opened 16 months ago

Closed 14 months ago

Last modified 13 months ago

#58083 closed enhancement (fixed)

Update jQuery v3.6.4 to v3.7.0

Reported by: mgol's profile mgol Owned by: sergeybiryukov's profile SergeyBiryukov
Milestone: 6.3 Priority: normal
Severity: normal Version:
Component: External Libraries Keywords: has-patch add-to-field-guide has-dev-note
Focuses: ui, javascript Cc:

Description

Hey! The jQuery team is preparing for a release of jQuery 3.7.0. While formally not a breaking update, there are major changes in that version that incur some risk. Before we release, I'm trying to verify the changes are not breaking important projects.

What we'll release as 3.7.0 should be very similar to what you can currently find at https://releases.jquery.com/git/jquery-3.x-git.js.

Do you have some tests you could invoke on that pre-release version?

Summary of the most risky changes:

  • removal of Sizzle in favor of inlining the selector engine code within jQuery with a lot of removals of workarounds for legacy browsers - we have tests but there's always risk we removed too much
  • implementing the focus jQuery event in IE via focusin and blur via focusout - this is because focusin & focusout native handlers are executed synchronously in IE while focus & blur are async; in other browsers, all 4 are sync

I guess the second part doesn't affect you since you don't support IE anymore?

Attachments (3)

58083.diff (439 bytes) - added by jorbin 16 months ago.
0001-Feat-update-external-jquery-library-to-latest-versio.patch (2.3 KB) - added by hbhalodia 14 months ago.
Patch for jQuery Update to version 3.7.0
0001-Feat-update-external-jquery-library-to-latest-versio.2.patch (2.3 KB) - added by hbhalodia 14 months ago.
Patch for jQuery Update to version 3.7.0

Download all attachments as: .zip

Change History (20)

This ticket was mentioned in Slack in #core by mgol. View the logs.


16 months ago

#2 @jorbin
16 months ago

#58084 was marked as a duplicate.

#3 @jorbin
16 months ago

  • Component changed from General to External Libraries
  • Milestone changed from Awaiting Review to 6.3

@jorbin
16 months ago

#4 @krupalpanchal
16 months ago

  • Keywords has-patch added

#5 follow-up: @jorbin
16 months ago

  • Keywords has-patch removed
  • Summary changed from Run tests with jQuery 3.x-git in preparation for jQuery 3.7.0 to Run tests with jQuery 3.x-git in preparation for jQuery 3.7.0 and update to jQuery 3.7

The patch is just a testing one, removing the label until 3.7 is actually released. Also, the npm pre-release doesn't include a built copy of jQuery nor does it include the build tools so to test I cloned https://github.com/jquery/jquery.git into node_modules/jquery and built the 3.x-stable branch.

I've done the following the testing:

  • qUnit tests in both firefox and jQuery
  • Manual testing of the following pages
    • post list page
    • Taxonomy page
    • Media Library
    • Menus
    • Customizer
    • Shiny Updates for Plugins
    • Site Health
    • Profile editing

Overall, 3.7 looks good. Once it's released, I'm going to use this ticket to update jQuery.

@mgol Overall, I see no issue with 3.7. No objection here with your team releasing the update. Thank you for reaching out.

#6 in reply to: ↑ 5 @desrosj
15 months ago

  • Keywords needs-patch added

Replying to jorbin:

@mgol Overall, I see no issue with 3.7. No objection here with your team releasing the update. Thank you for reaching out.

I share this sentiment. Thanks again for the courtesy ping. I think if anything, it's more likely we'll expose some outdated code that should be updated in WordPress. But where we are still a while out from our next release (tentatively scheduled for late August), there's plenty of time to uncover and fix any issues.

Adding needs-patch for when the new version is bundled and published.

#8 @TobiasBg
15 months ago

  • Summary changed from Run tests with jQuery 3.x-git in preparation for jQuery 3.7.0 and update to jQuery 3.7 to Update to jQuery 3.7

A full list of changes in this release can be found on GitHub: https://github.com/jquery/jquery/compare/3.6.4...3.7.0.

For updating the jQuery version in WordPress, package.json and script-loader.php need to get the new version string.

Related: #58203, #57324, #56451, #52707, #51812, #50564, #37110.

(As jQuery 3.7 has now been released, I removed the "Run tests with jQuery 3.x-git in preparation for jQuery 3.7.0" part from the ticket's title.)

#9 @audrasjb
14 months ago

#58399 was marked as a duplicate.

@hbhalodia
14 months ago

Patch for jQuery Update to version 3.7.0

@hbhalodia
14 months ago

Patch for jQuery Update to version 3.7.0

This ticket was mentioned in PR #4504 on WordPress/wordpress-develop by @hbhalodia.


14 months ago
#10

  • Keywords has-patch added; needs-patch removed

#11 @mukesh27
14 months ago

  • Summary changed from Update to jQuery 3.7 to Update jQuery v3.6.4 to v3.7.0

@audrasjb commented on PR #4504:


14 months ago
#12

I restarted the unsuccessful tests and it looks good, now.

#13 @audrasjb
14 months ago

  • Keywords needs-dev-note added

Let's make it sure this upgrade is mentioned in a devnote about upstream scripts (can be the Misc Changes devnote).

#14 @SergeyBiryukov
14 months ago

  • Owner set to SergeyBiryukov
  • Resolution set to fixed
  • Status changed from new to closed

In 55860:

External Libraries: Update jQuery to version 3.7.0.

This release includes bug fixes, a new .uniqueSort() method, and a performance improvement for some use cases when using manipulation methods like .append().

References:

Follow-up to [49101], [50445], [50520], [54202], [55012], [55491].

Props mgol, jorbin, hbhalodia, desrosj, TobiasBg, audrasjb, mukesh27, naeemhaque, nuhel, SergeyBiryukov.
Fixes #58083.

#15 @stevenlinx
13 months ago

  • Keywords add-to-field-guide added

#17 @stevenlinx
13 months ago

  • Keywords has-dev-note added; needs-dev-note removed
Note: See TracTickets for help on using tickets.