Skip to content

Commit

Permalink
Reverse module deconflicting order (#3977)
Browse files Browse the repository at this point in the history
  • Loading branch information
lukastaegert committed Feb 26, 2021
1 parent 85304f2 commit b254672
Show file tree
Hide file tree
Showing 138 changed files with 5,184 additions and 5,166 deletions.
7 changes: 4 additions & 3 deletions src/utils/deconflictChunk.ts
Expand Up @@ -55,15 +55,16 @@ export function deconflictChunk(
accessedGlobalsByScope: Map<ChildScope, Set<string>>,
includedNamespaces: Set<Module>
) {
for (const module of modules) {
const reversedModules = modules.slice().reverse();
for (const module of reversedModules) {
module.scope.addUsedOutsideNames(
usedNames,
format,
exportNamesByVariable,
accessedGlobalsByScope
);
}
deconflictTopLevelVariables(usedNames, modules, includedNamespaces);
deconflictTopLevelVariables(usedNames, reversedModules, includedNamespaces);
DECONFLICT_IMPORTED_VARIABLES_BY_FORMAT[format](
usedNames,
imports,
Expand All @@ -75,7 +76,7 @@ export function deconflictChunk(
syntheticExports
);

for (const module of modules) {
for (const module of reversedModules) {
module.scope.deconflict(format, exportNamesByVariable, accessedGlobalsByScope);
}
}
Expand Down
@@ -1,14 +1,14 @@
define(['exports'], function (exports) { 'use strict';

function fn () {
function fn$1 () {
console.log('lib2 fn');
}

function fn$1 () {
fn();
function fn () {
fn$1();
console.log('dep2 fn');
}

exports.fn = fn$1;
exports.fn = fn;

});
@@ -1,17 +1,17 @@
define(['./generated-dep2'], function (dep2) { 'use strict';

function fn () {
function fn$1 () {
console.log('lib1 fn');
}

function fn$1 () {
fn();
function fn () {
fn$1();
console.log('dep3 fn');
}

class Main2 {
constructor () {
fn$1();
fn();
dep2.fn();
}
}
Expand Down
@@ -1,12 +1,12 @@
'use strict';

function fn () {
function fn$1 () {
console.log('lib2 fn');
}

function fn$1 () {
fn();
function fn () {
fn$1();
console.log('dep2 fn');
}

exports.fn = fn$1;
exports.fn = fn;
Expand Up @@ -2,18 +2,18 @@

var dep2 = require('./generated-dep2.js');

function fn () {
function fn$1 () {
console.log('lib1 fn');
}

function fn$1 () {
fn();
function fn () {
fn$1();
console.log('dep3 fn');
}

class Main2 {
constructor () {
fn$1();
fn();
dep2.fn();
}
}
Expand Down
@@ -1,10 +1,10 @@
function fn () {
function fn$1 () {
console.log('lib2 fn');
}

function fn$1 () {
fn();
function fn () {
fn$1();
console.log('dep2 fn');
}

export { fn$1 as f };
export { fn as f };
@@ -1,17 +1,17 @@
import { f as fn$2 } from './generated-dep2.js';

function fn () {
function fn$1 () {
console.log('lib1 fn');
}

function fn$1 () {
fn();
function fn () {
fn$1();
console.log('dep3 fn');
}

class Main2 {
constructor () {
fn$1();
fn();
fn$2();
}
}
Expand Down
Expand Up @@ -3,14 +3,14 @@ System.register([], function (exports) {
return {
execute: function () {

exports('f', fn$1);
exports('f', fn);

function fn () {
function fn$1 () {
console.log('lib2 fn');
}

function fn$1 () {
fn();
function fn () {
fn$1();
console.log('dep2 fn');
}

Expand Down
Expand Up @@ -7,18 +7,18 @@ System.register(['./generated-dep2.js'], function (exports) {
}],
execute: function () {

function fn () {
function fn$1 () {
console.log('lib1 fn');
}

function fn$1 () {
fn();
function fn () {
fn$1();
console.log('dep3 fn');
}

class Main2 {
constructor () {
fn$1();
fn();
fn$2();
}
} exports('default', Main2);
Expand Down
@@ -1,23 +1,23 @@
define(['exports'], function (exports) { 'use strict';

function fn () {
function fn$2 () {
console.log('lib fn');
}

function fn$1 () {
fn();
console.log(text$1);
fn$2();
console.log(text);
}

var text = 'dep1 fn';
var text$1 = 'dep1 fn';

function fn$2 () {
console.log(text);
function fn () {
console.log(text$1);
}

var text$1 = 'dep2 fn';
var text = 'dep2 fn';

exports.fn = fn$2;
exports.fn = fn;
exports.fn$1 = fn$1;

});
@@ -1,21 +1,21 @@
'use strict';

function fn () {
function fn$2 () {
console.log('lib fn');
}

function fn$1 () {
fn();
console.log(text$1);
fn$2();
console.log(text);
}

var text = 'dep1 fn';
var text$1 = 'dep1 fn';

function fn$2 () {
console.log(text);
function fn () {
console.log(text$1);
}

var text$1 = 'dep2 fn';
var text = 'dep2 fn';

exports.fn = fn$2;
exports.fn = fn;
exports.fn$1 = fn$1;
@@ -1,18 +1,18 @@
function fn () {
function fn$2 () {
console.log('lib fn');
}

function fn$1 () {
fn();
console.log(text$1);
fn$2();
console.log(text);
}

var text = 'dep1 fn';
var text$1 = 'dep1 fn';

function fn$2 () {
console.log(text);
function fn () {
console.log(text$1);
}

var text$1 = 'dep2 fn';
var text = 'dep2 fn';

export { fn$1 as a, fn$2 as f };
export { fn$1 as a, fn as f };
Expand Up @@ -5,25 +5,25 @@ System.register([], function (exports) {

exports({
a: fn$1,
f: fn$2
f: fn
});

function fn () {
function fn$2 () {
console.log('lib fn');
}

function fn$1 () {
fn();
console.log(text$1);
fn$2();
console.log(text);
}

var text = 'dep1 fn';
var text$1 = 'dep1 fn';

function fn$2 () {
console.log(text);
function fn () {
console.log(text$1);
}

var text$1 = 'dep2 fn';
var text = 'dep2 fn';

}
};
Expand Down
@@ -1,25 +1,25 @@
define(['exports'], function (exports) { 'use strict';

function fn () {
function fn$2 () {
console.log('lib fn');
}

function fn$1 () {
fn();
fn$2();
console.log(exports.text);
exports.text$1 = 'dep1 fn after dep2';
}

exports.text$1 = 'dep1 fn';

function fn$2 () {
function fn () {
console.log(exports.text$1);
exports.text = 'dep2 fn after dep1';
}

exports.text = 'dep2 fn';

exports.fn = fn$2;
exports.fn = fn;
exports.fn$1 = fn$1;

});
@@ -1,23 +1,23 @@
'use strict';

function fn () {
function fn$2 () {
console.log('lib fn');
}

function fn$1 () {
fn();
fn$2();
console.log(exports.text);
exports.text$1 = 'dep1 fn after dep2';
}

exports.text$1 = 'dep1 fn';

function fn$2 () {
function fn () {
console.log(exports.text$1);
exports.text = 'dep2 fn after dep1';
}

exports.text = 'dep2 fn';

exports.fn = fn$2;
exports.fn = fn;
exports.fn$1 = fn$1;
@@ -1,20 +1,20 @@
function fn () {
function fn$2 () {
console.log('lib fn');
}

function fn$1 () {
fn();
console.log(text$1);
text = 'dep1 fn after dep2';
fn$2();
console.log(text);
text$1 = 'dep1 fn after dep2';
}

var text = 'dep1 fn';
var text$1 = 'dep1 fn';

function fn$2 () {
console.log(text);
text$1 = 'dep2 fn after dep1';
function fn () {
console.log(text$1);
text = 'dep2 fn after dep1';
}

var text$1 = 'dep2 fn';
var text = 'dep2 fn';

export { fn$1 as a, text as b, fn$2 as f, text$1 as t };
export { fn$1 as a, text$1 as b, fn as f, text as t };

0 comments on commit b254672

Please sign in to comment.