durable-actors 0.7.6 → 0.7.8

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.
@@ -7,12 +7,13 @@ declare class RemoteActorClient extends HttpActorClient {
7
7
  constructor(options?: DurableActorsClientOptions, dependencies?: RemoteActorClientDependencies);
8
8
  connect(actorName: string, actorId: string, metadata: unknown, schemas?: ActorSchemas): Promise<ActorConnection>;
9
9
  broadcast(actorName: string, actorId: string, message: ActorSocketMessage): Promise<void>;
10
+ private socketGrant;
10
11
  private deliverSocketEffects;
11
12
  }
12
13
  interface RemoteActorClientDependencies extends HttpActorClientDependencies {
13
14
  readonly connectWebSocket?: WebSocketConnector;
14
15
  }
15
- type WebSocketConnector = (url: string, schemas: ActorSchemas) => Promise<ActorConnection>;
16
+ type WebSocketConnector = (url: string, schemas: ActorSchemas, observe: (event: "opened" | "first_message") => void) => Promise<ActorConnection>;
16
17
  export { RemoteActorClient };
17
18
  export type { DurableActorsClientOptions, RemoteActorClientDependencies };
18
19
  //# sourceMappingURL=remoteClient.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"remoteClient.d.ts","sourceRoot":"","sources":["../../src/client/remoteClient.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAG7E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAC7D,OAAO,KAAK,EAAE,0BAA0B,EAAE,2BAA2B,EAAE,MAAM,6BAA6B,CAAA;AAQ1G,cAAM,iBAAkB,SAAQ,eAAe;IAC3C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAoB;gBACzC,OAAO,CAAC,EAAE,0BAA0B,EAAE,YAAY,GAAE,6BAAkC;IAO5F,OAAO,CACT,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,OAAO,EACjB,OAAO,GAAE,YAAiB,GAC3B,OAAO,CAAC,eAAe,CAAC;IA8BrB,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;YAiBjF,oBAAoB;CAkBrC;AAuBD,UAAU,6BAA8B,SAAQ,2BAA2B;IACvE,QAAQ,CAAC,gBAAgB,CAAC,EAAE,kBAAkB,CAAA;CACjD;AACD,KAAK,kBAAkB,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,KAAK,OAAO,CAAC,eAAe,CAAC,CAAA;AAE1F,OAAO,EAAE,iBAAiB,EAAE,CAAA;AAC5B,YAAY,EAAE,0BAA0B,EAAE,6BAA6B,EAAE,CAAA"}
1
+ {"version":3,"file":"remoteClient.d.ts","sourceRoot":"","sources":["../../src/client/remoteClient.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAG7E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAC7D,OAAO,KAAK,EAAE,0BAA0B,EAAE,2BAA2B,EAAE,MAAM,6BAA6B,CAAA;AAQ1G,cAAM,iBAAkB,SAAQ,eAAe;IAC3C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAoB;gBACzC,OAAO,CAAC,EAAE,0BAA0B,EAAE,YAAY,GAAE,6BAAkC;IAO5F,OAAO,CACT,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,OAAO,EACjB,OAAO,GAAE,YAAiB,GAC3B,OAAO,CAAC,eAAe,CAAC;IAgCrB,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;YAiBjF,WAAW;YAmCX,oBAAoB;CAkBrC;AA2BD,UAAU,6BAA8B,SAAQ,2BAA2B;IACvE,QAAQ,CAAC,gBAAgB,CAAC,EAAE,kBAAkB,CAAA;CACjD;AACD,KAAK,kBAAkB,GAAG,CACtB,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,YAAY,EACrB,OAAO,EAAE,CAAC,KAAK,EAAE,QAAQ,GAAG,eAAe,KAAK,IAAI,KACnD,OAAO,CAAC,eAAe,CAAC,CAAA;AAE7B,OAAO,EAAE,iBAAiB,EAAE,CAAA;AAC5B,YAAY,EAAE,0BAA0B,EAAE,6BAA6B,EAAE,CAAA"}
@@ -19,6 +19,49 @@ class RemoteActorClient extends HttpActorClient {
19
19
  }
20
20
  async connect(actorName, actorId, metadata, schemas = {}) {
21
21
  const requestId = validateActorComponent("request ID", this.requestId());
22
+ const timeline = new LatencyTimeline(this.monotonicNow);
23
+ let outcome = "failed";
24
+ try {
25
+ const url = await this.socketGrant(actorName, actorId, metadata, schemas, requestId);
26
+ timeline.mark("grant_received");
27
+ const connection = await this.connectWebSocket(url, schemas, event => {
28
+ if (event === "opened")
29
+ timeline.mark("socket_opened");
30
+ else
31
+ this.telemetry({
32
+ event: "actor_client_socket_first_message",
33
+ request_id: requestId,
34
+ actor_name: actorName,
35
+ actor_id: actorId,
36
+ ...timeline.finish()
37
+ });
38
+ });
39
+ outcome = "connected";
40
+ return connection;
41
+ }
42
+ finally {
43
+ this.telemetry({
44
+ event: "actor_client_socket_connect",
45
+ request_id: requestId,
46
+ actor_name: actorName,
47
+ actor_id: actorId,
48
+ outcome,
49
+ ...timeline.finish()
50
+ });
51
+ }
52
+ }
53
+ async broadcast(actorName, actorId, message) {
54
+ const requestId = validateActorComponent("request ID", this.requestId());
55
+ const actor = {
56
+ requestId,
57
+ projectId: this.settings.projectId,
58
+ actorName: validateActorComponent("actor name", actorName),
59
+ actorId: validateActorComponent("actor ID", actorId)
60
+ };
61
+ const target = await this.target(actor, new LatencyTimeline(this.monotonicNow));
62
+ await this.deliverSocketEffects(target, actor, [{ type: "broadcast", message: socketMessage(message), except_connection_ids: [], tags: [] }], "actor socket broadcast");
63
+ }
64
+ async socketGrant(actorName, actorId, metadata, schemas, requestId) {
22
65
  const actor = {
23
66
  projectId: this.settings.projectId,
24
67
  actorName: validateActorComponent("actor name", actorName),
@@ -41,18 +84,7 @@ class RemoteActorClient extends HttpActorClient {
41
84
  websocketUrl: z.url().refine(url => ["ws:", "wss:"].includes(new URL(url).protocol))
42
85
  })
43
86
  .parse(await response.json());
44
- return this.connectWebSocket(grant.websocketUrl, schemas);
45
- }
46
- async broadcast(actorName, actorId, message) {
47
- const requestId = validateActorComponent("request ID", this.requestId());
48
- const actor = {
49
- requestId,
50
- projectId: this.settings.projectId,
51
- actorName: validateActorComponent("actor name", actorName),
52
- actorId: validateActorComponent("actor ID", actorId)
53
- };
54
- const target = await this.target(actor, new LatencyTimeline(this.monotonicNow));
55
- await this.deliverSocketEffects(target, actor, [{ type: "broadcast", message: socketMessage(message), except_connection_ids: [], tags: [] }], "actor socket broadcast");
87
+ return grant.websocketUrl;
56
88
  }
57
89
  async deliverSocketEffects(target, actor, effects, context) {
58
90
  try {
@@ -65,9 +97,9 @@ class RemoteActorClient extends HttpActorClient {
65
97
  }
66
98
  }
67
99
  }
68
- function openWebSocket(url, schemas) {
100
+ function openWebSocket(url, schemas, observe) {
69
101
  const socket = new WebSocket(url);
70
- const connection = new SocketConnection(socket, schemas);
102
+ const connection = new SocketConnection(socket, schemas, observe);
71
103
  return new Promise((resolve, reject) => {
72
104
  let opened = false;
73
105
  socket.addEventListener("open", () => {
@@ -1 +1 @@
1
- {"version":3,"file":"remoteClient.js","sourceRoot":"","sources":["../../src/client/remoteClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"remoteClient.js","sourceRoot":"","sources":["../../src/client/remoteClient.ts"],"names":[],"mappings":"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"}
@@ -4,8 +4,10 @@ import type { ActorSchemas } from "../actor/socketValidation.js";
4
4
  declare class SocketConnection implements ActorConnection {
5
5
  private readonly socket;
6
6
  private readonly schemas;
7
+ private readonly observe;
7
8
  private readonly events;
8
- constructor(socket: Pick<WebSocket, "readyState" | "send" | "close" | "addEventListener">, schemas?: ActorSchemas);
9
+ private receivedFirstMessage;
10
+ constructor(socket: Pick<WebSocket, "readyState" | "send" | "close" | "addEventListener">, schemas?: ActorSchemas, observe?: (event: "opened" | "first_message") => void);
9
11
  get readyState(): number;
10
12
  send(data: ActorSocketMessage): void;
11
13
  close(code?: number, reason?: string): void;
@@ -1 +1 @@
1
- {"version":3,"file":"socketConnection.d.ts","sourceRoot":"","sources":["../../src/client/socketConnection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,SAAS,MAAM,IAAI,CAAA;AAG/B,OAAO,KAAK,EAAE,eAAe,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAEtG,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA;AAEhE,cAAM,gBAAiB,YAAW,eAAe;IAIzC,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAJ5B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoB;gBAGtB,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,YAAY,GAAG,MAAM,GAAG,OAAO,GAAG,kBAAkB,CAAC,EAC7E,OAAO,GAAE,YAAiB;IAU/C,IAAI,UAAU,IAAI,MAAM,CAEvB;IAED,IAAI,CAAC,IAAI,EAAE,kBAAkB,GAAG,IAAI;IAIpC,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAI3C,gBAAgB,CAAC,IAAI,SAAS,MAAM,uBAAuB,EACvD,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,CAAC,KAAK,EAAE,uBAAuB,CAAC,IAAI,CAAC,KAAK,IAAI,GACzD,IAAI;IAIP,mBAAmB,CAAC,IAAI,SAAS,MAAM,uBAAuB,EAC1D,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,CAAC,KAAK,EAAE,uBAAuB,CAAC,IAAI,CAAC,KAAK,IAAI,GACzD,IAAI;IAIP,OAAO,CAAC,OAAO;IAWf,OAAO,CAAC,aAAa;CAIxB;AAED,OAAO,EAAE,gBAAgB,EAAE,CAAA"}
1
+ {"version":3,"file":"socketConnection.d.ts","sourceRoot":"","sources":["../../src/client/socketConnection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,SAAS,MAAM,IAAI,CAAA;AAG/B,OAAO,KAAK,EAAE,eAAe,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAEtG,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA;AAEhE,cAAM,gBAAiB,YAAW,eAAe;IAKzC,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAN5B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoB;IAC3C,OAAO,CAAC,oBAAoB,CAAQ;gBAGf,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,YAAY,GAAG,MAAM,GAAG,OAAO,GAAG,kBAAkB,CAAC,EAC7E,OAAO,GAAE,YAAiB,EAC1B,OAAO,GAAE,CAAC,KAAK,EAAE,QAAQ,GAAG,eAAe,KAAK,IAAe;IAapF,IAAI,UAAU,IAAI,MAAM,CAEvB;IAED,IAAI,CAAC,IAAI,EAAE,kBAAkB,GAAG,IAAI;IAIpC,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAI3C,gBAAgB,CAAC,IAAI,SAAS,MAAM,uBAAuB,EACvD,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,CAAC,KAAK,EAAE,uBAAuB,CAAC,IAAI,CAAC,KAAK,IAAI,GACzD,IAAI;IAIP,mBAAmB,CAAC,IAAI,SAAS,MAAM,uBAAuB,EAC1D,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,CAAC,KAAK,EAAE,uBAAuB,CAAC,IAAI,CAAC,KAAK,IAAI,GACzD,IAAI;IAIP,OAAO,CAAC,OAAO;IAef,OAAO,CAAC,aAAa;CAIxB;AAED,OAAO,EAAE,gBAAgB,EAAE,CAAA"}
@@ -3,11 +3,17 @@ import { incomingMessage, receivedMessage } from "../actor/socketValidation.js";
3
3
  class SocketConnection {
4
4
  socket;
5
5
  schemas;
6
+ observe;
6
7
  events = new EventTarget();
7
- constructor(socket, schemas = {}) {
8
+ receivedFirstMessage = false;
9
+ constructor(socket, schemas = {}, observe = () => { }) {
8
10
  this.socket = socket;
9
11
  this.schemas = schemas;
10
- socket.addEventListener("open", () => this.events.dispatchEvent(new Event("open")));
12
+ this.observe = observe;
13
+ socket.addEventListener("open", () => {
14
+ this.observe("opened");
15
+ this.events.dispatchEvent(new Event("open"));
16
+ });
11
17
  socket.addEventListener("error", () => this.events.dispatchEvent(new Event("error")));
12
18
  socket.addEventListener("close", ({ code, reason, wasClean }) => this.events.dispatchEvent(Object.assign(new Event("close"), { code, reason, wasClean })));
13
19
  socket.addEventListener("message", event => this.receive(event.data));
@@ -37,6 +43,10 @@ class SocketConnection {
37
43
  catch {
38
44
  return this.rejectMessage(1007, "socket message is not valid JSON");
39
45
  }
46
+ if (!this.receivedFirstMessage) {
47
+ this.receivedFirstMessage = true;
48
+ this.observe("first_message");
49
+ }
40
50
  this.events.dispatchEvent(new MessageEvent("message", { data: value }));
41
51
  }
42
52
  rejectMessage(code, reason) {
@@ -1 +1 @@
1
- {"version":3,"file":"socketConnection.js","sourceRoot":"","sources":["../../src/client/socketConnection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"socketConnection.js","sourceRoot":"","sources":["../../src/client/socketConnection.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@ import path from "node:path";
5
5
  import { x } from "tar";
6
6
  import { actorEnvironment } from "./environment.js";
7
7
  const executables = ["durable-actors", "litestream"];
8
- const bundleFiles = [...executables, "LICENSE.litestream"];
8
+ const bundleFiles = [...executables, "LICENSE.litestream", "LICENSE.terse-ltx"];
9
9
  const maximumBytes = 200 * 1024 * 1024;
10
10
  export async function fetchRuntimeExecutablePath() {
11
11
  const environment = actorEnvironment(process.env);
@@ -1 +1 @@
1
- {"version":3,"file":"runtimeInstaller.js","sourceRoot":"","sources":["../src/runtimeInstaller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAChG,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACjC,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AAEnD,MAAM,WAAW,GAAG,CAAC,gBAAgB,EAAE,YAAY,CAAC,CAAA;AACpD,MAAM,WAAW,GAAG,CAAC,GAAG,WAAW,EAAE,oBAAoB,CAAC,CAAA;AAC1D,MAAM,YAAY,GAAG,GAAG,GAAG,IAAI,GAAG,IAAI,CAAA;AAEtC,MAAM,CAAC,KAAK,UAAU,0BAA0B;IAC5C,MAAM,WAAW,GAAG,gBAAgB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;IACjD,IAAI,WAAW,CAAC,qBAAqB;QAAE,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,qBAAqB,CAAC,CAAA;IAC7F,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,IAAI,GAAG,CAAC,iBAAiB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC,CAAA;IACnG,OAAO,IAAI,gBAAgB,CAAC;QACxB,OAAO;QACP,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,cAAc,EAAE,WAAW,CAAC,wBAAwB,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,uBAAuB,CAAC;KACxG,CAAC,CAAC,OAAO,EAAE,CAAA;AAChB,CAAC;AASD,MAAM,OAAO,gBAAgB;IAEJ;IACA;IAFrB,YACqB,OAAuB,EACvB,WAA6C,eAAe;QAD5D,YAAO,GAAP,OAAO,CAAgB;QACvB,aAAQ,GAAR,QAAQ,CAAoD;IAC9E,CAAC;IAEJ,KAAK,CAAC,OAAO;QACT,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC,OAAO,CAAA;QAChE,IAAI,CAAC,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAC9E,MAAM,IAAI,KAAK,CAAC,2BAA2B,QAAQ,IAAI,IAAI,sCAAsC,CAAC,CAAA;QACtG,CAAC;QACD,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,OAAO,EAAE,GAAG,QAAQ,IAAI,IAAI,EAAE,CAAC,CAAA;QAC7E,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAA;QACrD,IAAI,MAAM,cAAc,CAAC,WAAW,CAAC;YAAE,OAAO,MAAM,CAAA;QACpD,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;QAC3D,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,WAAW,GAAG,CAAC,CAAA;QAChD,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;YAC1B,IAAI,CAAC;gBACD,MAAM,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,CAAA;YACtC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,IAAI,CAAC,CAAC,MAAM,cAAc,CAAC,WAAW,CAAC,CAAC;oBAAE,MAAM,KAAK,CAAA;YACzD,CAAC;YACD,OAAO,MAAM,CAAA;QACjB,CAAC;gBAAS,CAAC;YACP,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;QACvD,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,MAAM,CAAC,SAAiB;QAClC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,OAAO,CAAA;QAChD,MAAM,GAAG,GAAG,gEAAgE,OAAO,mBAAmB,QAAQ,IAAI,IAAI,SAAS,CAAA;QAC/H,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,CAAA;QACnG,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;QACjE,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,QAAQ,EAAE,CAAC;YACvG,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAA;QACnF,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAA;QACnD,MAAM,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QAC9B,MAAM,CAAC,CAAC;YACJ,IAAI;YACJ,GAAG,EAAE,SAAS;YACd,MAAM,EAAE,IAAI;YACZ,MAAM,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CACpB,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,MAAM,IAAI,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,IAAI,IAAI,YAAY;SAC3G,CAAC,CAAA;QACF,MAAM,EAAE,CAAC,IAAI,CAAC,CAAA;QACd,IAAI,CAAC,CAAC,MAAM,cAAc,CAAC,SAAS,CAAC,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAA;QACxF,MAAM,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAA;IACxF,CAAC;CACJ;AAED,KAAK,UAAU,cAAc,CAAC,SAAiB;IAC3C,OAAO,OAAO,CAAC,GAAG,CACd,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CACnB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;SAC5B,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;SAC5C,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAC1B,CACJ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAA;AAC7C,CAAC;AAED,KAAK,UAAU,eAAe,CAAC,GAAW;IACtC,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAC3E,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI;QAC9B,MAAM,IAAI,KAAK,CACX,iCAAiC,QAAQ,CAAC,MAAM,qFAAqF,GAAG,EAAE,CAC7I,CAAA;IACL,MAAM,MAAM,GAAiB,EAAE,CAAA;IAC/B,IAAI,IAAI,GAAG,CAAC,CAAA;IACZ,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;QACtC,IAAI,IAAI,KAAK,CAAC,UAAU,CAAA;QACxB,IAAI,IAAI,GAAG,YAAY;YAAE,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAA;QACpF,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IACtB,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;AAChC,CAAC"}
1
+ {"version":3,"file":"runtimeInstaller.js","sourceRoot":"","sources":["../src/runtimeInstaller.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,7 @@
10
10
  "check": "tsc --noEmit"
11
11
  },
12
12
  "dependencies": {
13
- "durable-actors": "0.7.6"
13
+ "durable-actors": "0.7.8"
14
14
  },
15
15
  "devDependencies": {
16
16
  "@types/node": "^22.0.0",
@@ -15,7 +15,7 @@
15
15
  "@ai-sdk/react": "^4.0.100",
16
16
  "ai": "^7.0.97",
17
17
  "express": "^5.2.1",
18
- "durable-actors": "0.7.6",
18
+ "durable-actors": "0.7.8",
19
19
  "react": "^19.3.0",
20
20
  "react-dom": "^19.3.0"
21
21
  },
@@ -12,7 +12,7 @@
12
12
  },
13
13
  "dependencies": {
14
14
  "express": "^5.2.1",
15
- "durable-actors": "0.7.6",
15
+ "durable-actors": "0.7.8",
16
16
  "react": "^19.3.0",
17
17
  "react-dom": "^19.3.0"
18
18
  },
@@ -19,7 +19,7 @@
19
19
  "@tiptap/y-tiptap": "^3.0.7",
20
20
  "express": "^5.2.1",
21
21
  "lib0": "^0.2.117",
22
- "durable-actors": "0.7.6",
22
+ "durable-actors": "0.7.8",
23
23
  "react": "^19.3.0",
24
24
  "react-dom": "^19.3.0",
25
25
  "yjs": "^13.6.32"
@@ -2,7 +2,7 @@
2
2
  "name": "durable-actors-example-python",
3
3
  "private": true,
4
4
  "dependencies": {
5
- "durable-actors": "0.7.6"
5
+ "durable-actors": "0.7.8"
6
6
  },
7
7
  "scripts": {
8
8
  "dev": "durable-actors dev",
@@ -2,7 +2,7 @@
2
2
  name = "durable-actors-example"
3
3
  version = "0.1.0"
4
4
  requires-python = ">=3.11"
5
- dependencies = ["durable-actors[codegen]==0.7.6"]
5
+ dependencies = ["durable-actors[codegen]==0.7.8"]
6
6
 
7
7
  [tool.mypy]
8
8
  strict = true
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "durable-actors",
3
- "version": "0.7.6",
3
+ "version": "0.7.8",
4
4
  "description": "Provider-neutral actors for sandbox compute",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -92,7 +92,7 @@
92
92
  "vite": "^8.3.0",
93
93
  "ws": "^8.18.3",
94
94
  "zod": "^4.3.6",
95
- "durable-actors-observer": "0.7.6"
95
+ "durable-actors-observer": "0.7.8"
96
96
  },
97
97
  "devDependencies": {
98
98
  "@types/node": "^22.0.0",