Edgewall Software

Opened 11 years ago

Last modified 8 years ago

#11019 closed enhancement

Upgrade to jQuery 1.9/2.0 — at Version 9

Reported by: Christian Boos Owned by: Ryan J Ollos
Priority: normal Milestone: 1.2
Component: general Version: 1.1.1dev
Severity: normal Keywords: jquery jqueryui
Cc: eblot.ml@… Branch:
Release Notes:

Third party JavaScript libraries have been upgraded:

  • jQuery-UI to 1.11.4
  • jQuery to 1.11.3
  • jQuery UI Timepicker to 1.5.5
API Changes:
Internal Changes:

Description

jQuery 1.9 and a beta of 2.0 was recently released: http://blog.jquery.com/2013/01/15/jquery-1-9-final-jquery-2-0-beta-migrate-final-released/.

The suggested migration path to jQuery 2.0 is to still make it possible for old IE browsers (< IE9) to be supported thanks to the following "conditionals":

<!--[if lt IE 9]>
    <script src="jquery-1.9.0.js"></script>
<![endif]-->
<!--[if gte IE 9]><!-->
    <script src="jquery-2.0.0.js"></script>
<!--[endif]-->

For the API changes itself, we I think we shouldn't use the migration plugin, but rather aim to adapt our API usage. See the migration guide http://jquery.com/upgrade-guide/1.9/:

  • .toggle(function, function, … ) removed
  • jQuery.browser() removed
  • .live() removed
  • .die() removed
  • jQuery.sub() removed
  • .add()
  • .addBack( selector ) replaces .andSelf()
  • .after(), .before(), and .replaceWith() with disconnected nodes
  • .appendTo, .insertBefore, .insertAfter, and .replaceAll
  • AJAX events should be attached to document
  • Checkbox/radio state in a .trigger()ed "click" event
  • Order of triggered "focus" events
  • jQuery(htmlString) versus jQuery(selectorString)
  • Events not fired by the .data() method; names with periods
  • Ordering of disconnected nodes within a jQuery set
  • Loading and running scripts inside HTML content
  • .attr() versus .prop()
  • $("input").attr("type", newValue) in oldIE
  • "hover" pseudo-event
  • .selector property on jQuery objects
  • jQuery.attr()
  • jQuery.ajax returning a JSON result of an empty string
  • jQuery.proxy() context
  • .data("events")
  • Removed properties of the Event object
  • Undocumented arguments of API methods
  • Other undocumented properties and methods

(adding DONE as we go through the list above)

Change History (11)

comment:1 by Christian Boos, 11 years ago

Keywords: jqueryui added

comment:2 by Christian Boos, 11 years ago

Also update jQuery UI (1.10.1 or later) and the Timepicker (v1.1.2 or later) at the same time. See TracDev/JavaScript#jQueryUI for details.

by Ryan J Ollos, 10 years ago

by Ryan J Ollos, 10 years ago

comment:3 by Ryan J Ollos, 10 years ago

In Android browser (Android 4.1.2 on Galaxy Note 10.1 Tablet), all of the text after the Resolve select has the disabled styling (Screenshot_2013-11-12-19-47-01.png). When the select is given focus (Screenshot_2013-11-12-19-47-28.png), the styling reverts to normal. The styling is not reverted to normal simply by giving focus to the Resolve radio button. When the selected radio button is changed from Resolve to any other value, the text after Resolve reverts to the disabled styling again. This might just be a bug with jQuery or the browser, which is why I haven't opened a dedicated ticket for it yet. The bug is not seen with Chrome, Opera or Firefox browsers on this platform.

comment:4 by Ryan J Ollos, 10 years ago

Milestone: 1.1.21.1.3

comment:5 by Emmanuel Blot, 10 years ago

Cc: eblot.ml@… added

comment:6 by anonymous, 10 years ago

You should just stick to jQuery 1.1.x and ignore 2.x at this point. jQuery UI 1.10.x works fine, the same goes for the latest timepicker; v1.5.0 at the time of writing.

comment:7 by Peter Suter, 9 years ago

jQuery Compat 3.0 also suggests 2.x can be ignored.

comment:8 by Ryan J Ollos, 9 years ago

Milestone: 1.1.3next-dev-1.1.x

comment:9 by Ryan J Ollos, 9 years ago

Milestone: next-dev-1.1.x1.2
Owner: set to Ryan J Ollos
Release Notes: modified (diff)
Status: newassigned

This has become a blocker for changes proposed in #12169, and anyway we should upgrade the libraries for the milestone:1.2 release.

Note: See TracTickets for help on using tickets.