@atlaspack/core 2.12.1-dev.3450 → 2.12.1-dev.3466
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/lib/AssetGraph.js +5 -1
- package/lib/Atlaspack.js +2 -2
- package/lib/CommittedAsset.js +11 -5
- package/lib/Dependency.js +1 -1
- package/lib/PackagerRunner.js +53 -5
- package/lib/RequestTracker.js +10 -4
- package/lib/SymbolPropagation.js +25 -36
- package/lib/UncommittedAsset.js +8 -2
- package/lib/assetUtils.js +9 -3
- package/lib/atlaspack-v3/fs.js +31 -29
- package/lib/atlaspack-v3/index.js +2 -2
- package/lib/atlaspack-v3/jsCallable.js +9 -4
- package/lib/atlaspack-v3/worker/compat/asset-symbols.js +192 -0
- package/lib/atlaspack-v3/worker/compat/bitflags.js +84 -0
- package/lib/atlaspack-v3/worker/compat/dependency.js +44 -0
- package/lib/atlaspack-v3/worker/compat/environment.js +68 -0
- package/lib/atlaspack-v3/worker/compat/index.js +104 -0
- package/lib/atlaspack-v3/worker/compat/mutable-asset.js +144 -0
- package/lib/atlaspack-v3/worker/compat/plugin-config.js +58 -0
- package/lib/atlaspack-v3/worker/compat/plugin-logger.js +29 -0
- package/lib/atlaspack-v3/worker/compat/plugin-options.js +113 -0
- package/lib/atlaspack-v3/worker/compat/plugin-tracer.js +12 -0
- package/lib/atlaspack-v3/worker/compat/target.js +17 -0
- package/lib/atlaspack-v3/worker/worker.js +115 -127
- package/lib/index.js +0 -43
- package/lib/projectPath.js +12 -4
- package/lib/registerCoreWithSerializer.js +11 -5
- package/lib/requests/AtlaspackConfigRequest.js +8 -2
- package/lib/requests/ConfigRequest.js +9 -4
- package/lib/requests/DevDepRequest.js +9 -3
- package/lib/requests/PathRequest.js +8 -2
- package/lib/requests/WriteBundleRequest.js +15 -15
- package/lib/worker.js +8 -2
- package/package.json +24 -16
- package/src/AssetGraph.js +15 -13
- package/src/Atlaspack.js +5 -6
- package/src/AtlaspackConfig.js +11 -9
- package/src/AtlaspackConfig.schema.js +1 -1
- package/src/BundleGraph.js +83 -79
- package/src/CommittedAsset.js +5 -3
- package/src/Dependency.js +1 -1
- package/src/PackagerRunner.js +57 -9
- package/src/ReporterRunner.js +4 -4
- package/src/RequestTracker.js +19 -19
- package/src/SymbolPropagation.js +40 -52
- package/src/Transformation.js +12 -12
- package/src/UncommittedAsset.js +3 -3
- package/src/Validation.js +5 -5
- package/src/applyRuntimes.js +2 -2
- package/src/assetUtils.js +2 -2
- package/src/atlaspack-v3/AtlaspackV3.js +1 -1
- package/src/atlaspack-v3/fs.js +39 -25
- package/src/atlaspack-v3/index.js +1 -1
- package/src/atlaspack-v3/jsCallable.js +11 -10
- package/src/atlaspack-v3/worker/compat/asset-symbols.js +225 -0
- package/src/atlaspack-v3/worker/compat/bitflags.js +100 -0
- package/src/atlaspack-v3/worker/compat/dependency.js +83 -0
- package/src/atlaspack-v3/worker/compat/environment.js +92 -0
- package/src/atlaspack-v3/worker/compat/index.js +10 -0
- package/src/atlaspack-v3/worker/compat/mutable-asset.js +184 -0
- package/src/atlaspack-v3/worker/compat/plugin-config.js +94 -0
- package/src/atlaspack-v3/worker/compat/plugin-logger.js +47 -0
- package/src/atlaspack-v3/worker/compat/plugin-options.js +137 -0
- package/src/atlaspack-v3/worker/compat/plugin-tracer.js +11 -0
- package/src/atlaspack-v3/worker/compat/target.js +27 -0
- package/src/atlaspack-v3/worker/worker.js +148 -134
- package/src/dumpGraphToGraphViz.js +1 -1
- package/src/index.js +0 -10
- package/src/loadDotEnv.js +1 -1
- package/src/projectPath.js +12 -4
- package/src/public/Asset.js +1 -1
- package/src/public/Bundle.js +3 -3
- package/src/public/BundleGraph.js +20 -20
- package/src/public/Config.js +1 -1
- package/src/public/MutableBundleGraph.js +8 -8
- package/src/registerCoreWithSerializer.js +7 -4
- package/src/requests/AssetGraphRequest.js +10 -10
- package/src/requests/AssetGraphRequestRust.js +3 -3
- package/src/requests/AssetRequest.js +3 -3
- package/src/requests/AtlaspackConfigRequest.js +6 -4
- package/src/requests/BundleGraphRequest.js +6 -6
- package/src/requests/ConfigRequest.js +5 -6
- package/src/requests/DevDepRequest.js +8 -8
- package/src/requests/EntryRequest.js +2 -2
- package/src/requests/PathRequest.js +1 -1
- package/src/requests/TargetRequest.js +9 -8
- package/src/requests/ValidationRequest.js +2 -2
- package/src/requests/WriteBundleRequest.js +26 -20
- package/src/requests/WriteBundlesRequest.js +6 -6
- package/src/requests/asset-graph-diff.js +4 -4
- package/src/resolveOptions.js +3 -3
- package/src/serializerCore.browser.js +3 -2
- package/src/utils.js +2 -2
- package/src/worker.js +1 -1
- package/test/AtlaspackConfigRequest.test.js +1 -1
- package/test/BundleGraph.test.js +3 -3
- package/test/Dependency.test.js +28 -0
- package/test/PublicMutableBundleGraph.test.js +2 -2
- package/test/RequestTracker.test.js +7 -6
- package/test/SymbolPropagation.test.js +9 -9
- package/test/requests/ConfigRequest.test.js +3 -6
- package/test/utils.test.js +1 -1
- package/lib/atlaspack-v3/worker/compat.js +0 -57
- package/lib/buildCache.js +0 -18
- package/lib/serializer.js +0 -216
- package/lib/serializerCore.js +0 -16
- package/src/atlaspack-v3/worker/compat.js +0 -82
- package/src/buildCache.js +0 -15
- package/src/serializer.js +0 -255
- package/src/serializerCore.js +0 -5
- package/test/requests/WriteBundleRequest.test.js +0 -132
- package/test/serializer.test.js +0 -302
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.PluginLogger = void 0;
|
|
7
|
+
class PluginLogger {
|
|
8
|
+
verbose(diagnostic) {
|
|
9
|
+
// eslint-disable-next-line no-console
|
|
10
|
+
console.log(diagnostic);
|
|
11
|
+
}
|
|
12
|
+
info(diagnostic) {
|
|
13
|
+
// eslint-disable-next-line no-console
|
|
14
|
+
console.info(diagnostic);
|
|
15
|
+
}
|
|
16
|
+
log(diagnostic) {
|
|
17
|
+
// eslint-disable-next-line no-console
|
|
18
|
+
console.log(diagnostic);
|
|
19
|
+
}
|
|
20
|
+
warn(diagnostic) {
|
|
21
|
+
// eslint-disable-next-line no-console
|
|
22
|
+
console.warn(diagnostic);
|
|
23
|
+
}
|
|
24
|
+
error(input) {
|
|
25
|
+
// eslint-disable-next-line no-console
|
|
26
|
+
console.error(input);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
exports.PluginLogger = PluginLogger;
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.PluginOptions = void 0;
|
|
7
|
+
class PluginOptions {
|
|
8
|
+
#options;
|
|
9
|
+
get env() {
|
|
10
|
+
if (!('env' in this.#options)) {
|
|
11
|
+
return process.env;
|
|
12
|
+
// throw new Error('PluginOptions.env');
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
return this.#options.env;
|
|
16
|
+
}
|
|
17
|
+
get projectRoot() {
|
|
18
|
+
if (!('projectRoot' in this.#options)) {
|
|
19
|
+
throw new Error('PluginOptions.projectRoot');
|
|
20
|
+
}
|
|
21
|
+
return this.#options.projectRoot;
|
|
22
|
+
}
|
|
23
|
+
get packageManager() {
|
|
24
|
+
if (!('packageManager' in this.#options)) {
|
|
25
|
+
throw new Error('PluginOptions.packageManager');
|
|
26
|
+
}
|
|
27
|
+
return this.#options.packageManager;
|
|
28
|
+
}
|
|
29
|
+
get mode() {
|
|
30
|
+
if (!('mode' in this.#options)) {
|
|
31
|
+
throw new Error('PluginOptions.mode');
|
|
32
|
+
}
|
|
33
|
+
return this.#options.mode;
|
|
34
|
+
}
|
|
35
|
+
get parcelVersion() {
|
|
36
|
+
if (!('parcelVersion' in this.#options)) {
|
|
37
|
+
return 'UNKNOWN VERSION';
|
|
38
|
+
// throw new Error('PluginOptions.parcelVersion');
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
return this.#options.parcelVersion;
|
|
42
|
+
}
|
|
43
|
+
get hmrOptions() {
|
|
44
|
+
if (!('hmrOptions' in this.#options)) {
|
|
45
|
+
throw new Error('PluginOptions.hmrOptions');
|
|
46
|
+
}
|
|
47
|
+
return this.#options.hmrOptions;
|
|
48
|
+
}
|
|
49
|
+
get serveOptions() {
|
|
50
|
+
if (!('serveOptions' in this.#options)) {
|
|
51
|
+
throw new Error('PluginOptions.serveOptions');
|
|
52
|
+
}
|
|
53
|
+
return this.#options.serveOptions;
|
|
54
|
+
}
|
|
55
|
+
get shouldBuildLazily() {
|
|
56
|
+
if (!('shouldBuildLazily' in this.#options)) {
|
|
57
|
+
throw new Error('PluginOptions.shouldBuildLazily');
|
|
58
|
+
}
|
|
59
|
+
return this.#options.shouldBuildLazily;
|
|
60
|
+
}
|
|
61
|
+
get shouldAutoInstall() {
|
|
62
|
+
if (!('shouldAutoInstall' in this.#options)) {
|
|
63
|
+
throw new Error('PluginOptions.shouldAutoInstall');
|
|
64
|
+
}
|
|
65
|
+
return this.#options.shouldAutoInstall;
|
|
66
|
+
}
|
|
67
|
+
get logLevel() {
|
|
68
|
+
if (!('logLevel' in this.#options)) {
|
|
69
|
+
throw new Error('PluginOptions.logLevel');
|
|
70
|
+
}
|
|
71
|
+
return this.#options.logLevel;
|
|
72
|
+
}
|
|
73
|
+
get cacheDir() {
|
|
74
|
+
if (!('cacheDir' in this.#options)) {
|
|
75
|
+
throw new Error('PluginOptions.cacheDir');
|
|
76
|
+
}
|
|
77
|
+
return this.#options.cacheDir;
|
|
78
|
+
}
|
|
79
|
+
get inputFS() {
|
|
80
|
+
if (!('inputFS' in this.#options)) {
|
|
81
|
+
throw new Error('PluginOptions.inputFS');
|
|
82
|
+
}
|
|
83
|
+
return this.#options.inputFS;
|
|
84
|
+
}
|
|
85
|
+
get outputFS() {
|
|
86
|
+
if (!('outputFS' in this.#options)) {
|
|
87
|
+
throw new Error('PluginOptions.outputFS');
|
|
88
|
+
}
|
|
89
|
+
return this.#options.outputFS;
|
|
90
|
+
}
|
|
91
|
+
get instanceId() {
|
|
92
|
+
if (!('instanceId' in this.#options)) {
|
|
93
|
+
throw new Error('PluginOptions.instanceId');
|
|
94
|
+
}
|
|
95
|
+
return this.#options.instanceId;
|
|
96
|
+
}
|
|
97
|
+
get detailedReport() {
|
|
98
|
+
if (!('detailedReport' in this.#options)) {
|
|
99
|
+
throw new Error('PluginOptions.detailedReport');
|
|
100
|
+
}
|
|
101
|
+
return this.#options.detailedReport;
|
|
102
|
+
}
|
|
103
|
+
get featureFlags() {
|
|
104
|
+
if (!('featureFlags' in this.#options)) {
|
|
105
|
+
throw new Error('PluginOptions.featureFlags');
|
|
106
|
+
}
|
|
107
|
+
return this.#options.featureFlags;
|
|
108
|
+
}
|
|
109
|
+
constructor(options) {
|
|
110
|
+
this.#options = options;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
exports.PluginOptions = PluginOptions;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.PluginTracer = void 0;
|
|
7
|
+
class PluginTracer {
|
|
8
|
+
createMeasurement() {
|
|
9
|
+
throw new Error('PluginTracer.createMeasurement');
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
exports.PluginTracer = PluginTracer;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.Target = void 0;
|
|
7
|
+
class Target {
|
|
8
|
+
constructor(inner, env) {
|
|
9
|
+
this.distDir = inner.distDir;
|
|
10
|
+
this.distEntry = inner.distEntry;
|
|
11
|
+
this.name = inner.name;
|
|
12
|
+
this.publicUrl = inner.publicUrl;
|
|
13
|
+
this.loc = inner.loc;
|
|
14
|
+
this.env = env;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
exports.Target = Target;
|
|
@@ -48,16 +48,17 @@ function _module() {
|
|
|
48
48
|
}
|
|
49
49
|
var _compat = require("./compat");
|
|
50
50
|
var _jsCallable = require("../jsCallable");
|
|
51
|
-
var _Environment = _interopRequireDefault(require("../../public/Environment"));
|
|
52
51
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
53
52
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
54
53
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
55
54
|
const CONFIG = Symbol.for('parcel-plugin-config');
|
|
56
55
|
class AtlaspackWorker {
|
|
57
56
|
#resolvers;
|
|
57
|
+
#transformers;
|
|
58
58
|
#fs;
|
|
59
59
|
constructor() {
|
|
60
60
|
this.#resolvers = new Map();
|
|
61
|
+
this.#transformers = new Map();
|
|
61
62
|
this.#fs = new (_fs().NodeFS)();
|
|
62
63
|
}
|
|
63
64
|
loadPlugin = (0, _jsCallable.jsCallable)(async ({
|
|
@@ -83,11 +84,16 @@ class AtlaspackWorker {
|
|
|
83
84
|
resolver: instance
|
|
84
85
|
});
|
|
85
86
|
break;
|
|
87
|
+
case 'transformer':
|
|
88
|
+
this.#transformers.set(specifier, {
|
|
89
|
+
transformer: instance
|
|
90
|
+
});
|
|
91
|
+
break;
|
|
86
92
|
}
|
|
87
93
|
});
|
|
88
94
|
runResolverResolve = (0, _jsCallable.jsCallable)(async ({
|
|
89
95
|
key,
|
|
90
|
-
dependency,
|
|
96
|
+
dependency: napiDependency,
|
|
91
97
|
specifier,
|
|
92
98
|
pipeline,
|
|
93
99
|
projectRoot
|
|
@@ -101,80 +107,27 @@ class AtlaspackWorker {
|
|
|
101
107
|
packageManager = new (_packageManager().NodePackageManager)(this.#fs, projectRoot);
|
|
102
108
|
state.packageManager = packageManager;
|
|
103
109
|
}
|
|
110
|
+
const env = new _compat.Environment(napiDependency.env);
|
|
111
|
+
const dependency = new _compat.Dependency(napiDependency, env);
|
|
104
112
|
const defaultOptions = {
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
},
|
|
109
|
-
tracer: {
|
|
110
|
-
enabled: false,
|
|
111
|
-
createMeasurement: () => null
|
|
112
|
-
},
|
|
113
|
-
options: {
|
|
114
|
-
get mode() {
|
|
115
|
-
throw new Error('Resolver.resolve.options.mode');
|
|
116
|
-
},
|
|
117
|
-
parcelVersion: 'TODO',
|
|
113
|
+
logger: new _compat.PluginLogger(),
|
|
114
|
+
tracer: new _compat.PluginTracer(),
|
|
115
|
+
options: new _compat.PluginOptions({
|
|
118
116
|
packageManager,
|
|
119
|
-
env: process.env,
|
|
120
|
-
get hmrOptions() {
|
|
121
|
-
throw new Error('Resolver.resolve.options.hmrOptions');
|
|
122
|
-
},
|
|
123
|
-
get serveOptions() {
|
|
124
|
-
throw new Error('Resolver.resolve.options.serveOptions');
|
|
125
|
-
},
|
|
126
|
-
get shouldBuildLazily() {
|
|
127
|
-
throw new Error('Resolver.resolve.options.shouldBuildLazily');
|
|
128
|
-
},
|
|
129
117
|
shouldAutoInstall: false,
|
|
130
|
-
get logLevel() {
|
|
131
|
-
throw new Error('Resolver.resolve.options.logLevel');
|
|
132
|
-
},
|
|
133
118
|
projectRoot,
|
|
134
|
-
get cacheDir() {
|
|
135
|
-
throw new Error('Resolver.resolve.options.cacheDir');
|
|
136
|
-
},
|
|
137
119
|
inputFS: this.#fs,
|
|
138
|
-
outputFS: this.#fs
|
|
139
|
-
|
|
140
|
-
throw new Error('Resolver.resolve.options.instanceId');
|
|
141
|
-
},
|
|
142
|
-
get detailedReport() {
|
|
143
|
-
throw new Error('Resolver.resolve.options.detailedReport');
|
|
144
|
-
},
|
|
145
|
-
get featureFlags() {
|
|
146
|
-
throw new Error('Resolver.resolve.options.featureFlags');
|
|
147
|
-
}
|
|
148
|
-
}
|
|
120
|
+
outputFS: this.#fs
|
|
121
|
+
})
|
|
149
122
|
};
|
|
150
123
|
if (!('config' in state)) {
|
|
151
124
|
var _state$resolver$loadC, _state$resolver;
|
|
152
125
|
state.config = await ((_state$resolver$loadC = (_state$resolver = state.resolver).loadConfig) === null || _state$resolver$loadC === void 0 ? void 0 : _state$resolver$loadC.call(_state$resolver, {
|
|
153
|
-
config: {
|
|
126
|
+
config: new _compat.PluginConfig({
|
|
127
|
+
env,
|
|
154
128
|
isSource: true,
|
|
155
|
-
searchPath: ''
|
|
156
|
-
|
|
157
|
-
env: new _Environment.default(dependency.env, {
|
|
158
|
-
projectRoot,
|
|
159
|
-
hmrOptions: undefined
|
|
160
|
-
}),
|
|
161
|
-
invalidateOnFileChange() {},
|
|
162
|
-
invalidateOnFileCreate() {},
|
|
163
|
-
invalidateOnEnvChange() {},
|
|
164
|
-
invalidateOnStartup() {},
|
|
165
|
-
invalidateOnBuild() {},
|
|
166
|
-
addDevDependency() {},
|
|
167
|
-
setCacheKey() {},
|
|
168
|
-
getConfig() {
|
|
169
|
-
throw new Error('Resolver.loadConfig.config.getConfig');
|
|
170
|
-
},
|
|
171
|
-
getConfigFrom() {
|
|
172
|
-
throw new Error('Resolver.loadConfig.config.getConfigFrom');
|
|
173
|
-
},
|
|
174
|
-
getPackage() {
|
|
175
|
-
throw new Error('Resolver.loadConfig.config.getPackage');
|
|
176
|
-
}
|
|
177
|
-
},
|
|
129
|
+
searchPath: ''
|
|
130
|
+
}),
|
|
178
131
|
...defaultOptions
|
|
179
132
|
}));
|
|
180
133
|
}
|
|
@@ -203,74 +156,109 @@ class AtlaspackWorker {
|
|
|
203
156
|
code: result.code || undefined,
|
|
204
157
|
meta: result.meta || undefined,
|
|
205
158
|
pipeline: result.pipeline || undefined,
|
|
206
|
-
priority:
|
|
159
|
+
priority: _compat.dependencyPriorityMap.intoNullable(result.priority),
|
|
207
160
|
query: result.query && result.query.toString()
|
|
208
161
|
}
|
|
209
162
|
};
|
|
210
163
|
});
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
164
|
+
runTransformerTransform = (0, _jsCallable.jsCallable)(async ({
|
|
165
|
+
key,
|
|
166
|
+
env: napiEnv,
|
|
167
|
+
projectRoot,
|
|
168
|
+
asset: innerAsset
|
|
169
|
+
}) => {
|
|
170
|
+
var _transformer$loadConf;
|
|
171
|
+
const state = this.#transformers.get(key);
|
|
172
|
+
if (!state) {
|
|
173
|
+
throw new Error(`Transformer not found: ${key}`);
|
|
174
|
+
}
|
|
175
|
+
let packageManager = state.packageManager;
|
|
176
|
+
if (!packageManager) {
|
|
177
|
+
packageManager = new (_packageManager().NodePackageManager)(this.#fs, projectRoot);
|
|
178
|
+
state.packageManager = packageManager;
|
|
179
|
+
}
|
|
180
|
+
const transformer = state.transformer;
|
|
181
|
+
const env = new _compat.Environment(napiEnv);
|
|
182
|
+
const mutableAsset = new _compat.MutableAsset(innerAsset, this.#fs, env);
|
|
183
|
+
const defaultOptions = {
|
|
184
|
+
logger: new _compat.PluginLogger(),
|
|
185
|
+
tracer: new _compat.PluginTracer(),
|
|
186
|
+
options: new _compat.PluginOptions({
|
|
187
|
+
packageManager,
|
|
188
|
+
shouldAutoInstall: false,
|
|
189
|
+
projectRoot,
|
|
190
|
+
inputFS: this.#fs,
|
|
191
|
+
outputFS: this.#fs
|
|
192
|
+
})
|
|
193
|
+
};
|
|
194
|
+
const config = await ((_transformer$loadConf = transformer.loadConfig) === null || _transformer$loadConf === void 0 ? void 0 : _transformer$loadConf.call(transformer, {
|
|
195
|
+
config: new _compat.PluginConfig({
|
|
196
|
+
env,
|
|
197
|
+
isSource: true,
|
|
198
|
+
searchPath: ''
|
|
199
|
+
}),
|
|
200
|
+
...defaultOptions
|
|
201
|
+
}));
|
|
202
|
+
if (transformer.parse) {
|
|
203
|
+
const ast = await transformer.parse({
|
|
204
|
+
asset: mutableAsset,
|
|
205
|
+
config,
|
|
206
|
+
get resolve() {
|
|
207
|
+
throw new Error('Transformer.parse.resolve()');
|
|
208
|
+
},
|
|
209
|
+
...defaultOptions
|
|
210
|
+
});
|
|
211
|
+
if (ast) {
|
|
212
|
+
mutableAsset.setAST(ast);
|
|
234
213
|
}
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
214
|
+
}
|
|
215
|
+
const result = await state.transformer.transform({
|
|
216
|
+
asset: mutableAsset,
|
|
217
|
+
config,
|
|
218
|
+
get resolve() {
|
|
219
|
+
throw new Error('Transformer.transform.resolve()');
|
|
220
|
+
},
|
|
221
|
+
...defaultOptions
|
|
222
|
+
});
|
|
223
|
+
if (transformer.generate) {
|
|
224
|
+
const ast = await mutableAsset.getAST();
|
|
225
|
+
if (!ast) {
|
|
226
|
+
throw new Error('Transformer.generate.ast');
|
|
227
|
+
}
|
|
228
|
+
// $FlowFixMe "Cannot call `transformer.generate` because undefined [1] is not a function." 🤷♀️
|
|
229
|
+
const output = await transformer.generate({
|
|
230
|
+
asset: mutableAsset,
|
|
231
|
+
ast,
|
|
232
|
+
...defaultOptions
|
|
242
233
|
});
|
|
243
|
-
if (
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
ast: assetCompat.getAST()
|
|
250
|
-
});
|
|
251
|
-
// $FlowFixMe
|
|
252
|
-
assetCompat.setCode(output.content);
|
|
234
|
+
if (typeof output.content === 'string') {
|
|
235
|
+
mutableAsset.setCode(output.content);
|
|
236
|
+
} else if (output.content instanceof Buffer) {
|
|
237
|
+
mutableAsset.setBuffer(output.content);
|
|
238
|
+
} else {
|
|
239
|
+
mutableAsset.setStream(output.content);
|
|
253
240
|
}
|
|
254
|
-
(0, _assert().default)(result.length === 1, '[V3] Unimplemented: Multiple asset return from Node transformer');
|
|
255
|
-
(0, _assert().default)(result[0] === assetCompat, '[V3] Unimplemented: New asset returned from Node transformer');
|
|
256
|
-
return {
|
|
257
|
-
asset,
|
|
258
|
-
dependencies: assetCompat._dependencies
|
|
259
|
-
};
|
|
260
|
-
} catch (e) {
|
|
261
|
-
// TODO: Improve error logging from JS plugins. Without this you currently
|
|
262
|
-
// only see the error message, no stack trace.
|
|
263
|
-
// eslint-disable-next-line no-console
|
|
264
|
-
console.error(e);
|
|
265
|
-
throw e;
|
|
266
241
|
}
|
|
267
|
-
|
|
242
|
+
(0, _assert().default)(result.length === 1, '[V3] Unimplemented: Multiple asset return from Node transformer');
|
|
243
|
+
(0, _assert().default)(result[0] === mutableAsset, '[V3] Unimplemented: New asset returned from Node transformer');
|
|
244
|
+
return {
|
|
245
|
+
asset: {
|
|
246
|
+
id: mutableAsset.id,
|
|
247
|
+
bundleBehavior: _compat.bundleBehaviorMap.intoNullable(mutableAsset.bundleBehavior),
|
|
248
|
+
filePath: mutableAsset.filePath,
|
|
249
|
+
type: mutableAsset.type,
|
|
250
|
+
code: Array.from(await mutableAsset.getBuffer()),
|
|
251
|
+
meta: mutableAsset.meta,
|
|
252
|
+
pipeline: mutableAsset.pipeline,
|
|
253
|
+
query: mutableAsset.query.toString(),
|
|
254
|
+
symbols: mutableAsset.symbols.intoNapi(),
|
|
255
|
+
uniqueKey: mutableAsset.uniqueKey,
|
|
256
|
+
sideEffects: mutableAsset.sideEffects,
|
|
257
|
+
isBundleSplittable: mutableAsset.isBundleSplittable,
|
|
258
|
+
isSource: mutableAsset.isSource
|
|
259
|
+
}
|
|
260
|
+
};
|
|
261
|
+
});
|
|
268
262
|
}
|
|
269
263
|
exports.AtlaspackWorker = AtlaspackWorker;
|
|
270
|
-
napi().registerWorker(_worker_threads().workerData.tx_worker, new AtlaspackWorker());
|
|
271
|
-
const PriorityMap = {
|
|
272
|
-
sync: 0,
|
|
273
|
-
parallel: 1,
|
|
274
|
-
lazy: 2,
|
|
275
|
-
conditional: 3
|
|
276
|
-
};
|
|
264
|
+
napi().registerWorker(_worker_threads().workerData.tx_worker, new AtlaspackWorker());
|
package/lib/index.js
CHANGED
|
@@ -4,12 +4,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
var _exportNames = {
|
|
7
|
-
registerSerializableClass: true,
|
|
8
|
-
unregisterSerializableClass: true,
|
|
9
|
-
prepareForSerialization: true,
|
|
10
|
-
restoreDeserializedObject: true,
|
|
11
|
-
serialize: true,
|
|
12
|
-
deserialize: true,
|
|
13
7
|
Atlaspack: true,
|
|
14
8
|
Parcel: true,
|
|
15
9
|
BuildError: true,
|
|
@@ -59,43 +53,6 @@ Object.defineProperty(exports, "default", {
|
|
|
59
53
|
return _Atlaspack.default;
|
|
60
54
|
}
|
|
61
55
|
});
|
|
62
|
-
Object.defineProperty(exports, "deserialize", {
|
|
63
|
-
enumerable: true,
|
|
64
|
-
get: function () {
|
|
65
|
-
return _serializer.deserialize;
|
|
66
|
-
}
|
|
67
|
-
});
|
|
68
|
-
Object.defineProperty(exports, "prepareForSerialization", {
|
|
69
|
-
enumerable: true,
|
|
70
|
-
get: function () {
|
|
71
|
-
return _serializer.prepareForSerialization;
|
|
72
|
-
}
|
|
73
|
-
});
|
|
74
|
-
Object.defineProperty(exports, "registerSerializableClass", {
|
|
75
|
-
enumerable: true,
|
|
76
|
-
get: function () {
|
|
77
|
-
return _serializer.registerSerializableClass;
|
|
78
|
-
}
|
|
79
|
-
});
|
|
80
|
-
Object.defineProperty(exports, "restoreDeserializedObject", {
|
|
81
|
-
enumerable: true,
|
|
82
|
-
get: function () {
|
|
83
|
-
return _serializer.restoreDeserializedObject;
|
|
84
|
-
}
|
|
85
|
-
});
|
|
86
|
-
Object.defineProperty(exports, "serialize", {
|
|
87
|
-
enumerable: true,
|
|
88
|
-
get: function () {
|
|
89
|
-
return _serializer.serialize;
|
|
90
|
-
}
|
|
91
|
-
});
|
|
92
|
-
Object.defineProperty(exports, "unregisterSerializableClass", {
|
|
93
|
-
enumerable: true,
|
|
94
|
-
get: function () {
|
|
95
|
-
return _serializer.unregisterSerializableClass;
|
|
96
|
-
}
|
|
97
|
-
});
|
|
98
|
-
var _serializer = require("./serializer");
|
|
99
56
|
var _Atlaspack = _interopRequireWildcard(require("./Atlaspack"));
|
|
100
57
|
var _atlaspackV = require("./atlaspack-v3");
|
|
101
58
|
Object.keys(_atlaspackV).forEach(function (key) {
|
package/lib/projectPath.js
CHANGED
|
@@ -27,14 +27,22 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
27
27
|
* A path that's relative to the project root.
|
|
28
28
|
*/
|
|
29
29
|
function toProjectPath_(projectRoot, p) {
|
|
30
|
+
// If the file path is not provided, then treat it as though it is already from the project root
|
|
30
31
|
if (p == null) {
|
|
31
32
|
return p;
|
|
32
33
|
}
|
|
33
34
|
|
|
34
|
-
// If the file is
|
|
35
|
-
//
|
|
36
|
-
//
|
|
37
|
-
//
|
|
35
|
+
// If the file path is already relative and it does not begin with . then treat the path as if it
|
|
36
|
+
// is already from the project root. This prevents relative paths from being processed twice,
|
|
37
|
+
// most often within `toInternalSourceLocation` when handling loc types from symbols and asset
|
|
38
|
+
// dependencies.
|
|
39
|
+
if (p[0] !== '.' && !_path().default.isAbsolute(p)) {
|
|
40
|
+
return p;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
// If the file is outside the project root, store an absolute path rather than a relative one.
|
|
44
|
+
// This way if the project root is moved, the file references still work. Accessing files outside
|
|
45
|
+
// the project root is not portable anyway.
|
|
38
46
|
let relative = (0, _utils().relativePath)(projectRoot, p, false);
|
|
39
47
|
if (relative.startsWith('..')) {
|
|
40
48
|
return process.platform === 'win32' ? (0, _utils().normalizeSeparators)(p) : p;
|
|
@@ -4,6 +4,13 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.registerCoreWithSerializer = registerCoreWithSerializer;
|
|
7
|
+
function _buildCache() {
|
|
8
|
+
const data = require("@atlaspack/build-cache");
|
|
9
|
+
_buildCache = function () {
|
|
10
|
+
return data;
|
|
11
|
+
};
|
|
12
|
+
return data;
|
|
13
|
+
}
|
|
7
14
|
function _graph() {
|
|
8
15
|
const data = require("@atlaspack/graph");
|
|
9
16
|
_graph = function () {
|
|
@@ -11,13 +18,12 @@ function _graph() {
|
|
|
11
18
|
};
|
|
12
19
|
return data;
|
|
13
20
|
}
|
|
14
|
-
var
|
|
21
|
+
var _package = _interopRequireDefault(require("../package.json"));
|
|
22
|
+
var _AtlaspackConfig = _interopRequireDefault(require("./AtlaspackConfig"));
|
|
15
23
|
var _AssetGraph = _interopRequireDefault(require("./AssetGraph"));
|
|
16
24
|
var _BundleGraph = _interopRequireDefault(require("./BundleGraph"));
|
|
17
|
-
var _AtlaspackConfig = _interopRequireDefault(require("./AtlaspackConfig"));
|
|
18
|
-
var _RequestTracker = require("./RequestTracker");
|
|
19
25
|
var _Config = _interopRequireDefault(require("./public/Config"));
|
|
20
|
-
var
|
|
26
|
+
var _RequestTracker = require("./RequestTracker");
|
|
21
27
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
22
28
|
let coreRegistered;
|
|
23
29
|
function registerCoreWithSerializer() {
|
|
@@ -39,7 +45,7 @@ function registerCoreWithSerializer() {
|
|
|
39
45
|
RequestGraph: _RequestTracker.RequestGraph
|
|
40
46
|
// $FlowFixMe[unclear-type]
|
|
41
47
|
})) {
|
|
42
|
-
(0,
|
|
48
|
+
(0, _buildCache().registerSerializableClass)(packageVersion + ':' + name, ctor);
|
|
43
49
|
}
|
|
44
50
|
coreRegistered = true;
|
|
45
51
|
}
|
|
@@ -56,7 +56,13 @@ function _assert() {
|
|
|
56
56
|
var _AtlaspackConfig = _interopRequireDefault(require("../AtlaspackConfig.schema"));
|
|
57
57
|
var _utils2 = require("../utils");
|
|
58
58
|
var _AtlaspackConfig2 = _interopRequireDefault(require("../AtlaspackConfig"));
|
|
59
|
-
|
|
59
|
+
function _buildCache() {
|
|
60
|
+
const data = require("@atlaspack/build-cache");
|
|
61
|
+
_buildCache = function () {
|
|
62
|
+
return data;
|
|
63
|
+
};
|
|
64
|
+
return data;
|
|
65
|
+
}
|
|
60
66
|
var _projectPath = require("../projectPath");
|
|
61
67
|
var _RequestTracker = require("../RequestTracker");
|
|
62
68
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
@@ -103,7 +109,7 @@ function createAtlaspackConfigRequest() {
|
|
|
103
109
|
input: null
|
|
104
110
|
};
|
|
105
111
|
}
|
|
106
|
-
const atlaspackConfigCache = (0, _buildCache.createBuildCache)();
|
|
112
|
+
const atlaspackConfigCache = (0, _buildCache().createBuildCache)();
|
|
107
113
|
function getCachedAtlaspackConfig(result, options) {
|
|
108
114
|
let {
|
|
109
115
|
config: processedConfig,
|
|
@@ -15,7 +15,13 @@ function _utils() {
|
|
|
15
15
|
};
|
|
16
16
|
return data;
|
|
17
17
|
}
|
|
18
|
-
|
|
18
|
+
function _buildCache() {
|
|
19
|
+
const data = require("@atlaspack/build-cache");
|
|
20
|
+
_buildCache = function () {
|
|
21
|
+
return data;
|
|
22
|
+
};
|
|
23
|
+
return data;
|
|
24
|
+
}
|
|
19
25
|
function _logger() {
|
|
20
26
|
const data = require("@atlaspack/logger");
|
|
21
27
|
_logger = function () {
|
|
@@ -50,7 +56,6 @@ function _profiler() {
|
|
|
50
56
|
}
|
|
51
57
|
var _RequestTracker = require("../RequestTracker");
|
|
52
58
|
var _projectPath = require("../projectPath");
|
|
53
|
-
var _buildCache = require("../buildCache");
|
|
54
59
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
55
60
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
56
61
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
@@ -81,7 +86,7 @@ async function loadPluginConfig(loadedPlugin, config, options) {
|
|
|
81
86
|
});
|
|
82
87
|
}
|
|
83
88
|
}
|
|
84
|
-
const configKeyCache = (0, _buildCache.createBuildCache)();
|
|
89
|
+
const configKeyCache = (0, _buildCache().createBuildCache)();
|
|
85
90
|
async function getConfigKeyContentHash(filePath, configKey, options) {
|
|
86
91
|
let cacheKey = `${(0, _projectPath.fromProjectPathRelative)(filePath)}:${configKey}`;
|
|
87
92
|
let cachedValue = configKeyCache.get(cacheKey);
|
|
@@ -166,7 +171,7 @@ async function getConfigHash(config, pluginName, options) {
|
|
|
166
171
|
})), options));
|
|
167
172
|
} else if (config.result != null) {
|
|
168
173
|
try {
|
|
169
|
-
hash.writeBuffer((0,
|
|
174
|
+
hash.writeBuffer((0, _buildCache().serializeRaw)(config.result));
|
|
170
175
|
} catch (err) {
|
|
171
176
|
throw new (_diagnostic().default)({
|
|
172
177
|
diagnostic: {
|