@rivetkit/engine-runner 0.0.0-pr.4673.d7d209b → 0.0.0-pr.4674.b6084cc

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rivetkit/engine-runner",
3
- "version": "0.0.0-pr.4673.d7d209b",
3
+ "version": "0.0.0-pr.4674.b6084cc",
4
4
  "type": "module",
5
5
  "files": [
6
6
  "dist",
@@ -25,8 +25,8 @@
25
25
  "bench": "tsx benches/actor-lifecycle.bench.ts"
26
26
  },
27
27
  "dependencies": {
28
- "@rivetkit/virtual-websocket": "0.0.0-pr.4673.d7d209b",
29
- "@rivetkit/engine-runner-protocol": "0.0.0-pr.4673.d7d209b",
28
+ "@rivetkit/virtual-websocket": "0.0.0-pr.4674.b6084cc",
29
+ "@rivetkit/engine-runner-protocol": "0.0.0-pr.4674.b6084cc",
30
30
  "uuid": "^12.0.0",
31
31
  "pino": "^9.9.5",
32
32
  "ws": "^8.18.3"
package/src/mod.ts CHANGED
@@ -12,7 +12,9 @@ import {
12
12
  unreachable,
13
13
  } from "./utils";
14
14
  import { importWebSocket } from "./websocket.js";
15
- import { v4 as uuidv4 } from "uuid";
15
+ import {
16
+ v4 as uuidv4,
17
+ } from "uuid";
16
18
 
17
19
  export type { HibernatingWebSocketMetadata };
18
20
  export { RunnerActor, type ActorConfig };
@@ -1251,10 +1253,9 @@ export class Runner {
1251
1253
  actorState = {
1252
1254
  tag: "ActorStateStopped",
1253
1255
  val: {
1254
- code:
1255
- actor.stopIntentSent || this.#draining
1256
- ? protocol.StopCode.Ok
1257
- : protocol.StopCode.Error,
1256
+ code: actor.stopIntentSent || this.#draining
1257
+ ? protocol.StopCode.Ok
1258
+ : protocol.StopCode.Error,
1258
1259
  message: null,
1259
1260
  },
1260
1261
  };
package/src/tunnel.ts CHANGED
@@ -10,13 +10,7 @@ import {
10
10
  stringifyToClientTunnelMessageKind,
11
11
  stringifyToServerTunnelMessageKind,
12
12
  } from "./stringify";
13
- import {
14
- arraysEqual,
15
- idToStr,
16
- MAX_PAYLOAD_SIZE,
17
- stringifyError,
18
- unreachable,
19
- } from "./utils";
13
+ import { arraysEqual, idToStr, MAX_PAYLOAD_SIZE, stringifyError, unreachable } from "./utils";
20
14
  import {
21
15
  HIBERNATABLE_SYMBOL,
22
16
  WebSocketTunnelAdapter,
@@ -1,16 +1,7 @@
1
1
  import type { Logger } from "pino";
2
- import {
3
- VirtualWebSocket,
4
- type UniversalWebSocket,
5
- type RivetMessageEvent,
6
- } from "@rivetkit/virtual-websocket";
2
+ import { VirtualWebSocket, type UniversalWebSocket, type RivetMessageEvent } from "@rivetkit/virtual-websocket";
7
3
  import type { Tunnel } from "./tunnel";
8
- import {
9
- MAX_PAYLOAD_SIZE,
10
- wrappingAddU16,
11
- wrappingLteU16,
12
- wrappingSubU16,
13
- } from "./utils";
4
+ import { MAX_PAYLOAD_SIZE, wrappingAddU16, wrappingLteU16, wrappingSubU16 } from "./utils";
14
5
 
15
6
  export const HIBERNATABLE_SYMBOL = Symbol("hibernatable");
16
7
 
@@ -86,28 +77,18 @@ export class WebSocketTunnelAdapter {
86
77
 
87
78
  messageData = data;
88
79
  } else if (data instanceof ArrayBuffer) {
89
- if (data.byteLength > MAX_PAYLOAD_SIZE)
90
- throw new Error("WebSocket message too large");
80
+ if (data.byteLength > MAX_PAYLOAD_SIZE) throw new Error("WebSocket message too large");
91
81
 
92
82
  isBinary = true;
93
83
  messageData = data;
94
84
  } else if (ArrayBuffer.isView(data)) {
95
- if (data.byteLength > MAX_PAYLOAD_SIZE)
96
- throw new Error("WebSocket message too large");
85
+ if (data.byteLength > MAX_PAYLOAD_SIZE) throw new Error("WebSocket message too large");
97
86
 
98
87
  isBinary = true;
99
88
  const view = data;
100
- const buffer =
101
- view.buffer instanceof SharedArrayBuffer
102
- ? new Uint8Array(
103
- view.buffer,
104
- view.byteOffset,
105
- view.byteLength,
106
- ).slice().buffer
107
- : view.buffer.slice(
108
- view.byteOffset,
109
- view.byteOffset + view.byteLength,
110
- );
89
+ const buffer = view.buffer instanceof SharedArrayBuffer
90
+ ? new Uint8Array(view.buffer, view.byteOffset, view.byteLength).slice().buffer
91
+ : view.buffer.slice(view.byteOffset, view.byteOffset + view.byteLength);
111
92
  messageData = buffer as ArrayBuffer;
112
93
  } else {
113
94
  throw new Error("Unsupported data type");
@@ -120,11 +101,7 @@ export class WebSocketTunnelAdapter {
120
101
  _handleOpen(requestId: ArrayBuffer): void {
121
102
  if (this.#readyState !== 0) return;
122
103
  this.#readyState = 1;
123
- this.#ws.dispatchEvent({
124
- type: "open",
125
- rivetRequestId: requestId,
126
- target: this.#ws,
127
- });
104
+ this.#ws.dispatchEvent({ type: "open", rivetRequestId: requestId, target: this.#ws });
128
105
  }
129
106
 
130
107
  // Called by Tunnel when message is received
@@ -170,10 +147,7 @@ export class WebSocketTunnelAdapter {
170
147
  expectedIndex,
171
148
  receivedIndex: serverMessageIndex,
172
149
  closeReason,
173
- gap: wrappingSubU16(
174
- wrappingSubU16(serverMessageIndex, previousIndex),
175
- 1,
176
- ),
150
+ gap: wrappingSubU16(wrappingSubU16(serverMessageIndex, previousIndex), 1),
177
151
  });
178
152
  this.#close(1008, closeReason, true);
179
153
  return true;
@@ -188,10 +162,7 @@ export class WebSocketTunnelAdapter {
188
162
  if (this.#binaryType === "nodebuffer") {
189
163
  messageData = Buffer.from(data);
190
164
  } else if (this.#binaryType === "arraybuffer") {
191
- messageData = data.buffer.slice(
192
- data.byteOffset,
193
- data.byteOffset + data.byteLength,
194
- );
165
+ messageData = data.buffer.slice(data.byteOffset, data.byteOffset + data.byteLength);
195
166
  }
196
167
  }
197
168
 
@@ -207,11 +178,7 @@ export class WebSocketTunnelAdapter {
207
178
  }
208
179
 
209
180
  // Called by Tunnel when close is received
210
- _handleClose(
211
- _requestId: ArrayBuffer,
212
- code?: number,
213
- reason?: string,
214
- ): void {
181
+ _handleClose(_requestId: ArrayBuffer, code?: number, reason?: string): void {
215
182
  this.#close(code, reason, true);
216
183
  }
217
184
 
@@ -225,11 +192,7 @@ export class WebSocketTunnelAdapter {
225
192
  this.#close(code, reason, true);
226
193
  }
227
194
 
228
- #close(
229
- code: number | undefined,
230
- reason: string | undefined,
231
- sendCallback: boolean,
232
- ): void {
195
+ #close(code: number | undefined, reason: string | undefined, sendCallback: boolean): void {
233
196
  if (this.#readyState >= 2) return;
234
197
 
235
198
  this.#readyState = 2;