@dimina-kit/compiler 0.0.1-dev.20260707070110 → 0.0.1-dev.20260707110006
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/package.json +1 -1
- package/src/compile-core.js +2 -2
- package/src/pool.js +2 -2
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dimina-kit/compiler",
|
|
3
|
-
"version": "0.0.1-dev.
|
|
3
|
+
"version": "0.0.1-dev.20260707110006",
|
|
4
4
|
"description": "dmcc compiler bundles (browser + node) that drive @dimina/compiler against a caller-injected node:fs replacement (no bundled fs)",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
package/src/compile-core.js
CHANGED
|
@@ -476,8 +476,8 @@ async function runCompile({ fs, workPath = '/work' } = {}) {
|
|
|
476
476
|
const ctx = await setupCompile({ fs, workPath })
|
|
477
477
|
const { storeInfo: bundle, pages, appId, name, targetPath } = ctx
|
|
478
478
|
// Same order as the original single pass. Stages are independent (no product
|
|
479
|
-
// read-back), so the order is not load-bearing —
|
|
480
|
-
// in separate worker realms over a shared fs.
|
|
479
|
+
// read-back), so the order is not load-bearing — the worker pool (pool.js) runs
|
|
480
|
+
// them concurrently in separate worker realms over a shared fs.
|
|
481
481
|
await compileStage({ stage: 'logic', pages, storeInfo: bundle, fs })
|
|
482
482
|
await compileStage({ stage: 'view', pages, storeInfo: bundle, fs })
|
|
483
483
|
await compileStage({ stage: 'style', pages, storeInfo: bundle, fs })
|
package/src/pool.js
CHANGED
|
@@ -162,7 +162,7 @@ export function createCompilerPool(options = {}) {
|
|
|
162
162
|
async function runAttempt(files, workPath) {
|
|
163
163
|
await settleAll(workers.map(ensureWarm))
|
|
164
164
|
|
|
165
|
-
//
|
|
165
|
+
// Setup step — one worker runs setup ONCE: it allocates the scope-hash ids
|
|
166
166
|
// (page + component data-v-XXXXX) and builds miniprogram_npm/app-config.json.
|
|
167
167
|
// Broadcasting this single bundle to every stage is REQUIRED for correctness:
|
|
168
168
|
// each stage runs in its own realm, and if each ran its own setup it would roll
|
|
@@ -173,7 +173,7 @@ export function createCompilerPool(options = {}) {
|
|
|
173
173
|
const s = await requestChecked(workers[0], { type: 'setup', files, workPath, wantHeartbeat: true }, 'setup', sendTimeoutMs)
|
|
174
174
|
const { bundle, scaffold } = s
|
|
175
175
|
|
|
176
|
-
//
|
|
176
|
+
// Compile step — every stage compiles in parallel against the SHARED bundle. The
|
|
177
177
|
// non-stage scaffold (app-config.json + npm, produced once) seeds the union.
|
|
178
178
|
const parts = await settleAll(workers.map((x) =>
|
|
179
179
|
requestChecked(x, { type: 'compile-subset', files, workPath, stages: [x.stage], bundle, wantHeartbeat: true }, 'compile-subset', sendTimeoutMs)))
|