@hitch42/applet 0.1.1-beta.16 → 0.1.1-beta.17

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.
@@ -19,8 +19,6 @@ declare function cloudflareRequestFields(request: Request): {
19
19
  cfRay: string | undefined;
20
20
  traceparent: string | undefined;
21
21
  colo: string | undefined;
22
- country: string | undefined;
23
- asn: number | undefined;
24
22
  };
25
23
  type NoteLog = {
26
24
  set(fields: Record<string, unknown>): void;
@@ -1,2 +1,2 @@
1
- import { a as errorNote, c as requestIdFrom, i as createNoteLog, n as REQUEST_CONTEXT_CHANNEL, o as isUuid, r as cloudflareRequestFields, s as publishNote, t as APP_CONTEXT_CHANNEL } from "../log-context-zu8U9Sjm.js";
1
+ import { a as errorNote, c as requestIdFrom, i as createNoteLog, n as REQUEST_CONTEXT_CHANNEL, o as isUuid, r as cloudflareRequestFields, s as publishNote, t as APP_CONTEXT_CHANNEL } from "../log-context-DWznGjfz.js";
2
2
  export { APP_CONTEXT_CHANNEL, REQUEST_CONTEXT_CHANNEL, cloudflareRequestFields, createNoteLog, errorNote, isUuid, publishNote, requestIdFrom };
@@ -1,6 +1,6 @@
1
1
  import { a as HITCH_ORG_CODE_HEADER, c as HITCH_SCHEDULE_HEADER, d as HITCH_USER_HEADER, f as HITCH_WORKFLOW_HEADER, i as HITCH_ORGANIZATION_HEADER, l as HITCH_SCHEDULE_RUN_HEADER, m as HITCH_WORKFLOW_RUN_HEADER, n as HITCH_APPLET_HEADER, o as HITCH_RELEASE_HEADER, p as HITCH_WORKFLOW_INVOCATION_HEADER, r as HITCH_APPLET_TOKEN_HEADER, u as HITCH_SESSION_HEADER } from "../headers-DkNr9MLJ.js";
2
2
  import { a as getRequestContext, o as runWithRequestContext, r as toMilliseconds, t as MAX_DURATION_MS } from "../workflow-CTo2kZF1.js";
3
- import { a as errorNote, c as requestIdFrom, i as createNoteLog, r as cloudflareRequestFields, s as publishNote, t as APP_CONTEXT_CHANNEL } from "../log-context-zu8U9Sjm.js";
3
+ import { a as errorNote, c as requestIdFrom, i as createNoteLog, r as cloudflareRequestFields, s as publishNote, t as APP_CONTEXT_CHANNEL } from "../log-context-DWznGjfz.js";
4
4
  import { a as workflowOutcomeSchema, i as workflowInvocationRequestSchema, n as runWorkflowJournal, r as journalEntrySchema, t as WorkflowFailedError } from "../workflow-engine-BOTzURKM.js";
5
5
  import { RPCHandler } from "@orpc/server/fetch";
6
6
  import { z } from "zod";
package/dist/applet.js CHANGED
@@ -111,7 +111,7 @@ async function main() {
111
111
  return;
112
112
  }
113
113
  if (positionals.length === 1 && positionals[0] === "deploy" && values["no-install"] === void 0 && noModeFlags && noGitFlags && noVariableFlags && noLogFlags) {
114
- await (await import("./deploy-C5JDIn2Y.js")).runDeploy({});
114
+ await (await import("./deploy-Da93able.js")).runDeploy({});
115
115
  return;
116
116
  }
117
117
  if (positionals.length === 2 && positionals[0] === "init" && noModeFlags && noVariableFlags && noLogFlags) {
@@ -2546,6 +2546,28 @@ async function deployApplet(appletRoot, options, logPrefix = "", sourceHash) {
2546
2546
  if (result.unset_variables?.length) console.warn(`${logPrefix}Warning: declared variables not set: ${result.unset_variables.join(", ")}. Set them with applet variables set.`);
2547
2547
  return result;
2548
2548
  }
2549
+ function buildConcurrency() {
2550
+ const value = process.env.APPLET_BUILD_CONCURRENCY;
2551
+ if (value === void 0) return Infinity;
2552
+ if (/^[1-9]\d*$/.test(value)) return Number(value);
2553
+ console.warn(`Ignoring APPLET_BUILD_CONCURRENCY=${JSON.stringify(value)}: it must be a positive integer. Building every applet at once.`);
2554
+ return Infinity;
2555
+ }
2556
+ function semaphore(limit) {
2557
+ let active = 0;
2558
+ const waiting = [];
2559
+ return async (task) => {
2560
+ if (active < limit) active++;
2561
+ else await new Promise((resolve) => waiting.push(resolve));
2562
+ try {
2563
+ return await task();
2564
+ } finally {
2565
+ const next = waiting.shift();
2566
+ if (next === void 0) active--;
2567
+ else next();
2568
+ }
2569
+ };
2570
+ }
2549
2571
  async function workspaceAppletRoots(workspaceRoot) {
2550
2572
  const appletsDir = resolve(workspaceRoot, "applets");
2551
2573
  const roots = (await readdir(appletsDir, { withFileTypes: true }).catch((error) => {
@@ -2607,9 +2629,10 @@ async function runDeploy(options) {
2607
2629
  if (selectedRoots.length === 0) return;
2608
2630
  if (options.dist === void 0) await prepareWorkspaceBuild(root, appletRoots);
2609
2631
  const interactive = github === void 0 && process.stdin.isTTY === true;
2632
+ const buildSlot = semaphore(buildConcurrency());
2610
2633
  const deploy = async (appletRoot) => {
2611
2634
  const logPrefix = `[${relative(root, appletRoot)}] `;
2612
- if (options.dist === void 0) await buildPreparedApplet(appletRoot, ".hitch/dist", interactive ? "" : logPrefix);
2635
+ if (options.dist === void 0) await buildSlot(() => buildPreparedApplet(appletRoot, ".hitch/dist", interactive ? "" : logPrefix));
2613
2636
  await deployApplet(appletRoot, {
2614
2637
  ...options,
2615
2638
  dist: options.dist ?? ".hitch/dist"
@@ -42,14 +42,10 @@ function cloudflareRequestFields(request) {
42
42
  const cf = Reflect.get(request, "cf");
43
43
  const field = (key) => typeof cf === "object" && cf !== null && key in cf ? Reflect.get(cf, key) : void 0;
44
44
  const colo = field("colo");
45
- const country = field("country");
46
- const asn = field("asn");
47
45
  return {
48
46
  cfRay: request.headers.get("cf-ray") ?? void 0,
49
47
  traceparent: request.headers.get("traceparent") ?? void 0,
50
- colo: typeof colo === "string" ? colo : void 0,
51
- country: typeof country === "string" ? country : void 0,
52
- asn: typeof asn === "number" ? asn : void 0
48
+ colo: typeof colo === "string" ? colo : void 0
53
49
  };
54
50
  }
55
51
  function createNoteLog(initial) {
package/dist/server.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { n as withFilesUpload, r as getRegisteredHitchContract } from "./upload-DRbVhuDm.js";
2
2
  import { t as HITCH_APPLET_CODE_HEADER } from "./headers-DkNr9MLJ.js";
3
3
  import { a as getRequestContext, i as getIdentityBearer, n as createWorkflow, s as tryGetRequestContext } from "./workflow-CTo2kZF1.js";
4
- import { s as publishNote, t as APP_CONTEXT_CHANNEL } from "./log-context-zu8U9Sjm.js";
4
+ import { s as publishNote, t as APP_CONTEXT_CHANNEL } from "./log-context-DWznGjfz.js";
5
5
  import { n as withBatchRecorder, t as createLazyClientProxy } from "./lazy-client-x0DCI98S.js";
6
6
  import { createORPCClient } from "@orpc/client";
7
7
  import { OpenAPILink } from "@orpc/openapi-client/fetch";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hitch42/applet",
3
- "version": "0.1.1-beta.16",
3
+ "version": "0.1.1-beta.17",
4
4
  "license": "MIT",
5
5
  "bin": {
6
6
  "applet": "./dist/applet.js"