- Go to Special:ContentTranslation&page=Mogwai&from=es&to=ca&targettitle=Mogwai&debug=true
- Open console, enable pause on exceptions (also uncaught)
In ext.cx.tools.template.js
cachedTemplateDataAPIRequests[ cacheKey ] =
this.getNamespaceTranslation( this.language ).then( function ( namespace ) {
var targetName;
if ( self.title.indexOf( namespace + ':' ) !== 0 ) { // here
targetName = namespace + ':' + self.title;
} else {
targetName = self.title;
}This seems to only happen when $wgUsejQueryThree = true; (which is now the default in master).
Very simplified example of the code:
promise = $.Deferred().reject().promise();
promise = promise.then(
function () { console.log( 'We have a success' ); },
function () { console.log( 'We have a failure' ); }
);
promise = promise.then(
function () { console.log( 'We have a success' ); },
function () { console.log( 'We have a failure' ); }
);Before jQuery3 it prints "We have a failure" twice. In jQuery3 it prints "We have a failure" followed by "We have a success".