terse-cli 0.6.4 → 0.8.0
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/README.md +35 -0
- package/dist/commands/actor.d.ts.map +1 -1
- package/dist/commands/actor.js +5 -2
- package/dist/commands/actor.js.map +1 -1
- package/dist/commands/actorGenerate.d.ts +2 -1
- package/dist/commands/actorGenerate.d.ts.map +1 -1
- package/dist/commands/actorGenerate.js +17 -5
- package/dist/commands/actorGenerate.js.map +1 -1
- package/dist/commands/deploy.d.ts.map +1 -1
- package/dist/commands/deploy.js +12 -35
- package/dist/commands/deploy.js.map +1 -1
- package/dist/commands/init.d.ts +3 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +12 -3
- package/dist/commands/init.js.map +1 -1
- package/dist/index.js +5 -3
- package/dist/index.js.map +1 -1
- package/dist/productFeatures.d.ts +6 -2
- package/dist/productFeatures.d.ts.map +1 -1
- package/dist/productFeatures.js +10 -1
- package/dist/productFeatures.js.map +1 -1
- package/dist/providers/typescript/actorCodegen.d.ts.map +1 -1
- package/dist/providers/typescript/actorCodegen.js +2 -0
- package/dist/providers/typescript/actorCodegen.js.map +1 -1
- package/dist/providers/typescript/actorSources.d.ts +2 -1
- package/dist/providers/typescript/actorSources.d.ts.map +1 -1
- package/dist/providers/typescript/actorSources.js +3 -0
- package/dist/providers/typescript/actorSources.js.map +1 -1
- package/dist/pythonActors.d.ts +7 -0
- package/dist/pythonActors.d.ts.map +1 -0
- package/dist/pythonActors.js +65 -0
- package/dist/pythonActors.js.map +1 -0
- package/dist/sourceArchive.d.ts +11 -0
- package/dist/sourceArchive.d.ts.map +1 -0
- package/dist/sourceArchive.js +29 -0
- package/dist/sourceArchive.js.map +1 -0
- package/package.json +5 -5
- package/templates/python/generate.py +52 -0
- package/templates/python/init/actor.py.hbs +37 -0
- package/templates/python/init/gitignore.hbs +8 -0
- package/templates/python/init/package.json.hbs +9 -0
- package/templates/python/init/pyproject.toml.hbs +8 -0
- package/templates/python/init/requirements-dev.txt.hbs +1 -0
- package/templates/python/transport.py +171 -0
package/README.md
CHANGED
|
@@ -67,6 +67,41 @@ See [self-hosting](https://docs.useterse.ai/self-hosting) for the full setup.
|
|
|
67
67
|
|
|
68
68
|
### Developing actors
|
|
69
69
|
|
|
70
|
+
For Python actors, install Python 3.11 or later and scaffold a Python project:
|
|
71
|
+
|
|
72
|
+
```bash
|
|
73
|
+
terse init my-chat --language python
|
|
74
|
+
cd my-chat
|
|
75
|
+
terse actor dev
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
Edit `src/actor.py`. Annotated fields persist by default; `emitted()` also broadcasts state changes. The scaffold includes typed connection metadata, incoming messages, and outgoing messages, with ordinary synchronous methods and socket hooks.
|
|
79
|
+
|
|
80
|
+
The CLI installs `durable-actors[codegen]` in `.venv` by default, runs strict mypy checks, and watches Python sources. The project environment takes precedence over an unrelated active virtualenv. Set `DURABLE_ACTORS_PYTHON` to select another interpreter; init installs dependencies into that interpreter, and actor commands use it too. `package.json` pins the Node tooling; you do not need a `tsconfig.json` or TypeScript actor code. Declare hosted runtime dependencies in `pyproject.toml`; `requirements-dev.txt` contains the local checking and generation tools.
|
|
81
|
+
|
|
82
|
+
In a Python application, install `durable-actors[codegen]` and generate its client:
|
|
83
|
+
|
|
84
|
+
```bash
|
|
85
|
+
terse actor generate --language python
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
```python
|
|
89
|
+
from generated import actors
|
|
90
|
+
|
|
91
|
+
chat = actors.Chat.get("lobby")
|
|
92
|
+
member = actors.Chat.Member(name="Oli")
|
|
93
|
+
message: actors.Chat.Message = chat.post(member, "Hello")
|
|
94
|
+
print(message.author.name, message.text)
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
Python contracts select Python generation automatically. The output defaults to `generated/`; `--out-dir` selects another package directory. Generated models, RPC methods, state subscriptions, and WebSocket messages retain their types and docstrings.
|
|
98
|
+
|
|
99
|
+
Run `terse deploy` from the actor project to deploy it. Python projects may also coexist with existing TypeScript workflows. Virtual environments and Python caches are excluded from deployment archives. A project has one actor entrypoint: `src/actor.py`, `src/actors.py`, `actor.py`, or `actors.py` for Python; existing TypeScript entrypoints take precedence when both are present.
|
|
100
|
+
|
|
101
|
+
Local clients use the runtime at port 7100. For deployed actors, set `TERSE_ACTOR_URL` and `TERSE_API_KEY` in the calling process, just as with TypeScript clients. Generated Python clients exchange the Terse credential for renewable actor sessions and obtain WebSocket grants from Terse. Your application must load its own `.env`; generated code does not embed credentials. Python support requires the matching Python-capable SDK and actor runtime release.
|
|
102
|
+
|
|
103
|
+
### Developing TypeScript actors
|
|
104
|
+
|
|
70
105
|
Install your actor project's dependencies and export your actors from `src/actors.ts`. From that project's root, alongside `package.json` and `tsconfig.json`, start a local instance:
|
|
71
106
|
|
|
72
107
|
```bash
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actor.d.ts","sourceRoot":"","sources":["../../src/commands/actor.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"actor.d.ts","sourceRoot":"","sources":["../../src/commands/actor.ts"],"names":[],"mappings":"AAcA,wBAAsB,QAAQ,CAAC,OAAO,GAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CA4DjG"}
|
package/dist/commands/actor.js
CHANGED
|
@@ -9,10 +9,12 @@ import { ensureDotenvLoaded } from "../dotenv.js";
|
|
|
9
9
|
import { loadProjectActorTools, resolveProjectActorTools } from "../projectActorTools.js";
|
|
10
10
|
import { typeScriptProvider } from "../providers/typescript/TypeScriptProvider.js";
|
|
11
11
|
import { ACTOR_ENTRY_FILE, resolveActorEntryFile } from "../providers/typescript/actorSources.js";
|
|
12
|
+
import { pythonExecutable } from "../pythonActors.js";
|
|
12
13
|
export async function actorDev(options = {}) {
|
|
13
|
-
const entryFile = resolveActorEntryFile(process.cwd()) ?? ACTOR_ENTRY_FILE;
|
|
14
|
-
assertProjectRoot(typeScriptProvider, { requiredFiles: ["package.json", "tsconfig.json", entryFile], description: "Terse actor project root" });
|
|
15
14
|
ensureDotenvLoaded();
|
|
15
|
+
const entryFile = resolveActorEntryFile(process.cwd()) ?? ACTOR_ENTRY_FILE;
|
|
16
|
+
const manifest = entryFile.endsWith(".py") ? "pyproject.toml" : "tsconfig.json";
|
|
17
|
+
assertProjectRoot(typeScriptProvider, { requiredFiles: ["package.json", manifest, entryFile], description: "Terse actor project root" });
|
|
16
18
|
const projectId = options.projectId ?? ((process.env.TERSE_ACTOR_PROJECT_ID ?? process.env.DURABLE_ACTORS_PROJECT_ID)?.trim() || DEFAULT_ACTOR_DEV_PROJECT_ID);
|
|
17
19
|
const configuredPort = (process.env.TERSE_ACTOR_PORT ?? process.env.DURABLE_ACTORS_PORT)?.trim();
|
|
18
20
|
const port = options.port ?? (configuredPort ? Number(configuredPort) : DEFAULT_ACTOR_DEV_PORT);
|
|
@@ -28,6 +30,7 @@ catch (error) { console.error(error instanceof Error ? error.message : String(er
|
|
|
28
30
|
const runtime = spawn(process.execPath, ["--input-type=module", "--eval", script], {
|
|
29
31
|
env: {
|
|
30
32
|
...process.env,
|
|
33
|
+
...(entryFile.endsWith(".py") ? { DURABLE_ACTORS_PYTHON: await pythonExecutable(project) } : {}),
|
|
31
34
|
DURABLE_ACTORS_PROJECT_ID: projectId,
|
|
32
35
|
DURABLE_ACTORS_PROJECT: process.cwd(),
|
|
33
36
|
DURABLE_ACTORS_ENTRYPOINT: entryFile,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actor.js","sourceRoot":"","sources":["../../src/commands/actor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAA;AACnC,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAC/C,OAAO,EAAE,sBAAsB,EAAE,4BAA4B,EAAE,MAAM,2BAA2B,CAAA;AAEhG,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAC1E,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AACjD,OAAO,EAAE,qBAAqB,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAA;AACzF,OAAO,EAAE,kBAAkB,EAAE,MAAM,+CAA+C,CAAA;AAClF,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAA;
|
|
1
|
+
{"version":3,"file":"actor.js","sourceRoot":"","sources":["../../src/commands/actor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actorGenerate.d.ts","sourceRoot":"","sources":["../../src/commands/actorGenerate.ts"],"names":[],"mappings":"AAoBA,wBAAsB,aAAa,CAAC,OAAO,EAAE;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"actorGenerate.d.ts","sourceRoot":"","sources":["../../src/commands/actorGenerate.ts"],"names":[],"mappings":"AAoBA,wBAAsB,aAAa,CAAC,OAAO,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,QAAQ,GAAG,YAAY,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAsBnH"}
|
|
@@ -8,6 +8,7 @@ import { CliError } from "../cliError.js";
|
|
|
8
8
|
import { BACKEND_URL } from "../config.js";
|
|
9
9
|
import { ensureDotenvLoaded } from "../dotenv.js";
|
|
10
10
|
import { loadProjectActorTools } from "../projectActorTools.js";
|
|
11
|
+
import { generatePythonActors } from "../pythonActors.js";
|
|
11
12
|
import { getStoredApiKey } from "../userConfig.js";
|
|
12
13
|
const publicationSchema = z.object({
|
|
13
14
|
codeRevision: z.string().min(1).optional(),
|
|
@@ -16,7 +17,6 @@ const publicationSchema = z.object({
|
|
|
16
17
|
});
|
|
17
18
|
export async function actorGenerate(options) {
|
|
18
19
|
ensureDotenvLoaded();
|
|
19
|
-
const { generateClientArtifacts } = await loadProjectActorTools(process.cwd());
|
|
20
20
|
const actorUrl = process.env.TERSE_ACTOR_URL?.trim() || DEFAULT_ACTOR_URL;
|
|
21
21
|
let endpoint;
|
|
22
22
|
try {
|
|
@@ -28,15 +28,29 @@ export async function actorGenerate(options) {
|
|
|
28
28
|
const url = new URL(endpoint.contractUrl);
|
|
29
29
|
const apiKey = actorApiKey(endpoint);
|
|
30
30
|
const publication = await fetchContract(url, apiKey);
|
|
31
|
+
const language = options.language ?? (publication.contract.typescript ? "typescript" : "python");
|
|
32
|
+
const directory = path.resolve(options.outDir ?? (language === "python" ? "generated" : "src/terse.actors"));
|
|
33
|
+
if (language === "python") {
|
|
34
|
+
await generatePythonActors(publication.contract, directory);
|
|
35
|
+
}
|
|
36
|
+
else {
|
|
37
|
+
await generateTypeScriptActors(publication.contract, directory);
|
|
38
|
+
}
|
|
39
|
+
const source = publication.codeRevision ? `revision ${publication.codeRevision}` : `contract ${publication.contractHash}`;
|
|
40
|
+
console.log(`Generated actor client in ${path.relative(process.cwd(), directory) || "."} from ${source}.`);
|
|
41
|
+
}
|
|
42
|
+
async function generateTypeScriptActors(contract, directory) {
|
|
43
|
+
if (!contract.typescript)
|
|
44
|
+
throw new CliError("actor_generation_failed", "This actor contract supports Python clients. Use --language python.");
|
|
45
|
+
const { generateClientArtifacts } = await loadProjectActorTools(process.cwd());
|
|
31
46
|
let files;
|
|
32
47
|
try {
|
|
33
48
|
// The upstream generator validates the complete public contract before emitting code.
|
|
34
|
-
files = await generateClientArtifacts(
|
|
49
|
+
files = await generateClientArtifacts({ ...contract, typescript: contract.typescript });
|
|
35
50
|
}
|
|
36
51
|
catch (error) {
|
|
37
52
|
throw new CliError("actor_generation_failed", formatActorDiagnostic(error instanceof Error ? error.message : String(error)));
|
|
38
53
|
}
|
|
39
|
-
const directory = path.resolve(options.outDir);
|
|
40
54
|
for (const [fileName, code] of files) {
|
|
41
55
|
if (fileName.startsWith("runtime/"))
|
|
42
56
|
continue;
|
|
@@ -53,8 +67,6 @@ export async function actorGenerate(options) {
|
|
|
53
67
|
const previousSource = await fs.readFile(previousEntry, "utf8").catch(() => "");
|
|
54
68
|
if (previousSource.startsWith("// Generated by terse actor generate"))
|
|
55
69
|
await fs.rm(previousEntry);
|
|
56
|
-
const source = publication.codeRevision ? `revision ${publication.codeRevision}` : `contract ${publication.contractHash}`;
|
|
57
|
-
console.log(`Generated actor client in ${path.relative(process.cwd(), directory) || "."} from ${source}.`);
|
|
58
70
|
}
|
|
59
71
|
function withTerseActorImports(code) {
|
|
60
72
|
const source = ts.createSourceFile("index.ts", code, ts.ScriptTarget.Latest, true, ts.ScriptKind.TS);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actorGenerate.js","sourceRoot":"","sources":["../../src/commands/actorGenerate.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"actorGenerate.js","sourceRoot":"","sources":["../../src/commands/actorGenerate.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../../src/commands/deploy.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAA;
|
|
1
|
+
{"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../../src/commands/deploy.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAA;AASxE,wBAAsB,MAAM,CAAC,QAAQ,GAAE,gBAAqC,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,oBAAoB,iBA4KhI;AAqOD,MAAM,MAAM,oBAAoB,GAAG;IAAE,aAAa,CAAC,EAAE,MAAM,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA"}
|
package/dist/commands/deploy.js
CHANGED
|
@@ -2,12 +2,12 @@ import { cancel, intro, isCancel, log, multiselect, outro } from "@clack/prompts
|
|
|
2
2
|
import { confirm } from "@inquirer/prompts";
|
|
3
3
|
import chalk from "chalk";
|
|
4
4
|
import dotenv from "dotenv";
|
|
5
|
-
import { zipSync } from "fflate";
|
|
6
5
|
import fs from "node:fs";
|
|
7
6
|
import path from "node:path";
|
|
8
7
|
import { ApiRoutes, buildRoute, sdkDeployRequestBodySchema, validateSecretName, validateSecretValue } from "terse-types";
|
|
9
8
|
import { FrontendRoutes } from "terse-types/FrontendRoutesBuilder";
|
|
10
9
|
import { ApiError, fetchWithAuth, fetchWithAuthAndSession, readApiKeyOrBail } from "../api.js";
|
|
10
|
+
import { assertProjectRoot } from "../assertProjectRoot.js";
|
|
11
11
|
import { CliError } from "../cliError.js";
|
|
12
12
|
import { isNonInteractive } from "../cliHelpers.js";
|
|
13
13
|
import { createSpinner, printSelfHostedCredentials } from "../cliUi.js";
|
|
@@ -15,12 +15,13 @@ import { getCliVersion } from "../cliVersion.js";
|
|
|
15
15
|
import { BACKEND_URL, FRONTEND_URL } from "../config.js";
|
|
16
16
|
import { loadJobRegistry } from "../loadJob.js";
|
|
17
17
|
import { PROJECT_CONFIG_FILENAME, createRemoteProject, readProjectConfigOrBail, writeProjectConfig } from "../projectConfig.js";
|
|
18
|
-
import { resolveProvider } from "../providers/resolveProvider.js";
|
|
19
18
|
import { openSessionStream } from "../providers/shared/sessionStream.js";
|
|
20
|
-
import {
|
|
19
|
+
import { typeScriptProvider } from "../providers/typescript/TypeScriptProvider.js";
|
|
20
|
+
import { loadActorContract, resolveActorEntryFile } from "../providers/typescript/actorSources.js";
|
|
21
|
+
import { buildSourceArchive } from "../sourceArchive.js";
|
|
21
22
|
// Base64 in a JSON body: fine for a source-only project, not for one carrying data files.
|
|
22
23
|
const MAX_INLINE_ARCHIVE_BYTES = 8 * 1024 * 1024;
|
|
23
|
-
export async function deploy(provider =
|
|
24
|
+
export async function deploy(provider = typeScriptProvider, entryFile, recovery) {
|
|
24
25
|
const apiKey = readApiKeyOrBail({
|
|
25
26
|
title: "Error: Not authenticated.",
|
|
26
27
|
detail: "Run `terse auth login` to authenticate, or set TERSE_API_KEY in your environment."
|
|
@@ -29,8 +30,10 @@ export async function deploy(provider = resolveProvider(), entryFile, recovery)
|
|
|
29
30
|
const { projectId } = config;
|
|
30
31
|
const actorContract = await loadActorContract(process.cwd());
|
|
31
32
|
const actorTypes = actorContract?.actors.map(actor => actor.actorName).sort() ?? [];
|
|
32
|
-
const
|
|
33
|
-
|
|
33
|
+
const pythonOnly = resolveActorEntryFile(process.cwd())?.endsWith(".py") && !fs.existsSync("tsconfig.json");
|
|
34
|
+
if (pythonOnly)
|
|
35
|
+
assertProjectRoot(provider, { requiredFiles: ["package.json", "pyproject.toml"], description: "Python actor project" });
|
|
36
|
+
const jobs = pythonOnly ? [] : [...(await loadJobRegistry(provider, entryFile, actorTypes.length > 0)).values()];
|
|
34
37
|
// Self-hosted mode is driven entirely by terse.config.json (selfHosted + remoteServerUrl).
|
|
35
38
|
const remoteServerUrl = config.remoteServerUrl?.trim() || undefined;
|
|
36
39
|
if (config.selfHosted && !remoteServerUrl) {
|
|
@@ -45,7 +48,8 @@ export async function deploy(provider = resolveProvider(), entryFile, recovery)
|
|
|
45
48
|
const typecheckSpinner = createSpinner();
|
|
46
49
|
typecheckSpinner.start("Type-checking");
|
|
47
50
|
try {
|
|
48
|
-
|
|
51
|
+
if (!pythonOnly)
|
|
52
|
+
await provider.typecheck();
|
|
49
53
|
typecheckSpinner.stop("Type-check passed");
|
|
50
54
|
}
|
|
51
55
|
catch (error) {
|
|
@@ -86,7 +90,7 @@ export async function deploy(provider = resolveProvider(), entryFile, recovery)
|
|
|
86
90
|
// Asking for the upload URL is a round trip that does not need the archive, so it runs
|
|
87
91
|
// while the project is being zipped.
|
|
88
92
|
const session = requestUploadSession(apiKey);
|
|
89
|
-
const zipPayload =
|
|
93
|
+
const zipPayload = buildSourceArchive(process.cwd(), provider.deployExclusions);
|
|
90
94
|
fileCount = zipPayload.fileCount;
|
|
91
95
|
zipSizeBytes = zipPayload.zipSizeBytes;
|
|
92
96
|
timeline.enter("UPLOADING_SOURCE");
|
|
@@ -198,33 +202,6 @@ async function tryRecoverStaleProject(error, args) {
|
|
|
198
202
|
console.log(chalk.green(` Re-linked to ${newProject.projectId}. Retrying deploy…\n`));
|
|
199
203
|
return { signingSecret, projectApiKey };
|
|
200
204
|
}
|
|
201
|
-
function collectFiles(dir, baseDir, provider) {
|
|
202
|
-
const entries = {};
|
|
203
|
-
for (const entry of fs.readdirSync(dir, { withFileTypes: true })) {
|
|
204
|
-
if (provider.deployExclusions.dirs.has(entry.name))
|
|
205
|
-
continue;
|
|
206
|
-
if (provider.deployExclusions.files.has(entry.name))
|
|
207
|
-
continue;
|
|
208
|
-
const fullPath = path.join(dir, entry.name);
|
|
209
|
-
if (entry.isDirectory()) {
|
|
210
|
-
Object.assign(entries, collectFiles(fullPath, baseDir, provider));
|
|
211
|
-
}
|
|
212
|
-
else if (entry.isFile()) {
|
|
213
|
-
entries[path.relative(baseDir, fullPath).split(path.sep).join("/")] = new Uint8Array(fs.readFileSync(fullPath));
|
|
214
|
-
}
|
|
215
|
-
}
|
|
216
|
-
return entries;
|
|
217
|
-
}
|
|
218
|
-
function buildZipPayload(provider) {
|
|
219
|
-
const cwd = process.cwd();
|
|
220
|
-
const files = collectFiles(cwd, cwd, provider);
|
|
221
|
-
const fileCount = Object.keys(files).length;
|
|
222
|
-
if (fileCount === 0) {
|
|
223
|
-
throw new CliError("no_files_to_deploy", "No files found to deploy");
|
|
224
|
-
}
|
|
225
|
-
const zipData = zipSync(files, { level: 6 });
|
|
226
|
-
return { zipBytes: zipData, fileCount, zipSizeBytes: zipData.length };
|
|
227
|
-
}
|
|
228
205
|
/**
|
|
229
206
|
* Object storage first, so a project carrying data files never rides inside the deploy request:
|
|
230
207
|
* base64 in JSON inflates it by a third and buffers the whole thing in the control plane. A
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../src/commands/deploy.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../src/commands/deploy.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/init.d.ts
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { type NonInteractiveOpts } from "../cliHelpers.js";
|
|
2
2
|
import type { LanguageProvider } from "../providers/LanguageProvider.js";
|
|
3
|
-
export declare function init(projectName?: string, provider?: LanguageProvider, opts?: NonInteractiveOpts
|
|
3
|
+
export declare function init(projectName?: string, provider?: LanguageProvider, opts?: NonInteractiveOpts & {
|
|
4
|
+
language?: "typescript" | "python";
|
|
5
|
+
}): Promise<void>;
|
|
4
6
|
//# sourceMappingURL=init.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AAI1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAA;
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AAI1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAA;AAQxE,wBAAsB,IAAI,CACtB,WAAW,CAAC,EAAE,MAAM,EACpB,QAAQ,GAAE,gBAAuE,EACjF,IAAI,CAAC,EAAE,kBAAkB,GAAG;IAAE,QAAQ,CAAC,EAAE,YAAY,GAAG,QAAQ,CAAA;CAAE,GACnE,OAAO,CAAC,IAAI,CAAC,CA4Gf"}
|
package/dist/commands/init.js
CHANGED
|
@@ -9,6 +9,7 @@ import { PROJECT_CONFIG_FILENAME, createRemoteProject, writeProjectConfig } from
|
|
|
9
9
|
import { fetchSdkVersion } from "../providers/fetchSdkVersion.js";
|
|
10
10
|
import { resolveProvider } from "../providers/resolveProvider.js";
|
|
11
11
|
import { renderTemplate } from "../providers/templateUtils.js";
|
|
12
|
+
import { installPythonActors } from "../pythonActors.js";
|
|
12
13
|
import { loginAndPersist } from "./auth.js";
|
|
13
14
|
export async function init(projectName, provider = resolveProvider({ command: "init", language: "ts" }), opts) {
|
|
14
15
|
if (!projectName && fs.existsSync(path.join(process.cwd(), "package.json"))) {
|
|
@@ -36,7 +37,7 @@ export async function init(projectName, provider = resolveProvider({ command: "i
|
|
|
36
37
|
}
|
|
37
38
|
fs.mkdirSync(path.join(targetDir, "src"), { recursive: true });
|
|
38
39
|
const templateContext = provider.buildInitTemplateContext(resolvedName, sdkVersion);
|
|
39
|
-
const scaffoldFiles = actorScaffoldFiles(provider.scaffoldFiles());
|
|
40
|
+
const scaffoldFiles = actorScaffoldFiles(provider.scaffoldFiles(), opts?.language);
|
|
40
41
|
for (const file of scaffoldFiles) {
|
|
41
42
|
const rendered = renderTemplate(file.template, templateContext);
|
|
42
43
|
const outputPath = path.join(targetDir, file.output);
|
|
@@ -49,10 +50,18 @@ export async function init(projectName, provider = resolveProvider({ command: "i
|
|
|
49
50
|
await changeDirectory(targetDir);
|
|
50
51
|
try {
|
|
51
52
|
await provider.installDependencies(targetDir);
|
|
53
|
+
if (opts?.language === "python")
|
|
54
|
+
await installPythonActors(targetDir);
|
|
52
55
|
s.stop(`Dependencies installed with ${pm}`);
|
|
53
56
|
}
|
|
54
|
-
catch {
|
|
57
|
+
catch (error) {
|
|
55
58
|
s.stop(`Failed to install dependencies. Run ${chalk.cyan(`${pm} install`)} manually.`);
|
|
59
|
+
if (opts?.language === "python") {
|
|
60
|
+
const setup = process.env.DURABLE_ACTORS_PYTHON
|
|
61
|
+
? "Install requirements-dev.txt with the interpreter selected by DURABLE_ACTORS_PYTHON."
|
|
62
|
+
: `Run ${process.platform === "win32" ? "py" : "python3"} -m venv .venv, then install requirements-dev.txt with that environment's pip.`;
|
|
63
|
+
log.warn(`${error.message}\n${setup}`);
|
|
64
|
+
}
|
|
56
65
|
}
|
|
57
66
|
if (loginResult?.apiKey) {
|
|
58
67
|
s.start("Creating Terse project");
|
|
@@ -71,7 +80,7 @@ export async function init(projectName, provider = resolveProvider({ command: "i
|
|
|
71
80
|
console.log([
|
|
72
81
|
"",
|
|
73
82
|
` ${chalk.bold("Make it yours")}`,
|
|
74
|
-
` Edit ${chalk.cyan("src/actor.ts")} to define your actors.`,
|
|
83
|
+
` Edit ${chalk.cyan(opts?.language === "python" ? "src/actor.py" : "src/actor.ts")} to define your actors.`,
|
|
75
84
|
"",
|
|
76
85
|
` ${chalk.bold("Run locally")}`,
|
|
77
86
|
...(projectName ? [` ${accent(`cd ${projectName}`)}`] : []),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAA;AAClD,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAEzC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAA;AAC1D,OAAO,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAA;AAEtG,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAA;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAA;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import chalk from "chalk";
|
|
3
|
-
import { Command } from "commander";
|
|
3
|
+
import { Command, Option } from "commander";
|
|
4
4
|
import { emitCliError, isCliError, setErrorOutputJson } from "./cliError.js";
|
|
5
5
|
import { getCliVersion } from "./cliVersion.js";
|
|
6
6
|
import { actorDev } from "./commands/actor.js";
|
|
@@ -40,7 +40,8 @@ actor
|
|
|
40
40
|
actor
|
|
41
41
|
.command("generate")
|
|
42
42
|
.description("Generate typed clients from local actors or an explicit TERSE_ACTOR_URL")
|
|
43
|
-
.option("--out-dir <directory>", "Generated
|
|
43
|
+
.option("--out-dir <directory>", "Generated client directory (Python: generated; TypeScript: src/terse.actors)")
|
|
44
|
+
.addOption(new Option("--language <language>", "Client language (inferred from the actor contract)").choices(["typescript", "python"]))
|
|
44
45
|
.action(actorGenerate);
|
|
45
46
|
program
|
|
46
47
|
.command("install")
|
|
@@ -64,6 +65,7 @@ program
|
|
|
64
65
|
.command("init")
|
|
65
66
|
.description("Create a new Terse project")
|
|
66
67
|
.argument("[project-name]", "Name for the project directory")
|
|
68
|
+
.addOption(new Option("--language <language>", "Actor source language").choices(["typescript", "python"]).default("typescript"))
|
|
67
69
|
.option(...NON_INTERACTIVE_OPTION)
|
|
68
70
|
.addHelpText("after", `
|
|
69
71
|
Examples:
|
|
@@ -80,7 +82,7 @@ program
|
|
|
80
82
|
.command("deploy")
|
|
81
83
|
.description("Deploy the project to Terse")
|
|
82
84
|
.action(async () => {
|
|
83
|
-
await deploy(
|
|
85
|
+
await deploy();
|
|
84
86
|
});
|
|
85
87
|
program.commandsGroup("Project configuration:");
|
|
86
88
|
const secretsCommand = program
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
/** New actor projects have one source file and only the supporting project files. */
|
|
2
|
-
export declare function actorScaffoldFiles<
|
|
2
|
+
export declare function actorScaffoldFiles(files: Array<{
|
|
3
|
+
template: string;
|
|
3
4
|
output: string;
|
|
4
|
-
}
|
|
5
|
+
}>, language?: "typescript" | "python"): Array<{
|
|
6
|
+
template: string;
|
|
7
|
+
output: string;
|
|
8
|
+
}>;
|
|
5
9
|
//# sourceMappingURL=productFeatures.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"productFeatures.d.ts","sourceRoot":"","sources":["../src/productFeatures.ts"],"names":[],"mappings":"AAAA,qFAAqF;AACrF,wBAAgB,kBAAkB,CAAC,CAAC
|
|
1
|
+
{"version":3,"file":"productFeatures.d.ts","sourceRoot":"","sources":["../src/productFeatures.ts"],"names":[],"mappings":"AAAA,qFAAqF;AACrF,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,KAAK,CAAC;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,EAAE,QAAQ,GAAE,YAAY,GAAG,QAAuB,GAAG,KAAK,CAAC;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAYpL"}
|
package/dist/productFeatures.js
CHANGED
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
/** New actor projects have one source file and only the supporting project files. */
|
|
2
|
-
export function actorScaffoldFiles(files) {
|
|
2
|
+
export function actorScaffoldFiles(files, language = "typescript") {
|
|
3
|
+
if (language === "python")
|
|
4
|
+
return [
|
|
5
|
+
{ template: "python/init/package.json.hbs", output: "package.json" },
|
|
6
|
+
{ template: "python/init/pyproject.toml.hbs", output: "pyproject.toml" },
|
|
7
|
+
{ template: "python/init/requirements-dev.txt.hbs", output: "requirements-dev.txt" },
|
|
8
|
+
{ template: "python/init/actor.py.hbs", output: "src/actor.py" },
|
|
9
|
+
{ template: "python/init/gitignore.hbs", output: ".gitignore" },
|
|
10
|
+
{ template: "typescript/init/env.example.hbs", output: ".env.example" }
|
|
11
|
+
];
|
|
3
12
|
const outputs = new Set(["package.json", "tsconfig.json", "src/actors.ts", ".env.example", ".gitignore"]);
|
|
4
13
|
return files.filter(file => outputs.has(file.output)).map(file => (file.output === "src/actors.ts" ? { ...file, output: "src/actor.ts" } : file));
|
|
5
14
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"productFeatures.js","sourceRoot":"","sources":["../src/productFeatures.ts"],"names":[],"mappings":"AAAA,qFAAqF;AACrF,MAAM,UAAU,kBAAkB,
|
|
1
|
+
{"version":3,"file":"productFeatures.js","sourceRoot":"","sources":["../src/productFeatures.ts"],"names":[],"mappings":"AAAA,qFAAqF;AACrF,MAAM,UAAU,kBAAkB,CAAC,KAAkD,EAAE,WAAoC,YAAY;IACnI,IAAI,QAAQ,KAAK,QAAQ;QACrB,OAAO;YACH,EAAE,QAAQ,EAAE,8BAA8B,EAAE,MAAM,EAAE,cAAc,EAAE;YACpE,EAAE,QAAQ,EAAE,gCAAgC,EAAE,MAAM,EAAE,gBAAgB,EAAE;YACxE,EAAE,QAAQ,EAAE,sCAAsC,EAAE,MAAM,EAAE,sBAAsB,EAAE;YACpF,EAAE,QAAQ,EAAE,0BAA0B,EAAE,MAAM,EAAE,cAAc,EAAE;YAChE,EAAE,QAAQ,EAAE,2BAA2B,EAAE,MAAM,EAAE,YAAY,EAAE;YAC/D,EAAE,QAAQ,EAAE,iCAAiC,EAAE,MAAM,EAAE,cAAc,EAAE;SAC1E,CAAA;IACL,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,CAAC,cAAc,EAAE,eAAe,EAAE,eAAe,EAAE,cAAc,EAAE,YAAY,CAAC,CAAC,CAAA;IACzG,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,eAAe,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;AACrJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actorCodegen.d.ts","sourceRoot":"","sources":["../../../src/providers/typescript/actorCodegen.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAI3D,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"actorCodegen.d.ts","sourceRoot":"","sources":["../../../src/providers/typescript/actorCodegen.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAI3D,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAsD5E"}
|
|
@@ -9,6 +9,8 @@ export async function renderActorFiles(cwd) {
|
|
|
9
9
|
const entryFile = resolveActorEntryFile(cwd);
|
|
10
10
|
if (!entryFile)
|
|
11
11
|
return [];
|
|
12
|
+
if (entryFile.endsWith(".py"))
|
|
13
|
+
return [];
|
|
12
14
|
try {
|
|
13
15
|
const { ActorCompiler, generateClientArtifacts } = await loadProjectActorTools(cwd);
|
|
14
16
|
const contract = new ActorCompiler().compileContract(path.join(cwd, entryFile));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actorCodegen.js","sourceRoot":"","sources":["../../../src/providers/typescript/actorCodegen.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAA;AACpE,OAAO,EAAE,MAAM,YAAY,CAAA;AAE3B,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAA;AAGhE,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAA;AAEzD,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,GAAW;IAC9C,MAAM,SAAS,GAAG,qBAAqB,CAAC,GAAG,CAAC,CAAA;IAC5C,IAAI,CAAC,SAAS;QAAE,OAAO,EAAE,CAAA;IACzB,IAAI,CAAC;QACD,MAAM,EAAE,aAAa,EAAE,uBAAuB,EAAE,GAAG,MAAM,qBAAqB,CAAC,GAAG,CAAC,CAAA;QACnF,MAAM,QAAQ,GAAG,IAAI,aAAa,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,CAAA;QAC/E,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,CAAA;QACnE,IAAI,CAAC,MAAM,CAAC,MAAM;YAAE,OAAO,EAAE,CAAA;QAC7B,MAAM,SAAS,GAAG,MAAM,uBAAuB,CAAC,QAAQ,CAAC,CAAA;QACzD,MAAM,EAAE,SAAS,EAAE,GAAG,uBAAuB,CAAC,GAAG,CAAC,CAAA;QAClD,MAAM,MAAM,GAAG,EAAE,CAAC,gBAAgB,CAAC,UAAU,EAAE,SAAS,CAAC,GAAG,CAAC,YAAY,CAAE,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;QAC1G,2FAA2F;QAC3F,MAAM,YAAY,GAAG,MAAM,CAAC,UAAU;aACjC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC,mBAAmB,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC;aAC1F,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;aAC3C,IAAI,CAAC,MAAM,CAAC,CAAA;QACjB,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,kCAAkC,IAAI,YAAY,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC7H,OAAO;YACH;gBACI,QAAQ,EAAE,iCAAiC;gBAC3C,IAAI,EAAE,6JAA6J,YAAY,IAAI;aACtL;YACD;gBACI,QAAQ,EAAE,0CAA0C;gBACpD,IAAI,EAAE,QAAQ,CAAC,UAAU,CAAC,YAAY;aACzC;YACD;gBACI,QAAQ,EAAE,2BAA2B;gBACrC,IAAI,EAAE;;;;mBAIH,WAAW;;;;;;iDAMmB,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC;;;;;;;CAOzE;aACY;SACJ,CAAA;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,IAAI,KAAK,YAAY,QAAQ;YAAE,MAAM,KAAK,CAAA;QAC1C,MAAM,MAAM,GAAG,qBAAqB,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;QAC5F,MAAM,IAAI,QAAQ,CAAC,yBAAyB,EAAE,MAAM,CAAC,CAAA;IACzD,CAAC;AACL,CAAC"}
|
|
1
|
+
{"version":3,"file":"actorCodegen.js","sourceRoot":"","sources":["../../../src/providers/typescript/actorCodegen.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { ACTOR_ENTRY_FILE } from "terse-types/ActorSource";
|
|
2
|
+
import { type ActorContract } from "../../pythonActors.js";
|
|
2
3
|
export { ACTOR_ENTRY_FILE };
|
|
3
4
|
export declare function resolveActorEntryFile(cwd: string): string | undefined;
|
|
4
5
|
export declare function loadActorTypes(cwd: string): Promise<string[]>;
|
|
5
|
-
export declare function loadActorContract(cwd: string): Promise<
|
|
6
|
+
export declare function loadActorContract(cwd: string): Promise<ActorContract | undefined>;
|
|
6
7
|
//# sourceMappingURL=actorSources.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actorSources.d.ts","sourceRoot":"","sources":["../../../src/providers/typescript/actorSources.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAsB,MAAM,yBAAyB,CAAA;
|
|
1
|
+
{"version":3,"file":"actorSources.d.ts","sourceRoot":"","sources":["../../../src/providers/typescript/actorSources.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAsB,MAAM,yBAAyB,CAAA;AAI9E,OAAO,EAAE,KAAK,aAAa,EAAuB,MAAM,uBAAuB,CAAA;AAE/E,OAAO,EAAE,gBAAgB,EAAE,CAAA;AAE3B,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAErE;AAED,wBAAsB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAGnE;AAED,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC,CAYvF"}
|
|
@@ -4,6 +4,7 @@ import { formatActorDiagnostic } from "terse-types/ActorDiagnostics";
|
|
|
4
4
|
import { ACTOR_ENTRY_FILE, findActorEntryFile } from "terse-types/ActorSource";
|
|
5
5
|
import { CliError } from "../../cliError.js";
|
|
6
6
|
import { loadProjectActorTools } from "../../projectActorTools.js";
|
|
7
|
+
import { compilePythonActors } from "../../pythonActors.js";
|
|
7
8
|
export { ACTOR_ENTRY_FILE };
|
|
8
9
|
export function resolveActorEntryFile(cwd) {
|
|
9
10
|
return findActorEntryFile(file => fs.existsSync(path.join(cwd, file)));
|
|
@@ -18,6 +19,8 @@ export async function loadActorContract(cwd) {
|
|
|
18
19
|
return undefined;
|
|
19
20
|
const entry = path.join(cwd, entryFile);
|
|
20
21
|
try {
|
|
22
|
+
if (entryFile.endsWith(".py"))
|
|
23
|
+
return await compilePythonActors(cwd, entryFile);
|
|
21
24
|
const { ActorCompiler } = await loadProjectActorTools(cwd);
|
|
22
25
|
return new ActorCompiler().compileContract(entry);
|
|
23
26
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actorSources.js","sourceRoot":"","sources":["../../../src/providers/typescript/actorSources.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAA;AACpE,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAE9E,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;
|
|
1
|
+
{"version":3,"file":"actorSources.js","sourceRoot":"","sources":["../../../src/providers/typescript/actorSources.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAA;AACpE,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAE9E,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAClE,OAAO,EAAsB,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAE/E,OAAO,EAAE,gBAAgB,EAAE,CAAA;AAE3B,MAAM,UAAU,qBAAqB,CAAC,GAAW;IAC7C,OAAO,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,CAAA;AAC1E,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,GAAW;IAC5C,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,GAAG,CAAC,CAAA;IAC7C,OAAO,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAA;AACtE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,GAAW;IAC/C,MAAM,SAAS,GAAG,qBAAqB,CAAC,GAAG,CAAC,CAAA;IAC5C,IAAI,CAAC,SAAS;QAAE,OAAO,SAAS,CAAA;IAChC,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,CAAA;IACvC,IAAI,CAAC;QACD,IAAI,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,OAAO,MAAM,mBAAmB,CAAC,GAAG,EAAE,SAAS,CAAC,CAAA;QAC/E,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,qBAAqB,CAAC,GAAG,CAAC,CAAA;QAC1D,OAAO,IAAI,aAAa,EAAE,CAAC,eAAe,CAAC,KAAK,CAAC,CAAA;IACrD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,IAAI,KAAK,YAAY,QAAQ;YAAE,MAAM,KAAK,CAAA;QAC1C,MAAM,IAAI,QAAQ,CAAC,0BAA0B,EAAE,GAAG,SAAS,KAAK,qBAAqB,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAA;IACpJ,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { PublicActorContract } from "terse-sdk/dev";
|
|
2
|
+
export type ActorContract = Omit<PublicActorContract, "typescript"> & Partial<Pick<PublicActorContract, "typescript">>;
|
|
3
|
+
export declare function compilePythonActors(project: string, entrypoint: string): Promise<ActorContract>;
|
|
4
|
+
export declare function generatePythonActors(contract: ActorContract, directory: string): Promise<void>;
|
|
5
|
+
export declare function installPythonActors(project: string): Promise<void>;
|
|
6
|
+
export declare function pythonExecutable(project: string): Promise<string>;
|
|
7
|
+
//# sourceMappingURL=pythonActors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pythonActors.d.ts","sourceRoot":"","sources":["../src/pythonActors.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AAKxD,MAAM,MAAM,aAAa,GAAG,IAAI,CAAC,mBAAmB,EAAE,YAAY,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,mBAAmB,EAAE,YAAY,CAAC,CAAC,CAAA;AAEtH,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAYrG;AAED,wBAAsB,oBAAoB,CAAC,QAAQ,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAMpG;AAED,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAOxE;AAED,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAcvE"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { execFile } from "node:child_process";
|
|
2
|
+
import { access, mkdtemp, rm } from "node:fs/promises";
|
|
3
|
+
import os from "node:os";
|
|
4
|
+
import path from "node:path";
|
|
5
|
+
import { fileURLToPath } from "node:url";
|
|
6
|
+
import { z } from "zod";
|
|
7
|
+
import { CliError } from "./cliError.js";
|
|
8
|
+
export async function compilePythonActors(project, entrypoint) {
|
|
9
|
+
const executable = await pythonExecutable(project);
|
|
10
|
+
await runPython(project, executable, ["-m", "mypy", "--strict", entrypoint]);
|
|
11
|
+
const directory = await mkdtemp(path.join(os.tmpdir(), "terse-python-contract-"));
|
|
12
|
+
try {
|
|
13
|
+
const output = await runPython(project, executable, ["-m", "durable_actors.build", project, entrypoint, directory, "local"]);
|
|
14
|
+
const contract = JSON.parse(output);
|
|
15
|
+
z.object({ version: z.literal(1), actors: z.array(z.object({ actorName: z.string() })) }).parse(contract);
|
|
16
|
+
return contract;
|
|
17
|
+
}
|
|
18
|
+
finally {
|
|
19
|
+
await rm(directory, { recursive: true, force: true });
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
export async function generatePythonActors(contract, directory) {
|
|
23
|
+
const project = process.cwd();
|
|
24
|
+
const executable = await pythonExecutable(project);
|
|
25
|
+
const script = fileURLToPath(new URL("../templates/python/generate.py", import.meta.url));
|
|
26
|
+
await runPython(project, executable, [script, directory], JSON.stringify(contract));
|
|
27
|
+
await runPython(project, executable, ["-m", "mypy", "--strict", directory]);
|
|
28
|
+
}
|
|
29
|
+
export async function installPythonActors(project) {
|
|
30
|
+
let executable = process.env.DURABLE_ACTORS_PYTHON;
|
|
31
|
+
if (!executable) {
|
|
32
|
+
await runPython(project, await pythonExecutable(project), ["-m", "venv", ".venv"]);
|
|
33
|
+
executable = environmentPython(path.join(project, ".venv"));
|
|
34
|
+
}
|
|
35
|
+
await runPython(project, executable, ["-m", "pip", "install", "-r", "requirements-dev.txt"]);
|
|
36
|
+
}
|
|
37
|
+
export async function pythonExecutable(project) {
|
|
38
|
+
if (process.env.DURABLE_ACTORS_PYTHON)
|
|
39
|
+
return process.env.DURABLE_ACTORS_PYTHON;
|
|
40
|
+
for (const environment of [path.join(project, ".venv"), process.env.VIRTUAL_ENV]) {
|
|
41
|
+
if (!environment)
|
|
42
|
+
continue;
|
|
43
|
+
const executable = environmentPython(environment);
|
|
44
|
+
if (await access(executable).then(() => true, () => false))
|
|
45
|
+
return executable;
|
|
46
|
+
}
|
|
47
|
+
return process.platform === "win32" ? "py" : "python3";
|
|
48
|
+
}
|
|
49
|
+
function environmentPython(directory) {
|
|
50
|
+
return path.join(directory, process.platform === "win32" ? "Scripts/python.exe" : "bin/python");
|
|
51
|
+
}
|
|
52
|
+
function runPython(project, executable, args, input) {
|
|
53
|
+
return new Promise((resolve, reject) => {
|
|
54
|
+
const child = execFile(executable, args, { cwd: project, maxBuffer: 8 * 1024 * 1024 }, (error, stdout, stderr) => {
|
|
55
|
+
if (!error)
|
|
56
|
+
return resolve(stdout);
|
|
57
|
+
reject(new CliError("python_actor_tool_failed", `${stdout}${stderr || error.message}`.trim(), {
|
|
58
|
+
detail: "Install durable-actors[codegen] in your project virtual environment. DURABLE_ACTORS_PYTHON selects a different Python interpreter."
|
|
59
|
+
}));
|
|
60
|
+
});
|
|
61
|
+
child.stdin?.on("error", () => { });
|
|
62
|
+
child.stdin?.end(input);
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
//# sourceMappingURL=pythonActors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pythonActors.js","sourceRoot":"","sources":["../src/pythonActors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAC7C,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAExC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAIxC,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,OAAe,EAAE,UAAkB;IACzE,MAAM,UAAU,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAAC,CAAA;IAClD,MAAM,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,CAAA;IAC5E,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,wBAAwB,CAAC,CAAC,CAAA;IACjF,IAAI,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC,IAAI,EAAE,sBAAsB,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAA;QAC5H,MAAM,QAAQ,GAAY,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;QAC5C,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;QACzG,OAAO,QAAyB,CAAA;IACpC,CAAC;YAAS,CAAC;QACP,MAAM,EAAE,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;IACzD,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,QAAuB,EAAE,SAAiB;IACjF,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE,CAAA;IAC7B,MAAM,UAAU,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAAC,CAAA;IAClD,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,GAAG,CAAC,iCAAiC,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;IACzF,MAAM,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAA;IACnF,MAAM,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC,CAAA;AAC/E,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,OAAe;IACrD,IAAI,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAA;IAClD,IAAI,CAAC,UAAU,EAAE,CAAC;QACd,MAAM,SAAS,CAAC,OAAO,EAAE,MAAM,gBAAgB,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;QAClF,UAAU,GAAG,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAA;IAC/D,CAAC;IACD,MAAM,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,sBAAsB,CAAC,CAAC,CAAA;AAChG,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,OAAe;IAClD,IAAI,OAAO,CAAC,GAAG,CAAC,qBAAqB;QAAE,OAAO,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAA;IAC/E,KAAK,MAAM,WAAW,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;QAC/E,IAAI,CAAC,WAAW;YAAE,SAAQ;QAC1B,MAAM,UAAU,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAA;QACjD,IACI,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CACzB,GAAG,EAAE,CAAC,IAAI,EACV,GAAG,EAAE,CAAC,KAAK,CACd;YAED,OAAO,UAAU,CAAA;IACzB,CAAC;IACD,OAAO,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAA;AAC1D,CAAC;AAED,SAAS,iBAAiB,CAAC,SAAiB;IACxC,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,YAAY,CAAC,CAAA;AACnG,CAAC;AAED,SAAS,SAAS,CAAC,OAAe,EAAE,UAAkB,EAAE,IAAc,EAAE,KAAc;IAClF,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACnC,MAAM,KAAK,GAAG,QAAQ,CAAC,UAAU,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,GAAG,IAAI,GAAG,IAAI,EAAE,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE;YAC7G,IAAI,CAAC,KAAK;gBAAE,OAAO,OAAO,CAAC,MAAM,CAAC,CAAA;YAClC,MAAM,CACF,IAAI,QAAQ,CAAC,0BAA0B,EAAE,GAAG,MAAM,GAAG,MAAM,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;gBACnF,MAAM,EAAE,oIAAoI;aAC/I,CAAC,CACL,CAAA;QACL,CAAC,CAAC,CAAA;QACF,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;QAClC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,CAAA;IAC3B,CAAC,CAAC,CAAA;AACN,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
interface Exclusions {
|
|
2
|
+
dirs: ReadonlySet<string>;
|
|
3
|
+
files: ReadonlySet<string>;
|
|
4
|
+
}
|
|
5
|
+
export declare function buildSourceArchive(project: string, exclusions: Exclusions): {
|
|
6
|
+
zipBytes: Uint8Array;
|
|
7
|
+
fileCount: number;
|
|
8
|
+
zipSizeBytes: number;
|
|
9
|
+
};
|
|
10
|
+
export {};
|
|
11
|
+
//# sourceMappingURL=sourceArchive.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sourceArchive.d.ts","sourceRoot":"","sources":["../src/sourceArchive.ts"],"names":[],"mappings":"AAMA,UAAU,UAAU;IAChB,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;IACzB,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;CAC7B;AAID,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,GAAG;IAAE,QAAQ,EAAE,UAAU,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,CAM7I"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { zipSync } from "fflate";
|
|
2
|
+
import fs from "node:fs";
|
|
3
|
+
import path from "node:path";
|
|
4
|
+
import { CliError } from "./cliError.js";
|
|
5
|
+
const pythonDirectories = new Set([".venv", "venv", "__pycache__", ".mypy_cache", ".pytest_cache", ".ruff_cache"]);
|
|
6
|
+
export function buildSourceArchive(project, exclusions) {
|
|
7
|
+
const files = collectFiles(project, project, exclusions);
|
|
8
|
+
const fileCount = Object.keys(files).length;
|
|
9
|
+
if (fileCount === 0)
|
|
10
|
+
throw new CliError("no_files_to_deploy", "No files found to deploy");
|
|
11
|
+
const zipBytes = zipSync(files, { level: 6 });
|
|
12
|
+
return { zipBytes, fileCount, zipSizeBytes: zipBytes.length };
|
|
13
|
+
}
|
|
14
|
+
function collectFiles(directory, project, exclusions) {
|
|
15
|
+
const files = {};
|
|
16
|
+
if (fs.existsSync(path.join(directory, "pyvenv.cfg")))
|
|
17
|
+
return files;
|
|
18
|
+
for (const entry of fs.readdirSync(directory, { withFileTypes: true })) {
|
|
19
|
+
if (exclusions.dirs.has(entry.name) || exclusions.files.has(entry.name) || pythonDirectories.has(entry.name))
|
|
20
|
+
continue;
|
|
21
|
+
const source = path.join(directory, entry.name);
|
|
22
|
+
if (entry.isDirectory())
|
|
23
|
+
Object.assign(files, collectFiles(source, project, exclusions));
|
|
24
|
+
else if (entry.isFile())
|
|
25
|
+
files[path.relative(project, source).split(path.sep).join("/")] = new Uint8Array(fs.readFileSync(source));
|
|
26
|
+
}
|
|
27
|
+
return files;
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=sourceArchive.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sourceArchive.js","sourceRoot":"","sources":["../src/sourceArchive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAA;AAChC,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAOxC,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,aAAa,EAAE,eAAe,EAAE,aAAa,CAAC,CAAC,CAAA;AAElH,MAAM,UAAU,kBAAkB,CAAC,OAAe,EAAE,UAAsB;IACtE,MAAM,KAAK,GAAG,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,CAAC,CAAA;IACxD,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAA;IAC3C,IAAI,SAAS,KAAK,CAAC;QAAE,MAAM,IAAI,QAAQ,CAAC,oBAAoB,EAAE,0BAA0B,CAAC,CAAA;IACzF,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAA;IAC7C,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,YAAY,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAA;AACjE,CAAC;AAED,SAAS,YAAY,CAAC,SAAiB,EAAE,OAAe,EAAE,UAAsB;IAC5E,MAAM,KAAK,GAA+B,EAAE,CAAA;IAC5C,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;QAAE,OAAO,KAAK,CAAA;IACnE,KAAK,MAAM,KAAK,IAAI,EAAE,CAAC,WAAW,CAAC,SAAS,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;QACrE,IAAI,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;YAAE,SAAQ;QACtH,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;QAC/C,IAAI,KAAK,CAAC,WAAW,EAAE;YAAE,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC,CAAA;aACnF,IAAI,KAAK,CAAC,MAAM,EAAE;YAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,UAAU,CAAC,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAA;IACtI,CAAC;IACD,OAAO,KAAK,CAAA;AAChB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "terse-cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.8.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"license": "SEE LICENSE IN LICENSE.md",
|
|
6
6
|
"repository": {
|
|
@@ -32,15 +32,15 @@
|
|
|
32
32
|
"handlebars": "^4.7.9",
|
|
33
33
|
"import-meta-resolve": "^4.2.0",
|
|
34
34
|
"json-schema-to-typescript": "^15.0.4",
|
|
35
|
-
"durable-actors": "0.
|
|
35
|
+
"durable-actors": "0.5.5",
|
|
36
36
|
"little-durable": "0.1.3",
|
|
37
37
|
"luxon": "^3.7.2",
|
|
38
38
|
"ora": "^8.0.0",
|
|
39
39
|
"tsx": "^4.0.0",
|
|
40
40
|
"typescript": "^5.0.0",
|
|
41
41
|
"zod": "^4.3.6",
|
|
42
|
-
"terse-sdk": "0.
|
|
43
|
-
"terse-types": "0.
|
|
42
|
+
"terse-sdk": "0.8.0",
|
|
43
|
+
"terse-types": "0.8.0"
|
|
44
44
|
},
|
|
45
45
|
"devDependencies": {
|
|
46
46
|
"@types/luxon": "^3.7.1",
|
|
@@ -49,7 +49,7 @@
|
|
|
49
49
|
"scripts": {
|
|
50
50
|
"build": "rm -rf dist && tsc && chmod +x dist/index.js",
|
|
51
51
|
"dev": "tsc --watch --preserveWatchOutput",
|
|
52
|
-
"test": "node --import tsx --test test/**/*.test.ts",
|
|
52
|
+
"test": "node --import tsx --test test/**/*.test.ts tests/*.test.ts",
|
|
53
53
|
"test:actors:local": "TERSE_TEST_LOCAL_ACTORS=1 node --import tsx --test test/localActorRuntime.test.ts",
|
|
54
54
|
"format": "pnpm exec prettier --config ../../.prettierrc --write \"src/**/*.ts\"",
|
|
55
55
|
"format:check": "pnpm exec prettier --config ../../.prettierrc --check \"src/**/*.ts\"",
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"""Generate Python actor clients with Terse's managed connection defaults."""
|
|
2
|
+
|
|
3
|
+
import ast
|
|
4
|
+
import json
|
|
5
|
+
import sys
|
|
6
|
+
from pathlib import Path
|
|
7
|
+
|
|
8
|
+
from durable_actors.codegen import generate_client
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
def generate(output: Path) -> None:
|
|
12
|
+
contract = json.load(sys.stdin)
|
|
13
|
+
generate_client(contract, output)
|
|
14
|
+
module = "_terse_transport"
|
|
15
|
+
while any(
|
|
16
|
+
"_" + actor["actorName"].lower() == module for actor in contract["actors"]
|
|
17
|
+
):
|
|
18
|
+
module += "_"
|
|
19
|
+
files = [
|
|
20
|
+
output / "__init__.py",
|
|
21
|
+
output / "actors.py",
|
|
22
|
+
*(
|
|
23
|
+
output / ("_" + actor["actorName"].lower() + ".py")
|
|
24
|
+
for actor in contract["actors"]
|
|
25
|
+
),
|
|
26
|
+
]
|
|
27
|
+
for file in files:
|
|
28
|
+
tree = ast.parse(file.read_text())
|
|
29
|
+
for index, node in enumerate(tree.body):
|
|
30
|
+
if not isinstance(node, ast.ImportFrom):
|
|
31
|
+
continue
|
|
32
|
+
names = {
|
|
33
|
+
"durable_actors.client": "default_client",
|
|
34
|
+
"durable_actors.proxy": "prepare_authorization",
|
|
35
|
+
}
|
|
36
|
+
replacement = names.get(node.module or "")
|
|
37
|
+
selected = [name for name in node.names if name.name == replacement]
|
|
38
|
+
if selected:
|
|
39
|
+
node.names = [name for name in node.names if name not in selected]
|
|
40
|
+
injected = ast.ImportFrom(module=module, names=selected, level=1)
|
|
41
|
+
if node.names:
|
|
42
|
+
tree.body.insert(index + 1, injected)
|
|
43
|
+
else:
|
|
44
|
+
tree.body[index] = injected
|
|
45
|
+
file.write_text(ast.unparse(ast.fix_missing_locations(tree)) + "\n")
|
|
46
|
+
(output / (module + ".py")).write_text(
|
|
47
|
+
Path(__file__).with_name("transport.py").read_text()
|
|
48
|
+
)
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
if __name__ == "__main__":
|
|
52
|
+
generate(Path(sys.argv[1]))
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
from pydantic import BaseModel
|
|
2
|
+
from durable_actors import Actor, ActorSocket, emitted
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Member(BaseModel):
|
|
6
|
+
"""Identity supplied when connecting to the room."""
|
|
7
|
+
|
|
8
|
+
name: str
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class SendMessage(BaseModel):
|
|
12
|
+
"""A message sent by a connected member."""
|
|
13
|
+
|
|
14
|
+
text: str
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class Message(BaseModel):
|
|
18
|
+
"""A saved message with its author."""
|
|
19
|
+
|
|
20
|
+
author: Member
|
|
21
|
+
text: str
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
class Chat(Actor[Member, SendMessage, Message]):
|
|
25
|
+
"""A durable chat room with typed messages and live history."""
|
|
26
|
+
|
|
27
|
+
messages: list[Message] = emitted(default_factory=list)
|
|
28
|
+
|
|
29
|
+
def post(self, author: Member, text: str) -> Message:
|
|
30
|
+
"""Save a message and broadcast it to connected members."""
|
|
31
|
+
message = Message(author=author, text=text)
|
|
32
|
+
self.messages.append(message)
|
|
33
|
+
self.broadcast(message)
|
|
34
|
+
return message
|
|
35
|
+
|
|
36
|
+
def on_message(self, socket: ActorSocket[Member, Message], message: SendMessage) -> None:
|
|
37
|
+
self.post(socket.metadata, message.text)
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
durable-actors[codegen]>=0.5.5,<1
|
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
"""Terse connection defaults for this generated actor package."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
|
|
5
|
+
import atexit
|
|
6
|
+
import os
|
|
7
|
+
import re
|
|
8
|
+
from functools import cache
|
|
9
|
+
from typing import Any
|
|
10
|
+
from urllib.parse import unquote, urlsplit
|
|
11
|
+
|
|
12
|
+
import httpx
|
|
13
|
+
from durable_actors import (
|
|
14
|
+
ActorSession,
|
|
15
|
+
ActorSessionRejectedError,
|
|
16
|
+
ActorSessionTransport,
|
|
17
|
+
Client,
|
|
18
|
+
SocketGrant,
|
|
19
|
+
)
|
|
20
|
+
from durable_actors.client import ActorTransport
|
|
21
|
+
from durable_actors.proxy import (
|
|
22
|
+
SocketAuthorization,
|
|
23
|
+
prepare_authorization as issue_authorization,
|
|
24
|
+
)
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
@cache
|
|
28
|
+
def default_client() -> ActorTransport:
|
|
29
|
+
"""Use TERSE_ACTOR_URL and TERSE_API_KEY, with local development defaults."""
|
|
30
|
+
value = (
|
|
31
|
+
os.environ.get("TERSE_ACTOR_URL", "").strip()
|
|
32
|
+
or "http://127.0.0.1:7100/v1/projects/local/actors"
|
|
33
|
+
)
|
|
34
|
+
url = urlsplit(value)
|
|
35
|
+
match = re.fullmatch(r"/(?:(sdk|v1)/projects/)?([^/]+)/actors/?", url.path)
|
|
36
|
+
if (
|
|
37
|
+
not match
|
|
38
|
+
or url.scheme not in {"http", "https"}
|
|
39
|
+
or not url.hostname
|
|
40
|
+
or url.username
|
|
41
|
+
or url.password
|
|
42
|
+
or url.query
|
|
43
|
+
or url.fragment
|
|
44
|
+
):
|
|
45
|
+
raise ValueError(
|
|
46
|
+
"TERSE_ACTOR_URL must end in /<projectId>/actors or /v1/projects/<projectId>/actors, without credentials, query, or fragment"
|
|
47
|
+
)
|
|
48
|
+
project_id = unquote(match[2])
|
|
49
|
+
if not re.fullmatch(r"[A-Za-z0-9._-]{1,64}", project_id) or project_id in {
|
|
50
|
+
".",
|
|
51
|
+
"..",
|
|
52
|
+
}:
|
|
53
|
+
raise ValueError("Invalid project in TERSE_ACTOR_URL")
|
|
54
|
+
origin = f"{url.scheme}://{url.netloc}"
|
|
55
|
+
key = os.environ.get("TERSE_API_KEY", "").strip()
|
|
56
|
+
runtime = match[1] == "v1"
|
|
57
|
+
if not key and not (runtime and url.hostname in {"localhost", "127.0.0.1", "::1"}):
|
|
58
|
+
raise ValueError("Missing TERSE_API_KEY for this actor project")
|
|
59
|
+
client: Client | TerseTransport
|
|
60
|
+
if runtime:
|
|
61
|
+
client = Client(origin, project_id=project_id, api_key=key or None)
|
|
62
|
+
else:
|
|
63
|
+
client = TerseTransport(
|
|
64
|
+
f"{origin}/{project_id}/actors",
|
|
65
|
+
project_id,
|
|
66
|
+
key,
|
|
67
|
+
httpx.Client(timeout=180, follow_redirects=False),
|
|
68
|
+
)
|
|
69
|
+
atexit.register(client.close)
|
|
70
|
+
return client
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
def prepare_authorization(
|
|
74
|
+
authorization: SocketAuthorization[Any], transport: ActorTransport | None = None
|
|
75
|
+
) -> SocketGrant:
|
|
76
|
+
"""Issue a typed browser grant using the selected Terse project."""
|
|
77
|
+
return issue_authorization(
|
|
78
|
+
authorization, transport if transport is not None else default_client()
|
|
79
|
+
)
|
|
80
|
+
|
|
81
|
+
|
|
82
|
+
class TerseTransport:
|
|
83
|
+
"""Exchange Terse credentials for renewable runtime sessions and socket grants."""
|
|
84
|
+
|
|
85
|
+
def __init__(
|
|
86
|
+
self, actor_url: str, project_id: str, api_key: str, http: httpx.Client
|
|
87
|
+
) -> None:
|
|
88
|
+
self._actor_url = actor_url
|
|
89
|
+
self._project_id = project_id
|
|
90
|
+
self._headers = {
|
|
91
|
+
"Authorization": f"Bearer {api_key}",
|
|
92
|
+
"Accept": "application/json",
|
|
93
|
+
}
|
|
94
|
+
self._http = http
|
|
95
|
+
self._session = ActorSessionTransport(
|
|
96
|
+
project_id=project_id,
|
|
97
|
+
get_session=self._get_session,
|
|
98
|
+
create_transport=self._session_client,
|
|
99
|
+
)
|
|
100
|
+
|
|
101
|
+
def invoke(
|
|
102
|
+
self, actor_name: str, actor_id: str, method: str, args: list[Any]
|
|
103
|
+
) -> Any:
|
|
104
|
+
"""Invoke through a renewable actor session."""
|
|
105
|
+
return self._session.invoke(actor_name, actor_id, method, args)
|
|
106
|
+
|
|
107
|
+
def broadcast(self, actor_name: str, actor_id: str, message: Any) -> None:
|
|
108
|
+
"""Broadcast through the current actor session."""
|
|
109
|
+
self._session.broadcast(actor_name, actor_id, message)
|
|
110
|
+
|
|
111
|
+
def prepare_websocket(
|
|
112
|
+
self,
|
|
113
|
+
actor_name: str,
|
|
114
|
+
actor_id: str,
|
|
115
|
+
metadata: Any,
|
|
116
|
+
*,
|
|
117
|
+
authorization_lifetime_ms: int = 900000,
|
|
118
|
+
home_region: str | None = None,
|
|
119
|
+
) -> SocketGrant:
|
|
120
|
+
"""Ask Terse for a direct WebSocket grant for this actor."""
|
|
121
|
+
response = self._http.post(
|
|
122
|
+
self._actor_url,
|
|
123
|
+
headers=self._headers,
|
|
124
|
+
json={
|
|
125
|
+
"actorName": actor_name,
|
|
126
|
+
"actorId": actor_id,
|
|
127
|
+
"metadata": metadata,
|
|
128
|
+
"authorizationLifetimeMs": authorization_lifetime_ms,
|
|
129
|
+
**({"homeRegion": home_region} if home_region is not None else {}),
|
|
130
|
+
},
|
|
131
|
+
timeout=10,
|
|
132
|
+
follow_redirects=False,
|
|
133
|
+
)
|
|
134
|
+
response.raise_for_status()
|
|
135
|
+
grant = SocketGrant.model_validate(response.json(), strict=True)
|
|
136
|
+
if urlsplit(grant.websocket_url).scheme not in {"ws", "wss"}:
|
|
137
|
+
raise ValueError("Invalid WebSocket grant URL")
|
|
138
|
+
return grant
|
|
139
|
+
|
|
140
|
+
def close(self) -> None:
|
|
141
|
+
"""Stop session renewal and close this transport's HTTP client."""
|
|
142
|
+
self._session.close()
|
|
143
|
+
self._http.close()
|
|
144
|
+
|
|
145
|
+
def _get_session(self) -> ActorSession:
|
|
146
|
+
response = self._http.post(
|
|
147
|
+
self._actor_url + "/access",
|
|
148
|
+
headers=self._headers,
|
|
149
|
+
timeout=10,
|
|
150
|
+
follow_redirects=False,
|
|
151
|
+
)
|
|
152
|
+
if response.status_code in {401, 403}:
|
|
153
|
+
raise ActorSessionRejectedError(
|
|
154
|
+
f"Terse actor authorization failed (HTTP {response.status_code})"
|
|
155
|
+
)
|
|
156
|
+
response.raise_for_status()
|
|
157
|
+
value = response.json()
|
|
158
|
+
return ActorSession(
|
|
159
|
+
project_id=value["projectId"],
|
|
160
|
+
control_plane_url=value["controlPlaneUrl"],
|
|
161
|
+
token=value["token"],
|
|
162
|
+
expires_at_ms=value["expiresAtMs"],
|
|
163
|
+
)
|
|
164
|
+
|
|
165
|
+
def _session_client(self, session: ActorSession) -> Client:
|
|
166
|
+
return Client(
|
|
167
|
+
session.control_plane_url,
|
|
168
|
+
project_id=session.project_id,
|
|
169
|
+
api_key=session.token,
|
|
170
|
+
http=self._http,
|
|
171
|
+
)
|