Skip to content

Core: Make back compat disabled by default #2250

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
May 13, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 11 additions & 9 deletions tests/lib/bootstrap.js
Original file line number Diff line number Diff line change
Expand Up @@ -25,9 +25,9 @@ requirejs.config( {
}
} );

// Create a module that disables back compat for UI modules
define( "jquery-no-back-compat", [ "jquery" ], function( $ ) {
$.uiBackCompat = false;
// Create a module that enables back compat for UI modules
define( "jquery-back-compat", [ "jquery" ], function( $ ) {
$.uiBackCompat = true;

return $;
} );
Expand All @@ -53,10 +53,12 @@ function requireModules( dependencies, callback, modules ) {
}

// Load a set of test file along with the required test infrastructure
function requireTests( dependencies, noBackCompat ) {
var preDependencies = [
function requireTests( dependencies, options ) {

var backCompat = !!( options && options.backCompat ),
preDependencies = [
"lib/qunit",
noBackCompat ? "jquery-no-back-compat" : "jquery",
backCompat ? "jquery-back-compat" : "jquery",
"jquery-simulate"
];

Expand Down Expand Up @@ -136,7 +138,7 @@ function migrateUrl() {
// - data-widget: A widget to load test modules for
// - Automatically loads common, core, events, methods, and options
// - data-deprecated: Loads the deprecated test modules for a widget
// - data-no-back-compat: Set $.uiBackCompat to false
// - data-back-compat: Set $.uiBackCompat to `true`
( function() {

// Find the script element
Expand All @@ -154,7 +156,7 @@ function migrateUrl() {
}
var widget = script.getAttribute( "data-widget" );
var deprecated = !!script.getAttribute( "data-deprecated" );
var noBackCompat = !!script.getAttribute( "data-no-back-compat" );
var backCompat = !!script.getAttribute( "data-back-compat" );

if ( widget ) {
modules = modules.concat( [
Expand All @@ -177,7 +179,7 @@ function migrateUrl() {
modules.unshift( "ui/jquery-patch" );
}

requireTests( modules, noBackCompat );
requireTests( modules, { backCompat: backCompat } );
} )();

} )();
2 changes: 1 addition & 1 deletion tests/unit/button/button.html
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

<script src="../../../external/requirejs/require.js"></script>
<script src="../../lib/css.js" data-modules="core button"></script>
<script src="../../lib/bootstrap.js" data-widget="button" data-no-back-compat="true"></script>
<script src="../../lib/bootstrap.js" data-widget="button"></script>
</head>
<body>

Expand Down
2 changes: 1 addition & 1 deletion tests/unit/dialog/dialog.html
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

<script src="../../../external/requirejs/require.js"></script>
<script src="../../lib/css.js" data-modules="core button dialog"></script>
<script src="../../lib/bootstrap.js" data-widget="dialog" data-no-back-compat="true"></script>
<script src="../../lib/bootstrap.js" data-widget="dialog"></script>
</head>
<body>

Expand Down
3 changes: 1 addition & 2 deletions tests/unit/droppable/droppable.html
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,7 @@

<script src="../../../external/requirejs/require.js"></script>
<script src="../../lib/css.js" data-modules="core"></script>
<script src="../../lib/bootstrap.js" data-widget="droppable"
data-no-back-compat="true"></script>
<script src="../../lib/bootstrap.js" data-widget="droppable"></script>
</head>
<body>

Expand Down
6 changes: 3 additions & 3 deletions tests/unit/tabs/core.js
Original file line number Diff line number Diff line change
Expand Up @@ -29,9 +29,9 @@ QUnit.test( "markup structure", function( assert ) {
assert.hasClasses( tabs[ 2 ], "ui-tabs-tab" );

// DEPRECATED
assert.hasClasses( tabs[ 0 ], "ui-tab" );
assert.hasClasses( tabs[ 1 ], "ui-tab" );
assert.hasClasses( tabs[ 2 ], "ui-tab" );
assert.lacksClasses( tabs[ 0 ], "ui-tab" );
assert.lacksClasses( tabs[ 1 ], "ui-tab" );
assert.lacksClasses( tabs[ 2 ], "ui-tab" );

assert.equal( tabs.length, 3, "There are exactly three tabs" );
assert.hasClasses( anchors[ 0 ], "ui-tabs-anchor" );
Expand Down
2 changes: 1 addition & 1 deletion tests/unit/tooltip/tooltip.html
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

<script src="../../../external/requirejs/require.js"></script>
<script src="../../lib/css.js" data-modules="core tooltip"></script>
<script src="../../lib/bootstrap.js" data-widget="tooltip" data-no-back-compat="true"></script>
<script src="../../lib/bootstrap.js" data-widget="tooltip"></script>
</head>
<body>

Expand Down
4 changes: 2 additions & 2 deletions ui/effect.js
Original file line number Diff line number Diff line change
Expand Up @@ -273,7 +273,7 @@ if ( $.expr && $.expr.pseudos && $.expr.pseudos.animated ) {
} )( $.expr.pseudos.animated );
}

if ( $.uiBackCompat !== false ) {
if ( $.uiBackCompat === true ) {
$.extend( $.effects, {

// Saves a set of properties in a data storage
Expand Down Expand Up @@ -759,7 +759,7 @@ $.fn.extend( {
// as toggle can be either show or hide depending on element state
args.mode = modes.shift();

if ( $.uiBackCompat !== false && !defaultMode ) {
if ( $.uiBackCompat === true && !defaultMode ) {
if ( elem.is( ":hidden" ) ? mode === "hide" : mode === "show" ) {

// Call the core method to track "olddisplay" properly
Expand Down
2 changes: 1 addition & 1 deletion ui/effects/effect-transfer.js
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@
"use strict";

var effect;
if ( $.uiBackCompat !== false ) {
if ( $.uiBackCompat === true ) {
effect = $.effects.define( "transfer", function( options, done ) {
$( this ).transfer( options, done );
} );
Expand Down
2 changes: 1 addition & 1 deletion ui/widgets/button.js
Original file line number Diff line number Diff line change
Expand Up @@ -287,7 +287,7 @@ $.widget( "ui.button", {
} );

// DEPRECATED
if ( $.uiBackCompat !== false ) {
if ( $.uiBackCompat === true ) {

// Text and Icons options
$.widget( "ui.button", $.ui.button, {
Expand Down
2 changes: 1 addition & 1 deletion ui/widgets/dialog.js
Original file line number Diff line number Diff line change
Expand Up @@ -930,7 +930,7 @@ $.widget( "ui.dialog", {

// DEPRECATED
// TODO: switch return back to widget declaration at top of file when this is removed
if ( $.uiBackCompat !== false ) {
if ( $.uiBackCompat === true ) {

// Backcompat for dialogClass option
$.widget( "ui.dialog", $.ui.dialog, {
Expand Down
2 changes: 1 addition & 1 deletion ui/widgets/droppable.js
Original file line number Diff line number Diff line change
Expand Up @@ -463,7 +463,7 @@ $.ui.ddmanager = {

// DEPRECATED
// TODO: switch return back to widget declaration at top of file when this is removed
if ( $.uiBackCompat !== false ) {
if ( $.uiBackCompat === true ) {

// Backcompat for activeClass and hoverClass options
$.widget( "ui.droppable", $.ui.droppable, {
Expand Down
2 changes: 1 addition & 1 deletion ui/widgets/resizable.js
Original file line number Diff line number Diff line change
Expand Up @@ -1113,7 +1113,7 @@ $.ui.plugin.add( "resizable", "ghost", {

// DEPRECATED
// TODO: remove after 1.12
if ( $.uiBackCompat !== false && typeof that.options.ghost === "string" ) {
if ( $.uiBackCompat === true && typeof that.options.ghost === "string" ) {

// Ghost option
that.ghost.addClass( this.options.ghost );
Expand Down
2 changes: 1 addition & 1 deletion ui/widgets/spinner.js
Original file line number Diff line number Diff line change
Expand Up @@ -554,7 +554,7 @@ $.widget( "ui.spinner", {

// DEPRECATED
// TODO: switch return back to widget declaration at top of file when this is removed
if ( $.uiBackCompat !== false ) {
if ( $.uiBackCompat === true ) {

// Backcompat for spinner html extension points
$.widget( "ui.spinner", $.ui.spinner, {
Expand Down
2 changes: 1 addition & 1 deletion ui/widgets/tabs.js
Original file line number Diff line number Diff line change
Expand Up @@ -909,7 +909,7 @@ $.widget( "ui.tabs", {

// DEPRECATED
// TODO: Switch return back to widget declaration at top of file when this is removed
if ( $.uiBackCompat !== false ) {
if ( $.uiBackCompat === true ) {

// Backcompat for ui-tab class (now ui-tabs-tab)
$.widget( "ui.tabs", $.ui.tabs, {
Expand Down
2 changes: 1 addition & 1 deletion ui/widgets/tooltip.js
Original file line number Diff line number Diff line change
Expand Up @@ -505,7 +505,7 @@ $.widget( "ui.tooltip", {

// DEPRECATED
// TODO: Switch return back to widget declaration at top of file when this is removed
if ( $.uiBackCompat !== false ) {
if ( $.uiBackCompat === true ) {

// Backcompat for tooltipClass option
$.widget( "ui.tooltip", $.ui.tooltip, {
Expand Down