deepline 0.1.53 → 0.1.55
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/cli/index.js +214 -67
- package/dist/cli/index.mjs +222 -68
- package/dist/index.js +2 -2
- package/dist/index.mjs +2 -2
- package/dist/repo/apps/play-runner-workers/src/coordinator-entry.ts +17 -1
- package/dist/repo/sdk/src/plays/bundle-play-file.ts +27 -18
- package/dist/repo/sdk/src/release.ts +2 -2
- package/dist/repo/shared_libs/play-runtime/profiles.ts +26 -54
- package/dist/repo/shared_libs/play-runtime/providers.ts +71 -0
- package/dist/repo/shared_libs/play-runtime/scheduler-backend.ts +9 -1
- package/dist/repo/shared_libs/plays/bundling/index.ts +225 -69
- package/package.json +1 -1
package/dist/cli/index.js
CHANGED
|
@@ -220,10 +220,10 @@ function resolveConfig(options) {
|
|
|
220
220
|
|
|
221
221
|
// src/release.ts
|
|
222
222
|
var SDK_RELEASE = {
|
|
223
|
-
version: "0.1.
|
|
223
|
+
version: "0.1.55",
|
|
224
224
|
apiContract: "2026-05-run-response-package",
|
|
225
225
|
supportPolicy: {
|
|
226
|
-
latest: "0.1.
|
|
226
|
+
latest: "0.1.55",
|
|
227
227
|
minimumSupported: "0.1.53",
|
|
228
228
|
deprecatedBelow: "0.1.53"
|
|
229
229
|
}
|
|
@@ -4085,11 +4085,23 @@ var PLAY_ARTIFACT_CACHE_DIR = (0, import_node_path7.join)(
|
|
|
4085
4085
|
`deepline-play-artifacts-v${PLAY_BUNDLE_CACHE_VERSION}`
|
|
4086
4086
|
);
|
|
4087
4087
|
var PLAY_PROXY_NAMESPACE = "deepline-play-runtime-ref";
|
|
4088
|
-
var SOURCE_EXTENSIONS = [
|
|
4088
|
+
var SOURCE_EXTENSIONS = [
|
|
4089
|
+
".ts",
|
|
4090
|
+
".tsx",
|
|
4091
|
+
".mts",
|
|
4092
|
+
".cts",
|
|
4093
|
+
".js",
|
|
4094
|
+
".jsx",
|
|
4095
|
+
".mjs",
|
|
4096
|
+
".cjs",
|
|
4097
|
+
".json"
|
|
4098
|
+
];
|
|
4089
4099
|
var WORKERS_PLAY_ENTRY_VIRTUAL = "deepline-play-entry";
|
|
4090
4100
|
var PLAY_SOURCE_FILE_PATTERN = /\.play\.(?:[cm]?[jt]sx?)$/i;
|
|
4091
4101
|
var NODE_BUILTIN_SET = new Set(
|
|
4092
|
-
import_node_module.builtinModules.flatMap(
|
|
4102
|
+
import_node_module.builtinModules.flatMap(
|
|
4103
|
+
(name) => name.startsWith("node:") ? [name, name.slice(5)] : [name, `node:${name}`]
|
|
4104
|
+
)
|
|
4093
4105
|
);
|
|
4094
4106
|
function assertValidExportName(exportName) {
|
|
4095
4107
|
if (exportName === "default") return;
|
|
@@ -4169,15 +4181,27 @@ function findSourceImportReferences(sourceCode) {
|
|
|
4169
4181
|
};
|
|
4170
4182
|
const staticImportPattern = /\b(?:import|export)\s+(?!type\b)(?:[\s\S]*?\s+from\s*)?(['"])([^'"\n]+)\1/g;
|
|
4171
4183
|
for (const match of source.matchAll(staticImportPattern)) {
|
|
4172
|
-
addReference(
|
|
4184
|
+
addReference(
|
|
4185
|
+
match[2],
|
|
4186
|
+
match.index + match[0].lastIndexOf(match[1]),
|
|
4187
|
+
"static"
|
|
4188
|
+
);
|
|
4173
4189
|
}
|
|
4174
4190
|
const dynamicImportPattern = /\bimport\s*\(\s*(['"])([^'"\n]+)\1/g;
|
|
4175
4191
|
for (const match of source.matchAll(dynamicImportPattern)) {
|
|
4176
|
-
addReference(
|
|
4192
|
+
addReference(
|
|
4193
|
+
match[2],
|
|
4194
|
+
match.index + match[0].lastIndexOf(match[1]),
|
|
4195
|
+
"dynamic-import"
|
|
4196
|
+
);
|
|
4177
4197
|
}
|
|
4178
4198
|
const requirePattern = /\brequire\s*\(\s*(['"])([^'"\n]+)\1/g;
|
|
4179
4199
|
for (const match of source.matchAll(requirePattern)) {
|
|
4180
|
-
addReference(
|
|
4200
|
+
addReference(
|
|
4201
|
+
match[2],
|
|
4202
|
+
match.index + match[0].lastIndexOf(match[1]),
|
|
4203
|
+
"require"
|
|
4204
|
+
);
|
|
4181
4205
|
}
|
|
4182
4206
|
const literalDynamicImportIndexes = new Set(
|
|
4183
4207
|
[...source.matchAll(dynamicImportPattern)].map((match) => match.index)
|
|
@@ -4210,7 +4234,9 @@ function unquoteStringLiteral(literal) {
|
|
|
4210
4234
|
return null;
|
|
4211
4235
|
}
|
|
4212
4236
|
try {
|
|
4213
|
-
return JSON.parse(
|
|
4237
|
+
return JSON.parse(
|
|
4238
|
+
quote === '"' ? trimmed : `"${trimmed.slice(1, -1).replace(/"/g, '\\"')}"`
|
|
4239
|
+
);
|
|
4214
4240
|
} catch {
|
|
4215
4241
|
return trimmed.slice(1, -1);
|
|
4216
4242
|
}
|
|
@@ -4262,7 +4288,9 @@ function extractDefinedPlayName(sourceCode) {
|
|
|
4262
4288
|
const closeBrace = findMatchingBrace(source, argIndex);
|
|
4263
4289
|
if (closeBrace < 0) continue;
|
|
4264
4290
|
const objectSource = source.slice(argIndex + 1, closeBrace);
|
|
4265
|
-
const idMatch = objectSource.match(
|
|
4291
|
+
const idMatch = objectSource.match(
|
|
4292
|
+
/(?:^|[,{\s])(?:id|['"]id['"])\s*:\s*(['"])([\s\S]*?)\1/
|
|
4293
|
+
);
|
|
4266
4294
|
if (idMatch?.[2]?.trim()) {
|
|
4267
4295
|
return idMatch[2].trim();
|
|
4268
4296
|
}
|
|
@@ -4371,7 +4399,12 @@ function workersNamedPlayEntryAliasPlugin(playFilePath, exportName) {
|
|
|
4371
4399
|
};
|
|
4372
4400
|
}
|
|
4373
4401
|
function workersNodeBuiltinStubPlugin() {
|
|
4374
|
-
const UNSUPPORTED = /* @__PURE__ */ new Set([
|
|
4402
|
+
const UNSUPPORTED = /* @__PURE__ */ new Set([
|
|
4403
|
+
"node:fs",
|
|
4404
|
+
"node:fs/promises",
|
|
4405
|
+
"node:os",
|
|
4406
|
+
"node:child_process"
|
|
4407
|
+
]);
|
|
4375
4408
|
return {
|
|
4376
4409
|
name: "deepline-workers-node-builtin-stub",
|
|
4377
4410
|
setup(buildContext) {
|
|
@@ -4420,16 +4453,13 @@ function zodNonEnglishLocaleStubPlugin() {
|
|
|
4420
4453
|
}
|
|
4421
4454
|
return { path: args.path, namespace: NAMESPACE };
|
|
4422
4455
|
});
|
|
4423
|
-
buildContext.onLoad(
|
|
4424
|
-
|
|
4425
|
-
|
|
4426
|
-
|
|
4427
|
-
|
|
4428
|
-
|
|
4429
|
-
|
|
4430
|
-
loader: "js"
|
|
4431
|
-
})
|
|
4432
|
-
);
|
|
4456
|
+
buildContext.onLoad({ filter: /.*/, namespace: NAMESPACE }, () => ({
|
|
4457
|
+
// zod locales export a default object literal. Empty object is
|
|
4458
|
+
// structurally compatible — accessing any locale key returns
|
|
4459
|
+
// undefined and zod falls back to its built-in English.
|
|
4460
|
+
contents: "export default {};",
|
|
4461
|
+
loader: "js"
|
|
4462
|
+
}));
|
|
4433
4463
|
}
|
|
4434
4464
|
};
|
|
4435
4465
|
}
|
|
@@ -4500,7 +4530,10 @@ function importedPlayProxyPlugin(importedPlayDependencies) {
|
|
|
4500
4530
|
return null;
|
|
4501
4531
|
}
|
|
4502
4532
|
const dependenciesByPath = new Map(
|
|
4503
|
-
importedPlayDependencies.map((dependency) => [
|
|
4533
|
+
importedPlayDependencies.map((dependency) => [
|
|
4534
|
+
dependency.filePath,
|
|
4535
|
+
dependency
|
|
4536
|
+
])
|
|
4504
4537
|
);
|
|
4505
4538
|
return {
|
|
4506
4539
|
name: "deepline-imported-play-proxy",
|
|
@@ -4520,17 +4553,20 @@ function importedPlayProxyPlugin(importedPlayDependencies) {
|
|
|
4520
4553
|
pluginData: dependency
|
|
4521
4554
|
};
|
|
4522
4555
|
});
|
|
4523
|
-
buildContext.onLoad(
|
|
4524
|
-
|
|
4525
|
-
|
|
4526
|
-
|
|
4556
|
+
buildContext.onLoad(
|
|
4557
|
+
{ filter: /.*/, namespace: PLAY_PROXY_NAMESPACE },
|
|
4558
|
+
async (args) => {
|
|
4559
|
+
const dependency = args.pluginData ?? dependenciesByPath.get(args.path);
|
|
4560
|
+
if (!dependency) {
|
|
4561
|
+
return null;
|
|
4562
|
+
}
|
|
4563
|
+
return {
|
|
4564
|
+
contents: buildImportedPlayProxyModule(dependency.playName),
|
|
4565
|
+
loader: "ts",
|
|
4566
|
+
resolveDir: (0, import_node_path7.dirname)(args.path)
|
|
4567
|
+
};
|
|
4527
4568
|
}
|
|
4528
|
-
|
|
4529
|
-
contents: buildImportedPlayProxyModule(dependency.playName),
|
|
4530
|
-
loader: "ts",
|
|
4531
|
-
resolveDir: (0, import_node_path7.dirname)(args.path)
|
|
4532
|
-
};
|
|
4533
|
-
});
|
|
4569
|
+
);
|
|
4534
4570
|
}
|
|
4535
4571
|
};
|
|
4536
4572
|
}
|
|
@@ -4550,18 +4586,26 @@ async function resolveLocalImport(fromFile, specifier) {
|
|
|
4550
4586
|
const candidates = [base];
|
|
4551
4587
|
const explicitExtension = (0, import_node_path7.extname)(base).toLowerCase();
|
|
4552
4588
|
if (!explicitExtension) {
|
|
4553
|
-
candidates.push(
|
|
4554
|
-
|
|
4589
|
+
candidates.push(
|
|
4590
|
+
...SOURCE_EXTENSIONS.map((extension) => `${base}${extension}`)
|
|
4591
|
+
);
|
|
4592
|
+
candidates.push(
|
|
4593
|
+
...SOURCE_EXTENSIONS.map((extension) => (0, import_node_path7.join)(base, `index${extension}`))
|
|
4594
|
+
);
|
|
4555
4595
|
} else if ([".js", ".jsx", ".mjs", ".cjs"].includes(explicitExtension)) {
|
|
4556
4596
|
const stem = base.slice(0, -explicitExtension.length);
|
|
4557
|
-
candidates.push(
|
|
4597
|
+
candidates.push(
|
|
4598
|
+
...SOURCE_EXTENSIONS.map((extension) => `${stem}${extension}`)
|
|
4599
|
+
);
|
|
4558
4600
|
}
|
|
4559
4601
|
for (const candidate of candidates) {
|
|
4560
4602
|
if (await fileExists(candidate)) {
|
|
4561
4603
|
return normalizeLocalPath(candidate);
|
|
4562
4604
|
}
|
|
4563
4605
|
}
|
|
4564
|
-
throw new Error(
|
|
4606
|
+
throw new Error(
|
|
4607
|
+
`Could not resolve local import "${specifier}" from ${fromFile}`
|
|
4608
|
+
);
|
|
4565
4609
|
}
|
|
4566
4610
|
function resolvePackageImport(specifier, fromFile, adapter) {
|
|
4567
4611
|
const packageName = getPackageName(specifier);
|
|
@@ -4609,7 +4653,9 @@ async function analyzeSourceGraph(entryFile, adapter) {
|
|
|
4609
4653
|
);
|
|
4610
4654
|
}
|
|
4611
4655
|
if (NODE_BUILTIN_SET.has(specifier)) {
|
|
4612
|
-
nodeBuiltins.add(
|
|
4656
|
+
nodeBuiltins.add(
|
|
4657
|
+
specifier.startsWith("node:") ? specifier : `node:${specifier}`
|
|
4658
|
+
);
|
|
4613
4659
|
return;
|
|
4614
4660
|
}
|
|
4615
4661
|
if (isLocalSpecifier(specifier)) {
|
|
@@ -4644,7 +4690,11 @@ async function analyzeSourceGraph(entryFile, adapter) {
|
|
|
4644
4690
|
`${absolutePath}:${line}:${column} Unsupported import specifier "${specifier}". Allowed imports are relative files, Node builtins, and installed packages.`
|
|
4645
4691
|
);
|
|
4646
4692
|
}
|
|
4647
|
-
const packageImport = resolvePackageImport(
|
|
4693
|
+
const packageImport = resolvePackageImport(
|
|
4694
|
+
specifier,
|
|
4695
|
+
absolutePath,
|
|
4696
|
+
adapter
|
|
4697
|
+
);
|
|
4648
4698
|
packages.set(packageImport.name, packageImport.version);
|
|
4649
4699
|
};
|
|
4650
4700
|
try {
|
|
@@ -4694,16 +4744,23 @@ async function analyzeSourceGraph(entryFile, adapter) {
|
|
|
4694
4744
|
packages: [...packages.entries()].map(([name, version]) => ({ name, version })).sort((left, right) => left.name.localeCompare(right.name))
|
|
4695
4745
|
},
|
|
4696
4746
|
playName,
|
|
4697
|
-
importedPlayDependencies: [...importedPlayDependencies.values()].sort(
|
|
4747
|
+
importedPlayDependencies: [...importedPlayDependencies.values()].sort(
|
|
4748
|
+
(left, right) => left.filePath.localeCompare(right.filePath)
|
|
4749
|
+
)
|
|
4698
4750
|
};
|
|
4699
4751
|
}
|
|
4700
4752
|
async function computeWorkersHarnessFingerprintWithAdapter(adapter) {
|
|
4701
4753
|
const { readdir } = await import("fs/promises");
|
|
4702
|
-
const entries = await readdir(adapter.workersHarnessFilesDir, {
|
|
4754
|
+
const entries = await readdir(adapter.workersHarnessFilesDir, {
|
|
4755
|
+
withFileTypes: true
|
|
4756
|
+
});
|
|
4703
4757
|
const tsFiles = entries.filter((e) => e.isFile() && /\.[cm]?ts$/.test(e.name)).map((e) => e.name).sort();
|
|
4704
4758
|
const parts = [];
|
|
4705
4759
|
for (const name of tsFiles) {
|
|
4706
|
-
const contents = await (0, import_promises3.readFile)(
|
|
4760
|
+
const contents = await (0, import_promises3.readFile)(
|
|
4761
|
+
(0, import_node_path7.join)(adapter.workersHarnessFilesDir, name),
|
|
4762
|
+
"utf-8"
|
|
4763
|
+
);
|
|
4707
4764
|
parts.push({ name, hash: sha256(contents) });
|
|
4708
4765
|
}
|
|
4709
4766
|
return sha256(JSON.stringify(parts));
|
|
@@ -4879,9 +4936,47 @@ async function runEsbuildForEsmWorkers(playEntryFile, importedPlayDependencies,
|
|
|
4879
4936
|
outputExtension: "mjs"
|
|
4880
4937
|
};
|
|
4881
4938
|
}
|
|
4939
|
+
var PLAY_ARTIFACT_TARGET_ADAPTERS = {
|
|
4940
|
+
[PLAY_ARTIFACT_KINDS.cjsNode20]: {
|
|
4941
|
+
artifactKind: PLAY_ARTIFACT_KINDS.cjsNode20,
|
|
4942
|
+
codeFormat: "cjs_module",
|
|
4943
|
+
includeWorkersHarnessInGraphHash: false,
|
|
4944
|
+
runEsbuild: ({
|
|
4945
|
+
entryFile,
|
|
4946
|
+
importedPlayDependencies,
|
|
4947
|
+
adapter,
|
|
4948
|
+
exportName
|
|
4949
|
+
}) => runEsbuildForCjsNode(
|
|
4950
|
+
entryFile,
|
|
4951
|
+
importedPlayDependencies,
|
|
4952
|
+
adapter,
|
|
4953
|
+
exportName
|
|
4954
|
+
)
|
|
4955
|
+
},
|
|
4956
|
+
[PLAY_ARTIFACT_KINDS.esmWorkers]: {
|
|
4957
|
+
artifactKind: PLAY_ARTIFACT_KINDS.esmWorkers,
|
|
4958
|
+
codeFormat: "esm_module",
|
|
4959
|
+
includeWorkersHarnessInGraphHash: true,
|
|
4960
|
+
runEsbuild: ({
|
|
4961
|
+
entryFile,
|
|
4962
|
+
importedPlayDependencies,
|
|
4963
|
+
adapter,
|
|
4964
|
+
exportName
|
|
4965
|
+
}) => runEsbuildForEsmWorkers(
|
|
4966
|
+
entryFile,
|
|
4967
|
+
importedPlayDependencies,
|
|
4968
|
+
adapter,
|
|
4969
|
+
exportName
|
|
4970
|
+
)
|
|
4971
|
+
}
|
|
4972
|
+
};
|
|
4973
|
+
function resolvePlayArtifactTargetAdapter(artifactKind) {
|
|
4974
|
+
return PLAY_ARTIFACT_TARGET_ADAPTERS[artifactKind];
|
|
4975
|
+
}
|
|
4882
4976
|
async function bundlePlayFile(filePath, options) {
|
|
4883
4977
|
const adapter = options.adapter;
|
|
4884
4978
|
const target = options.target ?? PLAY_ARTIFACT_KINDS.cjsNode20;
|
|
4979
|
+
const targetAdapter = resolvePlayArtifactTargetAdapter(target);
|
|
4885
4980
|
const exportName = options.exportName?.trim() || "default";
|
|
4886
4981
|
assertValidExportName(exportName);
|
|
4887
4982
|
const absolutePath = await normalizeLocalPath(filePath);
|
|
@@ -4892,7 +4987,7 @@ async function bundlePlayFile(filePath, options) {
|
|
|
4892
4987
|
`${analysis.graphHash}
|
|
4893
4988
|
entry-export:${exportName}`
|
|
4894
4989
|
);
|
|
4895
|
-
if (
|
|
4990
|
+
if (targetAdapter.includeWorkersHarnessInGraphHash) {
|
|
4896
4991
|
const harnessFingerprint = await computeWorkersHarnessFingerprintWithAdapter(adapter);
|
|
4897
4992
|
analysis.graphHash = sha256(
|
|
4898
4993
|
`${analysis.graphHash}
|
|
@@ -4905,7 +5000,9 @@ workers-harness:${harnessFingerprint}`
|
|
|
4905
5000
|
sourcePath: absolutePath,
|
|
4906
5001
|
importedFilePaths: [
|
|
4907
5002
|
...analysis.importPolicy.localFiles,
|
|
4908
|
-
...analysis.importedPlayDependencies.map(
|
|
5003
|
+
...analysis.importedPlayDependencies.map(
|
|
5004
|
+
(dependency) => dependency.filePath
|
|
5005
|
+
)
|
|
4909
5006
|
]
|
|
4910
5007
|
}) ?? []
|
|
4911
5008
|
];
|
|
@@ -4916,7 +5013,11 @@ workers-harness:${harnessFingerprint}`
|
|
|
4916
5013
|
errors: typecheckErrors
|
|
4917
5014
|
};
|
|
4918
5015
|
}
|
|
4919
|
-
const cachedArtifact = await readArtifactCache(
|
|
5016
|
+
const cachedArtifact = await readArtifactCache(
|
|
5017
|
+
analysis.graphHash,
|
|
5018
|
+
target,
|
|
5019
|
+
adapter
|
|
5020
|
+
);
|
|
4920
5021
|
const discoveredFiles = await adapter.discoverPackagedLocalFiles(absolutePath);
|
|
4921
5022
|
if (cachedArtifact) {
|
|
4922
5023
|
const cachedArtifactSizeError = getBundleSizeError(
|
|
@@ -4943,7 +5044,12 @@ workers-harness:${harnessFingerprint}`
|
|
|
4943
5044
|
importedPlayDependencies: analysis.importedPlayDependencies
|
|
4944
5045
|
};
|
|
4945
5046
|
}
|
|
4946
|
-
const buildOutcome =
|
|
5047
|
+
const buildOutcome = await targetAdapter.runEsbuild({
|
|
5048
|
+
entryFile: absolutePath,
|
|
5049
|
+
importedPlayDependencies: analysis.importedPlayDependencies,
|
|
5050
|
+
adapter,
|
|
5051
|
+
exportName
|
|
5052
|
+
});
|
|
4947
5053
|
if (Array.isArray(buildOutcome)) {
|
|
4948
5054
|
return {
|
|
4949
5055
|
success: false,
|
|
@@ -4970,9 +5076,8 @@ workers-harness:${harnessFingerprint}`
|
|
|
4970
5076
|
errors: [bundleSizeError]
|
|
4971
5077
|
};
|
|
4972
5078
|
}
|
|
4973
|
-
const codeFormat = target === PLAY_ARTIFACT_KINDS.esmWorkers ? "esm_module" : "cjs_module";
|
|
4974
5079
|
const artifact = {
|
|
4975
|
-
codeFormat,
|
|
5080
|
+
codeFormat: targetAdapter.codeFormat,
|
|
4976
5081
|
artifactKind: target,
|
|
4977
5082
|
entryFile: absolutePath,
|
|
4978
5083
|
virtualFilename,
|
|
@@ -5016,6 +5121,13 @@ workers-harness:${harnessFingerprint}`
|
|
|
5016
5121
|
}
|
|
5017
5122
|
}
|
|
5018
5123
|
|
|
5124
|
+
// ../shared_libs/play-runtime/dedup-backend.ts
|
|
5125
|
+
var PLAY_DEDUP_BACKENDS = {
|
|
5126
|
+
inMemory: "in_memory",
|
|
5127
|
+
neonTable: "neon_table",
|
|
5128
|
+
durableObject: "durable_object"
|
|
5129
|
+
};
|
|
5130
|
+
|
|
5019
5131
|
// ../shared_libs/play-runtime/scheduler-backend.ts
|
|
5020
5132
|
var PLAY_SCHEDULER_BACKENDS = {
|
|
5021
5133
|
temporal: "temporal",
|
|
@@ -5023,44 +5135,65 @@ var PLAY_SCHEDULER_BACKENDS = {
|
|
|
5023
5135
|
inProcess: "in-process"
|
|
5024
5136
|
};
|
|
5025
5137
|
|
|
5026
|
-
// ../shared_libs/play-runtime/
|
|
5027
|
-
var
|
|
5028
|
-
|
|
5029
|
-
|
|
5030
|
-
durableObject: "durable_object"
|
|
5138
|
+
// ../shared_libs/play-runtime/providers.ts
|
|
5139
|
+
var PLAY_RUNTIME_PROVIDER_IDS = {
|
|
5140
|
+
workersEdge: "workers_edge",
|
|
5141
|
+
local: "local"
|
|
5031
5142
|
};
|
|
5032
|
-
|
|
5033
|
-
// ../shared_libs/play-runtime/profiles.ts
|
|
5034
|
-
var PLAY_EXECUTION_PROFILES = {
|
|
5143
|
+
var PLAY_RUNTIME_PROVIDERS = {
|
|
5035
5144
|
workers_edge: {
|
|
5036
|
-
id:
|
|
5145
|
+
id: PLAY_RUNTIME_PROVIDER_IDS.workersEdge,
|
|
5037
5146
|
scheduler: PLAY_SCHEDULER_BACKENDS.cfWorkflows,
|
|
5038
5147
|
runner: PLAY_RUNTIME_BACKENDS.cloudflareWorkers,
|
|
5039
5148
|
dedup: PLAY_DEDUP_BACKENDS.durableObject,
|
|
5149
|
+
artifactKind: PLAY_ARTIFACT_KINDS.esmWorkers,
|
|
5040
5150
|
label: "Cloudflare Dynamic Workflows + Dynamic Workers + DO dedup"
|
|
5041
5151
|
},
|
|
5042
5152
|
local: {
|
|
5043
|
-
id:
|
|
5153
|
+
id: PLAY_RUNTIME_PROVIDER_IDS.local,
|
|
5044
5154
|
scheduler: PLAY_SCHEDULER_BACKENDS.temporal,
|
|
5045
5155
|
runner: PLAY_RUNTIME_BACKENDS.localProcess,
|
|
5046
5156
|
dedup: PLAY_DEDUP_BACKENDS.inMemory,
|
|
5157
|
+
artifactKind: PLAY_ARTIFACT_KINDS.cjsNode20,
|
|
5047
5158
|
label: "Local Temporal scheduler + local subprocess runner (tests)"
|
|
5048
5159
|
}
|
|
5049
5160
|
};
|
|
5050
|
-
function
|
|
5051
|
-
return
|
|
5161
|
+
function defaultPlayRuntimeProvider() {
|
|
5162
|
+
return PLAY_RUNTIME_PROVIDERS.workers_edge;
|
|
5052
5163
|
}
|
|
5053
|
-
function
|
|
5164
|
+
function resolvePlayRuntimeProvider(override) {
|
|
5054
5165
|
if (override?.trim()) {
|
|
5055
5166
|
const id = override.trim();
|
|
5056
|
-
if (id in
|
|
5057
|
-
return
|
|
5167
|
+
if (id in PLAY_RUNTIME_PROVIDERS) {
|
|
5168
|
+
return PLAY_RUNTIME_PROVIDERS[id];
|
|
5058
5169
|
}
|
|
5059
5170
|
throw new Error(
|
|
5060
|
-
`Unknown
|
|
5171
|
+
`Unknown play runtime provider "${id}". Expected one of: ${Object.keys(
|
|
5172
|
+
PLAY_RUNTIME_PROVIDERS
|
|
5173
|
+
).join(", ")}.`
|
|
5061
5174
|
);
|
|
5062
5175
|
}
|
|
5063
|
-
return
|
|
5176
|
+
return defaultPlayRuntimeProvider();
|
|
5177
|
+
}
|
|
5178
|
+
|
|
5179
|
+
// ../shared_libs/play-runtime/profiles.ts
|
|
5180
|
+
var PLAY_EXECUTION_PROFILE_IDS = {
|
|
5181
|
+
...PLAY_RUNTIME_PROVIDER_IDS
|
|
5182
|
+
};
|
|
5183
|
+
var PLAY_EXECUTION_PROFILES = PLAY_RUNTIME_PROVIDERS;
|
|
5184
|
+
function resolveExecutionProfile(override) {
|
|
5185
|
+
try {
|
|
5186
|
+
return resolvePlayRuntimeProvider(override);
|
|
5187
|
+
} catch (error) {
|
|
5188
|
+
if (override?.trim()) {
|
|
5189
|
+
throw new Error(
|
|
5190
|
+
`Unknown execution profile "${override.trim()}". Expected one of: ${Object.keys(
|
|
5191
|
+
PLAY_EXECUTION_PROFILES
|
|
5192
|
+
).join(", ")}.`
|
|
5193
|
+
);
|
|
5194
|
+
}
|
|
5195
|
+
throw error;
|
|
5196
|
+
}
|
|
5064
5197
|
}
|
|
5065
5198
|
|
|
5066
5199
|
// src/plays/local-file-discovery.ts
|
|
@@ -5379,8 +5512,19 @@ var SDK_PACKAGE_JSON = (0, import_node_path9.resolve)(SDK_PACKAGE_ROOT, "package
|
|
|
5379
5512
|
var SDK_ENTRY_FILE = (0, import_node_path9.resolve)(SDK_SOURCE_ROOT, "index.ts");
|
|
5380
5513
|
var SDK_TYPES_ENTRY_FILE = HAS_SOURCE_BUNDLING_SOURCES ? SDK_ENTRY_FILE : (0, import_node_path9.resolve)(SDK_PACKAGE_ROOT, "dist", "index.d.ts");
|
|
5381
5514
|
var SDK_WORKERS_ENTRY_FILE = (0, import_node_path9.resolve)(SDK_SOURCE_ROOT, "worker-play-entry.ts");
|
|
5382
|
-
var WORKERS_HARNESS_ENTRY_FILE = (0, import_node_path9.resolve)(
|
|
5383
|
-
|
|
5515
|
+
var WORKERS_HARNESS_ENTRY_FILE = (0, import_node_path9.resolve)(
|
|
5516
|
+
PROJECT_ROOT,
|
|
5517
|
+
"apps",
|
|
5518
|
+
"play-runner-workers",
|
|
5519
|
+
"src",
|
|
5520
|
+
"entry.ts"
|
|
5521
|
+
);
|
|
5522
|
+
var WORKERS_HARNESS_FILES_DIR = (0, import_node_path9.resolve)(
|
|
5523
|
+
PROJECT_ROOT,
|
|
5524
|
+
"apps",
|
|
5525
|
+
"play-runner-workers",
|
|
5526
|
+
"src"
|
|
5527
|
+
);
|
|
5384
5528
|
var hasWarnedAboutNonDevelopmentBundling = false;
|
|
5385
5529
|
function warnAboutNonDevelopmentBundling(filePath) {
|
|
5386
5530
|
if (hasWarnedAboutNonDevelopmentBundling) {
|
|
@@ -5399,13 +5543,16 @@ function warnAboutNonDevelopmentBundling(filePath) {
|
|
|
5399
5543
|
);
|
|
5400
5544
|
}
|
|
5401
5545
|
function defaultPlayBundleTarget() {
|
|
5402
|
-
return
|
|
5546
|
+
return resolveExecutionProfile(null).artifactKind;
|
|
5403
5547
|
}
|
|
5404
5548
|
function createSdkPlayBundlingAdapter() {
|
|
5405
5549
|
return {
|
|
5406
5550
|
projectRoot: PROJECT_ROOT,
|
|
5407
5551
|
nodeModulesDir: (0, import_node_path9.resolve)(PROJECT_ROOT, "node_modules"),
|
|
5408
|
-
cacheDir: (0, import_node_path9.join)(
|
|
5552
|
+
cacheDir: (0, import_node_path9.join)(
|
|
5553
|
+
(0, import_node_os5.tmpdir)(),
|
|
5554
|
+
`deepline-play-artifacts-v${PLAY_BUNDLE_CACHE_VERSION2}`
|
|
5555
|
+
),
|
|
5409
5556
|
sdkSourceRoot: SDK_SOURCE_ROOT,
|
|
5410
5557
|
sdkPackageJson: SDK_PACKAGE_JSON,
|
|
5411
5558
|
sdkEntryFile: SDK_ENTRY_FILE,
|