rollup 4.53.1 → 4.53.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bin/rollup +2 -2
- package/dist/es/getLogFilter.js +2 -2
- package/dist/es/parseAst.js +2 -2
- package/dist/es/rollup.js +2 -2
- package/dist/es/shared/node-entry.js +33 -19
- package/dist/es/shared/parseAst.js +3 -3
- package/dist/es/shared/watch.js +2 -2
- package/dist/getLogFilter.js +2 -2
- package/dist/loadConfigFile.js +2 -2
- package/dist/parseAst.js +2 -2
- package/dist/rollup.js +2 -2
- package/dist/shared/fsevents-importer.js +2 -2
- package/dist/shared/index.js +2 -2
- package/dist/shared/loadConfigFile.js +2 -2
- package/dist/shared/parseAst.js +3 -3
- package/dist/shared/rollup.js +33 -19
- package/dist/shared/watch-cli.js +2 -2
- package/dist/shared/watch.js +2 -2
- package/package.json +44 -41
package/dist/bin/rollup
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
/*
|
|
3
3
|
@license
|
|
4
|
-
Rollup.js v4.53.
|
|
5
|
-
|
|
4
|
+
Rollup.js v4.53.3
|
|
5
|
+
Wed, 19 Nov 2025 06:31:27 GMT - commit 998b5950a6ea7cea1a7b994e8dab45472c3cbe7e
|
|
6
6
|
|
|
7
7
|
https://github.com/rollup/rollup
|
|
8
8
|
|
package/dist/es/getLogFilter.js
CHANGED
package/dist/es/parseAst.js
CHANGED
package/dist/es/rollup.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*
|
|
2
2
|
@license
|
|
3
|
-
Rollup.js v4.53.
|
|
4
|
-
|
|
3
|
+
Rollup.js v4.53.3
|
|
4
|
+
Wed, 19 Nov 2025 06:31:27 GMT - commit 998b5950a6ea7cea1a7b994e8dab45472c3cbe7e
|
|
5
5
|
|
|
6
6
|
https://github.com/rollup/rollup
|
|
7
7
|
|
|
@@ -27,7 +27,7 @@ function _mergeNamespaces(n, m) {
|
|
|
27
27
|
return Object.defineProperty(n, Symbol.toStringTag, { value: 'Module' });
|
|
28
28
|
}
|
|
29
29
|
|
|
30
|
-
var version = "4.53.
|
|
30
|
+
var version = "4.53.3";
|
|
31
31
|
|
|
32
32
|
// src/vlq.ts
|
|
33
33
|
var comma = ",".charCodeAt(0);
|
|
@@ -2584,6 +2584,7 @@ class ExternalModule {
|
|
|
2584
2584
|
this.reexported = false;
|
|
2585
2585
|
this.used = false;
|
|
2586
2586
|
this.declarations = new Map();
|
|
2587
|
+
this.importersByExportedName = new Map();
|
|
2587
2588
|
this.mostCommonSuggestion = 0;
|
|
2588
2589
|
this.nameSuggestions = new Map();
|
|
2589
2590
|
this.suggestedVariableName = makeLegal(id.split(/[/\\]/).pop());
|
|
@@ -2620,8 +2621,11 @@ class ExternalModule {
|
|
|
2620
2621
|
cacheInfoGetters() {
|
|
2621
2622
|
cacheObjectGetters(this.info, ['dynamicImporters', 'importers']);
|
|
2622
2623
|
}
|
|
2623
|
-
getVariableForExportName(name) {
|
|
2624
|
+
getVariableForExportName(name, { importChain }) {
|
|
2624
2625
|
const declaration = this.declarations.get(name);
|
|
2626
|
+
for (const module of importChain) {
|
|
2627
|
+
getOrCreate(this.importersByExportedName, name, getNewSet).add(module);
|
|
2628
|
+
}
|
|
2625
2629
|
if (declaration)
|
|
2626
2630
|
return [declaration];
|
|
2627
2631
|
const externalVariable = new ExternalVariable(this, name);
|
|
@@ -2645,7 +2649,10 @@ class ExternalModule {
|
|
|
2645
2649
|
return;
|
|
2646
2650
|
const importersSet = new Set();
|
|
2647
2651
|
for (const name of unused) {
|
|
2648
|
-
|
|
2652
|
+
const importersOfName = this.importersByExportedName.get(name);
|
|
2653
|
+
for (const importer of this.importers) {
|
|
2654
|
+
if (!importersOfName?.has(importer))
|
|
2655
|
+
continue;
|
|
2649
2656
|
importersSet.add(importer);
|
|
2650
2657
|
}
|
|
2651
2658
|
}
|
|
@@ -5110,6 +5117,7 @@ class LocalVariable extends Variable {
|
|
|
5110
5117
|
return true;
|
|
5111
5118
|
if (path.length === 0)
|
|
5112
5119
|
return false;
|
|
5120
|
+
// if (this.isReassigned || this.init.included) return true;
|
|
5113
5121
|
if (this.isReassigned)
|
|
5114
5122
|
return true;
|
|
5115
5123
|
return (!context.assigned.trackEntityAtPathAndGetIfTracked(path, this) &&
|
|
@@ -11626,7 +11634,8 @@ class AssignmentExpression extends NodeBase {
|
|
|
11626
11634
|
this.left.hasEffectsWhenDestructuring?.(context, EMPTY_PATH, right));
|
|
11627
11635
|
}
|
|
11628
11636
|
hasEffectsOnInteractionAtPath(path, interaction, context) {
|
|
11629
|
-
return this.
|
|
11637
|
+
return ((interaction.type === INTERACTION_ASSIGNED && this.left.included) ||
|
|
11638
|
+
this.right.hasEffectsOnInteractionAtPath(path, interaction, context));
|
|
11630
11639
|
}
|
|
11631
11640
|
include(context, includeChildrenRecursively) {
|
|
11632
11641
|
const { deoptimized, isConstReassignment, left, right, operator } = this;
|
|
@@ -16267,7 +16276,7 @@ const bufferParsers = [
|
|
|
16267
16276
|
const flags = buffer[position];
|
|
16268
16277
|
node.tail = (flags & 1) === 1;
|
|
16269
16278
|
const cookedPosition = buffer[position + 1];
|
|
16270
|
-
const cooked = cookedPosition === 0 ?
|
|
16279
|
+
const cooked = cookedPosition === 0 ? null : buffer.convertString(cookedPosition);
|
|
16271
16280
|
const raw = buffer.convertString(buffer[position + 2]);
|
|
16272
16281
|
node.value = { cooked, raw };
|
|
16273
16282
|
},
|
|
@@ -16750,7 +16759,7 @@ const MISSING_EXPORT_SHIM_DESCRIPTION = {
|
|
|
16750
16759
|
identifier: null,
|
|
16751
16760
|
localName: MISSING_EXPORT_SHIM_VARIABLE
|
|
16752
16761
|
};
|
|
16753
|
-
function getVariableForExportNameRecursive(target, name, importerForSideEffects, isExportAllSearch, searchedNamesAndModules = new Map()) {
|
|
16762
|
+
function getVariableForExportNameRecursive(target, name, importerForSideEffects, isExportAllSearch, searchedNamesAndModules = new Map(), importChain) {
|
|
16754
16763
|
const searchedModules = searchedNamesAndModules.get(name);
|
|
16755
16764
|
if (searchedModules) {
|
|
16756
16765
|
if (searchedModules.has(target)) {
|
|
@@ -16762,6 +16771,7 @@ function getVariableForExportNameRecursive(target, name, importerForSideEffects,
|
|
|
16762
16771
|
searchedNamesAndModules.set(name, new Set([target]));
|
|
16763
16772
|
}
|
|
16764
16773
|
return target.getVariableForExportName(name, {
|
|
16774
|
+
importChain,
|
|
16765
16775
|
importerForSideEffects,
|
|
16766
16776
|
isExportAllSearch,
|
|
16767
16777
|
searchedNamesAndModules
|
|
@@ -17092,7 +17102,7 @@ class Module {
|
|
|
17092
17102
|
}
|
|
17093
17103
|
return this.syntheticNamespace;
|
|
17094
17104
|
}
|
|
17095
|
-
getVariableForExportName(name, { importerForSideEffects, isExportAllSearch, onlyExplicit, searchedNamesAndModules } = EMPTY_OBJECT) {
|
|
17105
|
+
getVariableForExportName(name, { importerForSideEffects, importChain = [], isExportAllSearch, onlyExplicit, searchedNamesAndModules } = EMPTY_OBJECT) {
|
|
17096
17106
|
if (name[0] === '*') {
|
|
17097
17107
|
if (name.length === 1) {
|
|
17098
17108
|
// export * from './other'
|
|
@@ -17100,12 +17110,14 @@ class Module {
|
|
|
17100
17110
|
}
|
|
17101
17111
|
// export * from 'external'
|
|
17102
17112
|
const module = this.graph.modulesById.get(name.slice(1));
|
|
17103
|
-
return module.getVariableForExportName('*'
|
|
17113
|
+
return module.getVariableForExportName('*', {
|
|
17114
|
+
importChain: [...importChain, this.id]
|
|
17115
|
+
});
|
|
17104
17116
|
}
|
|
17105
17117
|
// export { foo } from './other'
|
|
17106
17118
|
const reexportDeclaration = this.reexportDescriptions.get(name);
|
|
17107
17119
|
if (reexportDeclaration) {
|
|
17108
|
-
const [variable, options] = getVariableForExportNameRecursive(reexportDeclaration.module, reexportDeclaration.localName, importerForSideEffects, false, searchedNamesAndModules);
|
|
17120
|
+
const [variable, options] = getVariableForExportNameRecursive(reexportDeclaration.module, reexportDeclaration.localName, importerForSideEffects, false, searchedNamesAndModules, [...importChain, this.id]);
|
|
17109
17121
|
if (!variable) {
|
|
17110
17122
|
return this.error(logMissingExport(reexportDeclaration.localName, this.id, reexportDeclaration.module.id, !!options?.missingButExportExists), reexportDeclaration.start);
|
|
17111
17123
|
}
|
|
@@ -17141,7 +17153,7 @@ class Module {
|
|
|
17141
17153
|
}
|
|
17142
17154
|
if (name !== 'default') {
|
|
17143
17155
|
const foundNamespaceReexport = this.namespaceReexportsByName.get(name) ??
|
|
17144
|
-
this.getVariableFromNamespaceReexports(name, importerForSideEffects, searchedNamesAndModules);
|
|
17156
|
+
this.getVariableFromNamespaceReexports(name, importerForSideEffects, searchedNamesAndModules, [...importChain, this.id]);
|
|
17145
17157
|
this.namespaceReexportsByName.set(name, foundNamespaceReexport);
|
|
17146
17158
|
if (foundNamespaceReexport[0]) {
|
|
17147
17159
|
return foundNamespaceReexport;
|
|
@@ -17395,7 +17407,7 @@ class Module {
|
|
|
17395
17407
|
if (otherModule instanceof Module && importDescription.name === '*') {
|
|
17396
17408
|
return otherModule.namespace;
|
|
17397
17409
|
}
|
|
17398
|
-
const [declaration, options] = getVariableForExportNameRecursive(otherModule, importDescription.name, importerForSideEffects || this, isExportAllSearch, searchedNamesAndModules);
|
|
17410
|
+
const [declaration, options] = getVariableForExportNameRecursive(otherModule, importDescription.name, importerForSideEffects || this, isExportAllSearch, searchedNamesAndModules, [this.id]);
|
|
17399
17411
|
if (!declaration) {
|
|
17400
17412
|
return this.error(logMissingExport(importDescription.name, this.id, otherModule.id, !!options?.missingButExportExists), importDescription.start);
|
|
17401
17413
|
}
|
|
@@ -17600,13 +17612,13 @@ class Module {
|
|
|
17600
17612
|
getImportedJsxFactoryVariable(baseName, nodeStart, importSource) {
|
|
17601
17613
|
const { id } = this.resolvedIds[importSource];
|
|
17602
17614
|
const module = this.graph.modulesById.get(id);
|
|
17603
|
-
const [variable] = module.getVariableForExportName(baseName);
|
|
17615
|
+
const [variable] = module.getVariableForExportName(baseName, { importChain: [this.id] });
|
|
17604
17616
|
if (!variable) {
|
|
17605
17617
|
return this.error(logMissingJsxExport(baseName, id, this.id), nodeStart);
|
|
17606
17618
|
}
|
|
17607
17619
|
return variable;
|
|
17608
17620
|
}
|
|
17609
|
-
getVariableFromNamespaceReexports(name, importerForSideEffects, searchedNamesAndModules) {
|
|
17621
|
+
getVariableFromNamespaceReexports(name, importerForSideEffects, searchedNamesAndModules, importChain) {
|
|
17610
17622
|
let foundSyntheticDeclaration = null;
|
|
17611
17623
|
const foundInternalDeclarations = new Map();
|
|
17612
17624
|
const foundExternalDeclarations = new Set();
|
|
@@ -17618,7 +17630,7 @@ class Module {
|
|
|
17618
17630
|
const [variable, options] = getVariableForExportNameRecursive(module, name, importerForSideEffects, true,
|
|
17619
17631
|
// We are creating a copy to handle the case where the same binding is
|
|
17620
17632
|
// imported through different namespace reexports gracefully
|
|
17621
|
-
copyNameToModulesMap(searchedNamesAndModules));
|
|
17633
|
+
copyNameToModulesMap(searchedNamesAndModules), importChain);
|
|
17622
17634
|
if (module instanceof ExternalModule || options?.indirectExternal) {
|
|
17623
17635
|
foundExternalDeclarations.add(variable);
|
|
17624
17636
|
}
|
|
@@ -17659,7 +17671,9 @@ class Module {
|
|
|
17659
17671
|
const syntheticNamespaces = new Set();
|
|
17660
17672
|
for (const module of [this, ...this.exportAllModules]) {
|
|
17661
17673
|
if (module instanceof ExternalModule) {
|
|
17662
|
-
const [externalVariable] = module.getVariableForExportName('*'
|
|
17674
|
+
const [externalVariable] = module.getVariableForExportName('*', {
|
|
17675
|
+
importChain: [this.id]
|
|
17676
|
+
});
|
|
17663
17677
|
externalVariable.includePath(UNKNOWN_PATH, createInclusionContext());
|
|
17664
17678
|
this.includedImports.add(externalVariable);
|
|
17665
17679
|
externalNamespaces.add(externalVariable);
|
|
@@ -21818,7 +21832,7 @@ class FileEmitter {
|
|
|
21818
21832
|
}
|
|
21819
21833
|
else {
|
|
21820
21834
|
const sourceHash = getHash(consumedFile.source);
|
|
21821
|
-
getOrCreate(consumedAssetsByHash, sourceHash,
|
|
21835
|
+
getOrCreate(consumedAssetsByHash, sourceHash, getNewArray).push(consumedFile);
|
|
21822
21836
|
}
|
|
21823
21837
|
}
|
|
21824
21838
|
else if (consumedFile.type === 'prebuilt-chunk') {
|
|
@@ -22737,7 +22751,7 @@ class Graph {
|
|
|
22737
22751
|
for (const module of this.modules) {
|
|
22738
22752
|
for (const importDescription of module.importDescriptions.values()) {
|
|
22739
22753
|
if (importDescription.name !== '*') {
|
|
22740
|
-
const [variable, options] = importDescription.module.getVariableForExportName(importDescription.name);
|
|
22754
|
+
const [variable, options] = importDescription.module.getVariableForExportName(importDescription.name, { importChain: [module.id] });
|
|
22741
22755
|
if (!variable) {
|
|
22742
22756
|
module.log(LOGLEVEL_WARN, logMissingExport(importDescription.name, module.id, importDescription.module.id, !!options?.missingButExportExists), importDescription.start);
|
|
22743
22757
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*
|
|
2
2
|
@license
|
|
3
|
-
Rollup.js v4.53.
|
|
4
|
-
|
|
3
|
+
Rollup.js v4.53.3
|
|
4
|
+
Wed, 19 Nov 2025 06:31:27 GMT - commit 998b5950a6ea7cea1a7b994e8dab45472c3cbe7e
|
|
5
5
|
|
|
6
6
|
https://github.com/rollup/rollup
|
|
7
7
|
|
|
@@ -1930,7 +1930,7 @@ const nodeConverters = [
|
|
|
1930
1930
|
function templateElement(position, buffer) {
|
|
1931
1931
|
const flags = buffer[position + 2];
|
|
1932
1932
|
const cookedPosition = buffer[position + 3];
|
|
1933
|
-
const cooked = cookedPosition === 0 ?
|
|
1933
|
+
const cooked = cookedPosition === 0 ? null : buffer.convertString(cookedPosition);
|
|
1934
1934
|
const raw = buffer.convertString(buffer[position + 4]);
|
|
1935
1935
|
return {
|
|
1936
1936
|
type: 'TemplateElement',
|
package/dist/es/shared/watch.js
CHANGED
package/dist/getLogFilter.js
CHANGED
package/dist/loadConfigFile.js
CHANGED
package/dist/parseAst.js
CHANGED
package/dist/rollup.js
CHANGED
package/dist/shared/index.js
CHANGED
package/dist/shared/parseAst.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*
|
|
2
2
|
@license
|
|
3
|
-
Rollup.js v4.53.
|
|
4
|
-
|
|
3
|
+
Rollup.js v4.53.3
|
|
4
|
+
Wed, 19 Nov 2025 06:31:27 GMT - commit 998b5950a6ea7cea1a7b994e8dab45472c3cbe7e
|
|
5
5
|
|
|
6
6
|
https://github.com/rollup/rollup
|
|
7
7
|
|
|
@@ -1993,7 +1993,7 @@ const nodeConverters = [
|
|
|
1993
1993
|
function templateElement(position, buffer) {
|
|
1994
1994
|
const flags = buffer[position + 2];
|
|
1995
1995
|
const cookedPosition = buffer[position + 3];
|
|
1996
|
-
const cooked = cookedPosition === 0 ?
|
|
1996
|
+
const cooked = cookedPosition === 0 ? null : buffer.convertString(cookedPosition);
|
|
1997
1997
|
const raw = buffer.convertString(buffer[position + 4]);
|
|
1998
1998
|
return {
|
|
1999
1999
|
type: 'TemplateElement',
|
package/dist/shared/rollup.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*
|
|
2
2
|
@license
|
|
3
|
-
Rollup.js v4.53.
|
|
4
|
-
|
|
3
|
+
Rollup.js v4.53.3
|
|
4
|
+
Wed, 19 Nov 2025 06:31:27 GMT - commit 998b5950a6ea7cea1a7b994e8dab45472c3cbe7e
|
|
5
5
|
|
|
6
6
|
https://github.com/rollup/rollup
|
|
7
7
|
|
|
@@ -42,7 +42,7 @@ function _mergeNamespaces(n, m) {
|
|
|
42
42
|
|
|
43
43
|
const promises__namespace = /*#__PURE__*/_interopNamespaceDefault(promises);
|
|
44
44
|
|
|
45
|
-
var version = "4.53.
|
|
45
|
+
var version = "4.53.3";
|
|
46
46
|
|
|
47
47
|
function ensureArray$1(items) {
|
|
48
48
|
if (Array.isArray(items)) {
|
|
@@ -369,7 +369,7 @@ class FileEmitter {
|
|
|
369
369
|
}
|
|
370
370
|
else {
|
|
371
371
|
const sourceHash = getHash(consumedFile.source);
|
|
372
|
-
getOrCreate(consumedAssetsByHash, sourceHash,
|
|
372
|
+
getOrCreate(consumedAssetsByHash, sourceHash, getNewArray).push(consumedFile);
|
|
373
373
|
}
|
|
374
374
|
}
|
|
375
375
|
else if (consumedFile.type === 'prebuilt-chunk') {
|
|
@@ -6375,6 +6375,7 @@ class ExternalModule {
|
|
|
6375
6375
|
this.reexported = false;
|
|
6376
6376
|
this.used = false;
|
|
6377
6377
|
this.declarations = new Map();
|
|
6378
|
+
this.importersByExportedName = new Map();
|
|
6378
6379
|
this.mostCommonSuggestion = 0;
|
|
6379
6380
|
this.nameSuggestions = new Map();
|
|
6380
6381
|
this.suggestedVariableName = makeLegal(id.split(/[/\\]/).pop());
|
|
@@ -6411,8 +6412,11 @@ class ExternalModule {
|
|
|
6411
6412
|
cacheInfoGetters() {
|
|
6412
6413
|
cacheObjectGetters(this.info, ['dynamicImporters', 'importers']);
|
|
6413
6414
|
}
|
|
6414
|
-
getVariableForExportName(name) {
|
|
6415
|
+
getVariableForExportName(name, { importChain }) {
|
|
6415
6416
|
const declaration = this.declarations.get(name);
|
|
6417
|
+
for (const module of importChain) {
|
|
6418
|
+
getOrCreate(this.importersByExportedName, name, getNewSet).add(module);
|
|
6419
|
+
}
|
|
6416
6420
|
if (declaration)
|
|
6417
6421
|
return [declaration];
|
|
6418
6422
|
const externalVariable = new ExternalVariable(this, name);
|
|
@@ -6436,7 +6440,10 @@ class ExternalModule {
|
|
|
6436
6440
|
return;
|
|
6437
6441
|
const importersSet = new Set();
|
|
6438
6442
|
for (const name of unused) {
|
|
6439
|
-
|
|
6443
|
+
const importersOfName = this.importersByExportedName.get(name);
|
|
6444
|
+
for (const importer of this.importers) {
|
|
6445
|
+
if (!importersOfName?.has(importer))
|
|
6446
|
+
continue;
|
|
6440
6447
|
importersSet.add(importer);
|
|
6441
6448
|
}
|
|
6442
6449
|
}
|
|
@@ -8899,6 +8906,7 @@ class LocalVariable extends Variable {
|
|
|
8899
8906
|
return true;
|
|
8900
8907
|
if (path.length === 0)
|
|
8901
8908
|
return false;
|
|
8909
|
+
// if (this.isReassigned || this.init.included) return true;
|
|
8902
8910
|
if (this.isReassigned)
|
|
8903
8911
|
return true;
|
|
8904
8912
|
return (!context.assigned.trackEntityAtPathAndGetIfTracked(path, this) &&
|
|
@@ -13236,7 +13244,8 @@ class AssignmentExpression extends NodeBase {
|
|
|
13236
13244
|
this.left.hasEffectsWhenDestructuring?.(context, EMPTY_PATH, right));
|
|
13237
13245
|
}
|
|
13238
13246
|
hasEffectsOnInteractionAtPath(path, interaction, context) {
|
|
13239
|
-
return this.
|
|
13247
|
+
return ((interaction.type === INTERACTION_ASSIGNED && this.left.included) ||
|
|
13248
|
+
this.right.hasEffectsOnInteractionAtPath(path, interaction, context));
|
|
13240
13249
|
}
|
|
13241
13250
|
include(context, includeChildrenRecursively) {
|
|
13242
13251
|
const { deoptimized, isConstReassignment, left, right, operator } = this;
|
|
@@ -17877,7 +17886,7 @@ const bufferParsers = [
|
|
|
17877
17886
|
const flags = buffer[position];
|
|
17878
17887
|
node.tail = (flags & 1) === 1;
|
|
17879
17888
|
const cookedPosition = buffer[position + 1];
|
|
17880
|
-
const cooked = cookedPosition === 0 ?
|
|
17889
|
+
const cooked = cookedPosition === 0 ? null : buffer.convertString(cookedPosition);
|
|
17881
17890
|
const raw = buffer.convertString(buffer[position + 2]);
|
|
17882
17891
|
node.value = { cooked, raw };
|
|
17883
17892
|
},
|
|
@@ -18353,7 +18362,7 @@ const MISSING_EXPORT_SHIM_DESCRIPTION = {
|
|
|
18353
18362
|
identifier: null,
|
|
18354
18363
|
localName: MISSING_EXPORT_SHIM_VARIABLE
|
|
18355
18364
|
};
|
|
18356
|
-
function getVariableForExportNameRecursive(target, name, importerForSideEffects, isExportAllSearch, searchedNamesAndModules = new Map()) {
|
|
18365
|
+
function getVariableForExportNameRecursive(target, name, importerForSideEffects, isExportAllSearch, searchedNamesAndModules = new Map(), importChain) {
|
|
18357
18366
|
const searchedModules = searchedNamesAndModules.get(name);
|
|
18358
18367
|
if (searchedModules) {
|
|
18359
18368
|
if (searchedModules.has(target)) {
|
|
@@ -18365,6 +18374,7 @@ function getVariableForExportNameRecursive(target, name, importerForSideEffects,
|
|
|
18365
18374
|
searchedNamesAndModules.set(name, new Set([target]));
|
|
18366
18375
|
}
|
|
18367
18376
|
return target.getVariableForExportName(name, {
|
|
18377
|
+
importChain,
|
|
18368
18378
|
importerForSideEffects,
|
|
18369
18379
|
isExportAllSearch,
|
|
18370
18380
|
searchedNamesAndModules
|
|
@@ -18695,7 +18705,7 @@ class Module {
|
|
|
18695
18705
|
}
|
|
18696
18706
|
return this.syntheticNamespace;
|
|
18697
18707
|
}
|
|
18698
|
-
getVariableForExportName(name, { importerForSideEffects, isExportAllSearch, onlyExplicit, searchedNamesAndModules } = parseAst_js.EMPTY_OBJECT) {
|
|
18708
|
+
getVariableForExportName(name, { importerForSideEffects, importChain = [], isExportAllSearch, onlyExplicit, searchedNamesAndModules } = parseAst_js.EMPTY_OBJECT) {
|
|
18699
18709
|
if (name[0] === '*') {
|
|
18700
18710
|
if (name.length === 1) {
|
|
18701
18711
|
// export * from './other'
|
|
@@ -18703,12 +18713,14 @@ class Module {
|
|
|
18703
18713
|
}
|
|
18704
18714
|
// export * from 'external'
|
|
18705
18715
|
const module = this.graph.modulesById.get(name.slice(1));
|
|
18706
|
-
return module.getVariableForExportName('*'
|
|
18716
|
+
return module.getVariableForExportName('*', {
|
|
18717
|
+
importChain: [...importChain, this.id]
|
|
18718
|
+
});
|
|
18707
18719
|
}
|
|
18708
18720
|
// export { foo } from './other'
|
|
18709
18721
|
const reexportDeclaration = this.reexportDescriptions.get(name);
|
|
18710
18722
|
if (reexportDeclaration) {
|
|
18711
|
-
const [variable, options] = getVariableForExportNameRecursive(reexportDeclaration.module, reexportDeclaration.localName, importerForSideEffects, false, searchedNamesAndModules);
|
|
18723
|
+
const [variable, options] = getVariableForExportNameRecursive(reexportDeclaration.module, reexportDeclaration.localName, importerForSideEffects, false, searchedNamesAndModules, [...importChain, this.id]);
|
|
18712
18724
|
if (!variable) {
|
|
18713
18725
|
return this.error(parseAst_js.logMissingExport(reexportDeclaration.localName, this.id, reexportDeclaration.module.id, !!options?.missingButExportExists), reexportDeclaration.start);
|
|
18714
18726
|
}
|
|
@@ -18744,7 +18756,7 @@ class Module {
|
|
|
18744
18756
|
}
|
|
18745
18757
|
if (name !== 'default') {
|
|
18746
18758
|
const foundNamespaceReexport = this.namespaceReexportsByName.get(name) ??
|
|
18747
|
-
this.getVariableFromNamespaceReexports(name, importerForSideEffects, searchedNamesAndModules);
|
|
18759
|
+
this.getVariableFromNamespaceReexports(name, importerForSideEffects, searchedNamesAndModules, [...importChain, this.id]);
|
|
18748
18760
|
this.namespaceReexportsByName.set(name, foundNamespaceReexport);
|
|
18749
18761
|
if (foundNamespaceReexport[0]) {
|
|
18750
18762
|
return foundNamespaceReexport;
|
|
@@ -18998,7 +19010,7 @@ class Module {
|
|
|
18998
19010
|
if (otherModule instanceof Module && importDescription.name === '*') {
|
|
18999
19011
|
return otherModule.namespace;
|
|
19000
19012
|
}
|
|
19001
|
-
const [declaration, options] = getVariableForExportNameRecursive(otherModule, importDescription.name, importerForSideEffects || this, isExportAllSearch, searchedNamesAndModules);
|
|
19013
|
+
const [declaration, options] = getVariableForExportNameRecursive(otherModule, importDescription.name, importerForSideEffects || this, isExportAllSearch, searchedNamesAndModules, [this.id]);
|
|
19002
19014
|
if (!declaration) {
|
|
19003
19015
|
return this.error(parseAst_js.logMissingExport(importDescription.name, this.id, otherModule.id, !!options?.missingButExportExists), importDescription.start);
|
|
19004
19016
|
}
|
|
@@ -19203,13 +19215,13 @@ class Module {
|
|
|
19203
19215
|
getImportedJsxFactoryVariable(baseName, nodeStart, importSource) {
|
|
19204
19216
|
const { id } = this.resolvedIds[importSource];
|
|
19205
19217
|
const module = this.graph.modulesById.get(id);
|
|
19206
|
-
const [variable] = module.getVariableForExportName(baseName);
|
|
19218
|
+
const [variable] = module.getVariableForExportName(baseName, { importChain: [this.id] });
|
|
19207
19219
|
if (!variable) {
|
|
19208
19220
|
return this.error(parseAst_js.logMissingJsxExport(baseName, id, this.id), nodeStart);
|
|
19209
19221
|
}
|
|
19210
19222
|
return variable;
|
|
19211
19223
|
}
|
|
19212
|
-
getVariableFromNamespaceReexports(name, importerForSideEffects, searchedNamesAndModules) {
|
|
19224
|
+
getVariableFromNamespaceReexports(name, importerForSideEffects, searchedNamesAndModules, importChain) {
|
|
19213
19225
|
let foundSyntheticDeclaration = null;
|
|
19214
19226
|
const foundInternalDeclarations = new Map();
|
|
19215
19227
|
const foundExternalDeclarations = new Set();
|
|
@@ -19221,7 +19233,7 @@ class Module {
|
|
|
19221
19233
|
const [variable, options] = getVariableForExportNameRecursive(module, name, importerForSideEffects, true,
|
|
19222
19234
|
// We are creating a copy to handle the case where the same binding is
|
|
19223
19235
|
// imported through different namespace reexports gracefully
|
|
19224
|
-
copyNameToModulesMap(searchedNamesAndModules));
|
|
19236
|
+
copyNameToModulesMap(searchedNamesAndModules), importChain);
|
|
19225
19237
|
if (module instanceof ExternalModule || options?.indirectExternal) {
|
|
19226
19238
|
foundExternalDeclarations.add(variable);
|
|
19227
19239
|
}
|
|
@@ -19262,7 +19274,9 @@ class Module {
|
|
|
19262
19274
|
const syntheticNamespaces = new Set();
|
|
19263
19275
|
for (const module of [this, ...this.exportAllModules]) {
|
|
19264
19276
|
if (module instanceof ExternalModule) {
|
|
19265
|
-
const [externalVariable] = module.getVariableForExportName('*'
|
|
19277
|
+
const [externalVariable] = module.getVariableForExportName('*', {
|
|
19278
|
+
importChain: [this.id]
|
|
19279
|
+
});
|
|
19266
19280
|
externalVariable.includePath(UNKNOWN_PATH, createInclusionContext());
|
|
19267
19281
|
this.includedImports.add(externalVariable);
|
|
19268
19282
|
externalNamespaces.add(externalVariable);
|
|
@@ -23109,7 +23123,7 @@ class Graph {
|
|
|
23109
23123
|
for (const module of this.modules) {
|
|
23110
23124
|
for (const importDescription of module.importDescriptions.values()) {
|
|
23111
23125
|
if (importDescription.name !== '*') {
|
|
23112
|
-
const [variable, options] = importDescription.module.getVariableForExportName(importDescription.name);
|
|
23126
|
+
const [variable, options] = importDescription.module.getVariableForExportName(importDescription.name, { importChain: [module.id] });
|
|
23113
23127
|
if (!variable) {
|
|
23114
23128
|
module.log(parseAst_js.LOGLEVEL_WARN, parseAst_js.logMissingExport(importDescription.name, module.id, importDescription.module.id, !!options?.missingButExportExists), importDescription.start);
|
|
23115
23129
|
}
|
package/dist/shared/watch-cli.js
CHANGED
package/dist/shared/watch.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "rollup",
|
|
3
|
-
"version": "4.53.
|
|
3
|
+
"version": "4.53.3",
|
|
4
4
|
"description": "Next-generation ES module bundler",
|
|
5
5
|
"main": "dist/rollup.js",
|
|
6
6
|
"module": "dist/es/rollup.js",
|
|
@@ -57,9 +57,8 @@
|
|
|
57
57
|
"preview:docs": "vitepress preview docs",
|
|
58
58
|
"ci:artifacts": "napi artifacts",
|
|
59
59
|
"ci:lint": "concurrently -c red,yellow,green,blue 'npm:lint:js:nofix' 'npm:lint:native-js' 'npm:lint:markdown:nofix' 'npm:lint:rust:nofix'",
|
|
60
|
-
"ci:test:
|
|
61
|
-
"ci:
|
|
62
|
-
"ci:coverage": "npm run build:cjs && npm run build:copy-native && npm run build:bootstrap && npm run build:copy-native && NODE_OPTIONS=--no-experimental-require-module nyc --reporter lcovonly mocha",
|
|
60
|
+
"ci:test:all": "concurrently --kill-others-on-fail -c green,blue,magenta,cyan 'npm:test:only' 'npm:test:typescript' 'npm:test:leak' 'npm:test:browser'",
|
|
61
|
+
"ci:coverage": "NODE_OPTIONS=--no-experimental-require-module nyc --reporter lcovonly mocha",
|
|
63
62
|
"lint": "concurrently -c red,yellow,green,blue 'npm:lint:js' 'npm:lint:native-js' 'npm:lint:markdown' 'npm:lint:rust'",
|
|
64
63
|
"lint:js": "eslint . --fix --cache --concurrency auto",
|
|
65
64
|
"lint:js:nofix": "eslint . --cache --concurrency auto",
|
|
@@ -69,12 +68,15 @@
|
|
|
69
68
|
"lint:rust": "cd rust && cargo fmt && cargo clippy --fix --allow-dirty",
|
|
70
69
|
"lint:rust:nofix": "cd rust && cargo fmt --check && cargo clippy",
|
|
71
70
|
"perf": "npm run build:bootstrap:cjs && node --expose-gc scripts/perf-report/index.js",
|
|
72
|
-
"prepare": "husky && patch
|
|
71
|
+
"prepare": "husky && npm run prepare:patch && node scripts/check-release.js || npm run build:prepare",
|
|
72
|
+
"prepare:patch": "patch-package",
|
|
73
73
|
"prepublishOnly": "node scripts/check-release.js && node scripts/prepublish.js",
|
|
74
74
|
"postpublish": "node scripts/postpublish.js",
|
|
75
75
|
"prepublish:napi": "napi prepublish --no-gh-release",
|
|
76
76
|
"release": "node scripts/prepare-release.js",
|
|
77
77
|
"release:docs": "git fetch --update-head-ok origin master:master && git branch --force documentation-published master && git push origin documentation-published",
|
|
78
|
+
"check-audit": "check-audit",
|
|
79
|
+
"resolve-audit": "resolve-audit",
|
|
78
80
|
"test": "npm run build && npm run test:all",
|
|
79
81
|
"test:update-snapshots": "node scripts/update-snapshots.js",
|
|
80
82
|
"test:cjs": "npm run build:cjs && npm run test:only",
|
|
@@ -86,7 +88,7 @@
|
|
|
86
88
|
"test:package": "node scripts/test-package.js",
|
|
87
89
|
"test:options": "node scripts/test-options.js",
|
|
88
90
|
"test:only": "mocha test/test.js",
|
|
89
|
-
"test:typescript": "
|
|
91
|
+
"test:typescript": "shx rm -rf test/typescript/dist && shx cp -r dist test/typescript/ && tsc --noEmit -p test/typescript && tsc --noEmit -p . && tsc --noEmit -p scripts && vue-tsc --noEmit -p docs",
|
|
90
92
|
"test:browser": "mocha test/browser/index.js",
|
|
91
93
|
"watch": "rollup --config rollup.config.ts --configPlugin typescript --watch"
|
|
92
94
|
},
|
|
@@ -109,28 +111,28 @@
|
|
|
109
111
|
"homepage": "https://rollupjs.org/",
|
|
110
112
|
"optionalDependencies": {
|
|
111
113
|
"fsevents": "~2.3.2",
|
|
112
|
-
"@rollup/rollup-darwin-arm64": "4.53.
|
|
113
|
-
"@rollup/rollup-android-arm64": "4.53.
|
|
114
|
-
"@rollup/rollup-win32-arm64-msvc": "4.53.
|
|
115
|
-
"@rollup/rollup-freebsd-arm64": "4.53.
|
|
116
|
-
"@rollup/rollup-linux-arm64-gnu": "4.53.
|
|
117
|
-
"@rollup/rollup-linux-arm64-musl": "4.53.
|
|
118
|
-
"@rollup/rollup-android-arm-eabi": "4.53.
|
|
119
|
-
"@rollup/rollup-linux-arm-gnueabihf": "4.53.
|
|
120
|
-
"@rollup/rollup-linux-arm-musleabihf": "4.53.
|
|
121
|
-
"@rollup/rollup-win32-ia32-msvc": "4.53.
|
|
122
|
-
"@rollup/rollup-linux-loong64-gnu": "4.53.
|
|
123
|
-
"@rollup/rollup-linux-riscv64-gnu": "4.53.
|
|
124
|
-
"@rollup/rollup-linux-riscv64-musl": "4.53.
|
|
125
|
-
"@rollup/rollup-linux-ppc64-gnu": "4.53.
|
|
126
|
-
"@rollup/rollup-linux-s390x-gnu": "4.53.
|
|
127
|
-
"@rollup/rollup-darwin-x64": "4.53.
|
|
128
|
-
"@rollup/rollup-win32-x64-gnu": "4.53.
|
|
129
|
-
"@rollup/rollup-win32-x64-msvc": "4.53.
|
|
130
|
-
"@rollup/rollup-freebsd-x64": "4.53.
|
|
131
|
-
"@rollup/rollup-linux-x64-gnu": "4.53.
|
|
132
|
-
"@rollup/rollup-linux-x64-musl": "4.53.
|
|
133
|
-
"@rollup/rollup-openharmony-arm64": "4.53.
|
|
114
|
+
"@rollup/rollup-darwin-arm64": "4.53.3",
|
|
115
|
+
"@rollup/rollup-android-arm64": "4.53.3",
|
|
116
|
+
"@rollup/rollup-win32-arm64-msvc": "4.53.3",
|
|
117
|
+
"@rollup/rollup-freebsd-arm64": "4.53.3",
|
|
118
|
+
"@rollup/rollup-linux-arm64-gnu": "4.53.3",
|
|
119
|
+
"@rollup/rollup-linux-arm64-musl": "4.53.3",
|
|
120
|
+
"@rollup/rollup-android-arm-eabi": "4.53.3",
|
|
121
|
+
"@rollup/rollup-linux-arm-gnueabihf": "4.53.3",
|
|
122
|
+
"@rollup/rollup-linux-arm-musleabihf": "4.53.3",
|
|
123
|
+
"@rollup/rollup-win32-ia32-msvc": "4.53.3",
|
|
124
|
+
"@rollup/rollup-linux-loong64-gnu": "4.53.3",
|
|
125
|
+
"@rollup/rollup-linux-riscv64-gnu": "4.53.3",
|
|
126
|
+
"@rollup/rollup-linux-riscv64-musl": "4.53.3",
|
|
127
|
+
"@rollup/rollup-linux-ppc64-gnu": "4.53.3",
|
|
128
|
+
"@rollup/rollup-linux-s390x-gnu": "4.53.3",
|
|
129
|
+
"@rollup/rollup-darwin-x64": "4.53.3",
|
|
130
|
+
"@rollup/rollup-win32-x64-gnu": "4.53.3",
|
|
131
|
+
"@rollup/rollup-win32-x64-msvc": "4.53.3",
|
|
132
|
+
"@rollup/rollup-freebsd-x64": "4.53.3",
|
|
133
|
+
"@rollup/rollup-linux-x64-gnu": "4.53.3",
|
|
134
|
+
"@rollup/rollup-linux-x64-musl": "4.53.3",
|
|
135
|
+
"@rollup/rollup-openharmony-arm64": "4.53.3"
|
|
134
136
|
},
|
|
135
137
|
"dependencies": {
|
|
136
138
|
"@types/estree": "1.0.8"
|
|
@@ -146,9 +148,9 @@
|
|
|
146
148
|
"@codemirror/state": "^6.5.2",
|
|
147
149
|
"@codemirror/view": "^6.38.6",
|
|
148
150
|
"@eslint/js": "^9.39.1",
|
|
149
|
-
"@inquirer/prompts": "^7.
|
|
151
|
+
"@inquirer/prompts": "^7.10.0",
|
|
150
152
|
"@jridgewell/sourcemap-codec": "^1.5.5",
|
|
151
|
-
"@mermaid-js/mermaid-cli": "^11.
|
|
153
|
+
"@mermaid-js/mermaid-cli": "^11.12.0",
|
|
152
154
|
"@napi-rs/cli": "^3.4.1",
|
|
153
155
|
"@rollup/plugin-alias": "^6.0.0",
|
|
154
156
|
"@rollup/plugin-buble": "^1.0.3",
|
|
@@ -159,9 +161,9 @@
|
|
|
159
161
|
"@rollup/plugin-terser": "^0.4.4",
|
|
160
162
|
"@rollup/plugin-typescript": "^12.3.0",
|
|
161
163
|
"@rollup/pluginutils": "^5.3.0",
|
|
162
|
-
"@shikijs/vitepress-twoslash": "^3.
|
|
164
|
+
"@shikijs/vitepress-twoslash": "^3.15.0",
|
|
163
165
|
"@types/mocha": "^10.0.10",
|
|
164
|
-
"@types/node": "^20.19.
|
|
166
|
+
"@types/node": "^20.19.25",
|
|
165
167
|
"@types/picomatch": "^4.0.2",
|
|
166
168
|
"@types/semver": "^7.7.1",
|
|
167
169
|
"@types/yargs-parser": "^21.0.3",
|
|
@@ -194,19 +196,20 @@
|
|
|
194
196
|
"locate-character": "^3.0.0",
|
|
195
197
|
"magic-string": "^0.30.21",
|
|
196
198
|
"memfs": "^4.50.0",
|
|
197
|
-
"mocha": "^11.7.
|
|
198
|
-
"nodemon": "^3.1.
|
|
199
|
+
"mocha": "^11.7.5",
|
|
200
|
+
"nodemon": "^3.1.11",
|
|
201
|
+
"npm-audit-resolver": "^3.0.0-RC.0",
|
|
199
202
|
"nyc": "^17.1.0",
|
|
200
203
|
"patch-package": "^8.0.1",
|
|
201
204
|
"picocolors": "^1.1.1",
|
|
202
205
|
"picomatch": "^4.0.3",
|
|
203
|
-
"pinia": "^3.0.
|
|
206
|
+
"pinia": "^3.0.4",
|
|
204
207
|
"prettier": "^3.6.2",
|
|
205
208
|
"prettier-plugin-organize-imports": "^4.3.0",
|
|
206
209
|
"pretty-bytes": "^7.1.0",
|
|
207
210
|
"pretty-ms": "^9.3.0",
|
|
208
211
|
"requirejs": "^2.3.7",
|
|
209
|
-
"rollup": "^4.
|
|
212
|
+
"rollup": "^4.53.2",
|
|
210
213
|
"rollup-plugin-license": "^3.6.0",
|
|
211
214
|
"rollup-plugin-string": "^3.0.0",
|
|
212
215
|
"semver": "^7.7.3",
|
|
@@ -215,20 +218,20 @@
|
|
|
215
218
|
"source-map": "^0.7.6",
|
|
216
219
|
"source-map-support": "^0.5.21",
|
|
217
220
|
"systemjs": "^6.15.1",
|
|
218
|
-
"terser": "^5.44.
|
|
221
|
+
"terser": "^5.44.1",
|
|
219
222
|
"tslib": "^2.8.1",
|
|
220
223
|
"typescript": "^5.9.3",
|
|
221
|
-
"typescript-eslint": "^8.46.
|
|
222
|
-
"vite": "^7.
|
|
224
|
+
"typescript-eslint": "^8.46.4",
|
|
225
|
+
"vite": "^7.2.2",
|
|
223
226
|
"vitepress": "^1.6.4",
|
|
224
|
-
"vue": "^3.5.
|
|
227
|
+
"vue": "^3.5.24",
|
|
225
228
|
"vue-eslint-parser": "^10.2.0",
|
|
226
229
|
"vue-tsc": "^3.1.3",
|
|
227
230
|
"wasm-pack": "^0.13.1",
|
|
228
231
|
"yargs-parser": "^21.1.1"
|
|
229
232
|
},
|
|
230
233
|
"overrides": {
|
|
231
|
-
"axios": "^1.13.
|
|
234
|
+
"axios": "^1.13.2",
|
|
232
235
|
"esbuild": ">0.24.2",
|
|
233
236
|
"readable-stream": "npm:@built-in/readable-stream@1",
|
|
234
237
|
"semver": "^7.7.3",
|