Skip to content
A development tool to help migrate away from APIs and features that have been or will be removed from jQuery core
JavaScript HTML Shell
Branch: master
Clone or download

Latest commit

mgol Build: Update the npm testswarm package
The previous version, 1.1.1 had a critical bug that made it not submit
`runUrls` properly. It is fixed in 1.1.2.

Closes gh-367
Ref gh-365
Ref jzaefferer/node-testswarm#17
Latest commit 786733f Jun 11, 2020

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
build Build: Remove an obsolete comment May 15, 2020
dist Build: Migrate sources to ES modules, use a Rollup-based build system May 3, 2020
src CSS: Don't break `.css( array )` May 20, 2020
test Tests: Fix CSS tests in IE & old Firefox Jun 6, 2020
.editorconfig Build: add .editorconfig Feb 14, 2016
.eslintignore Build: Migrate sources to ES modules, use a Rollup-based build system May 3, 2020
.eslintrc-browser.json Build: Migrate sources to ES modules, use a Rollup-based build system May 3, 2020
.eslintrc-node.json Build: Migrate sources to ES modules, use a Rollup-based build system May 3, 2020
.eslintrc.json Build: Improve ESLint configuration, check all test files as well Apr 19, 2020
.gitattributes Build: Update npm dependencies Mar 16, 2015
.gitignore Build: Migrate sources to ES modules, use a Rollup-based build system May 3, 2020
.mailmap Build: Update my name in .mailmap Oct 11, 2017
.npmignore Build: Add Istanbul for code coverage reports Feb 11, 2016
.npmrc Build: Add .npmrc with save-exact=true May 20, 2016
.travis.yml Build: Test on Firefox in Travis as well, update most deps Jun 6, 2020
CONTRIBUTING.md jQuery Compat is now jQuery Migrate! Dec 17, 2012
Gruntfile.js Build: Test on Firefox in Travis as well, update most deps Jun 6, 2020
LICENSE.txt Docs: Update copyright and remove AUTHORS file May 27, 2019
README.md Tagging the 3.3.0 release. May 5, 2020
package-lock.json Build: Update the npm testswarm package Jun 11, 2020
package.json Build: Update the npm testswarm package Jun 11, 2020
warnings.md Docs: Update jQuery.trim warning text May 20, 2020

README.md

Build Status

NOTE: To upgrade to jQuery 3.0, you first need version 1.12.x or 2.2.x. If you're using an older version, first upgrade to one of these versions using jQuery Migrate 1.x, to resolve any compatibility issues. For more information about the changes made in jQuery 3.0, see the upgrade guide and blog post.

jQuery Migrate

Upgrading libraries such as jQuery can be a lot of work, when breaking changes have been introduced. jQuery Migrate makes this easier, by restoring the APIs that were removed, and additionally shows warnings in the browser console (development version of jQuery Migrate only) when removed and/or deprecated APIs are used.

That way you can spot and fix what otherwise would have been errors, until you no longer need jQuery Migrate and can remove it.

Usage

In your web page, load this plugin after the script tag for jQuery, for example:

<script src="https://code.jquery.com/jquery-3.0.0.js"></script>
<script src="https://code.jquery.com/jquery-migrate-3.3.0.js"></script>

Download

Development vs. Production versions

The production build is minified and does not generate console warnings. It will only generate a console log message upon loading, or if it detects an error such as an outdated version of jQuery that it does not support. Do not use this file for development or debugging, it will make your life miserable.

Development Production
Debugging enabled

Minified

Latest release (may be hotlinked if desired) jquery-migrate-3.3.0.js jquery-migrate-3.3.0.min.js
* Latest work-in-progress build jquery-migrate-git.js jquery-migrate-git.min.js

* Work-in-progress build: Although this file represents the most recent updates to the plugin, it may not have been thoroughly tested. We do not recommend using this file on production sites since it may be unstable; use the released production version instead.

Debugging

The development version of the plugin displays warnings in the browser console. Older browsers such as IE9 doesn't support the console interface. No messages will be generated unless you include a debugging library such as Firebug Lite before including the jQuery Migrate plugin. Developers can also inspect the jQuery.migrateWarnings array to see what error messages have been generated.

All warnings generated by this plugin start with the string "JQMIGRATE". A list of the warnings you may see are in warnings.md.

Migrate Plugin API

This plugin adds some properties to the jQuery object that can be used to programmatically control and examine its behavior:

jQuery.migrateWarnings: This property is an array of string warning messages that have been generated by the code on the page, in the order they were generated. Messages appear in the array only once, even if the condition has occurred multiple times, unless jQuery.migrateReset() is called.

jQuery.migrateMute: Set this property to true to prevent console warnings from being generated in the development version. The jQuery.migrateWarnings array is still maintained when this property is set, which allows programmatic inspection without console output.

jQuery.migrateTrace: Set this property to false if you want warnings but do not want stack traces to appear on the console.

jQuery.migrateReset(): This method clears the jQuery.migrateWarnings array and "forgets" the list of messages that have been seen already.

jQuery.migrateVersion: This string property indicates the version of Migrate in use.

jQuery.migrateDeduplicateWarnings: By default, Migrate only gives a specific warning once. If you set this property to false it will give a warning for every occurrence each time it happens. Note that this can generate a lot of output, for example when a warning occurs in a loop.

Reporting problems

Bugs that only occur when the jQuery Migrate plugin is used should be reported in the jQuery Migrate Issue Tracker and should be accompanied by an executable test case that demonstrates the bug. The easiest way to do this is via an online test tool such as jsFiddle.net or jsbin.com. Use the development version when you are reporting bugs.

Bugs in jQuery itself should be reported on the jQuery Core bug tracker and again should be accompanied by a test case from jsFiddle.net or jsbin.com so that we can reproduce the issue.

For other questions about the plugin that aren't bugs, ask on the jQuery Forum.

Build and run tests:

Build with npm commands

$ git clone git://github.com/jquery/jquery-migrate.git
$ cd jquery-migrate
$ npm install
$ npm run build

Build with grunt

$ git clone git://github.com/jquery/jquery-migrate.git
$ cd jquery-migrate
$ npm install
$ npm install -g grunt-cli
$ grunt build

Run tests

$ npm test

Or

$ grunt test
You can’t perform that action at this time.