@zlink-systems/stream-wire 0.13.0 → 0.15.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.
@@ -30,8 +30,8 @@ export declare const ZLINK_STREAM_FORMAT_MARKER = 242;
30
30
  export declare function encodeStreamWireFrame(header: Uint8Array, payload: Uint8Array): Uint8Array;
31
31
  export declare function decodeStreamWireFrame(frame: Uint8Array): ZLinkStreamWireFrame;
32
32
  export declare function tryDecodeStreamWireFrame(frame: Uint8Array): ZLinkStreamWireFrame | undefined;
33
- export declare function encodeStreamWireHeader(header: ZLinkStreamWireHeader, flags?: ZLinkStreamWireHeaderFlags): Uint8Array;
34
- export declare function decodeStreamWireHeader(header: Uint8Array, flags?: ZLinkStreamWireHeaderFlags, includeFlow?: boolean): ZLinkStreamWireHeader;
33
+ export declare function encodeStreamWireHeader(header: ZLinkStreamWireHeader, flagOverrides?: ZLinkStreamWireHeaderFlags): Uint8Array;
34
+ export declare function decodeStreamWireHeader(header: Uint8Array, flagOverrides?: ZLinkStreamWireHeaderFlags, includeFlow?: boolean): ZLinkStreamWireHeader;
35
35
  export declare function encodeStreamWireMetadata(metadata: ReadonlyMap<string, string>): Uint8Array;
36
36
  export declare function decodeStreamWireMetadata(metadata: Uint8Array): Map<string, string>;
37
37
  export declare function lz4PickleUncompressed(payload: Uint8Array): Uint8Array;
@@ -9,7 +9,8 @@ function lz4PickleUncompressed(payload) {
9
9
  pickled.set(payload, 1);
10
10
  return pickled;
11
11
  }
12
- function lz4UnpicklePayload(payload, maxDecompressedSize = defaultMaxDecompressedPayloadSize) {
12
+ function lz4UnpicklePayload(payload, maxSize) {
13
+ const maxDecompressedSize = maxSize ?? defaultMaxDecompressedPayloadSize;
13
14
  if (payload.length === 0) {
14
15
  return new Uint8Array();
15
16
  }
@@ -166,7 +167,8 @@ function tryDecodeStreamWireFrame(frame) {
166
167
  payload: frame.slice(6 + headerLength)
167
168
  };
168
169
  }
169
- function encodeStreamWireHeader(header, flags = defaultHeaderFlags) {
170
+ function encodeStreamWireHeader(header, flagOverrides) {
171
+ const flags = flagOverrides ?? defaultHeaderFlags;
170
172
  const reply = isReplyKind(header.kind);
171
173
  const packetName = reply ? "" : header.name;
172
174
  if (!reply) validateStreamWirePacketName(packetName);
@@ -227,7 +229,8 @@ function encodeStreamWireHeader(header, flags = defaultHeaderFlags) {
227
229
  }
228
230
  return buffer;
229
231
  }
230
- function decodeStreamWireHeader(header, flags = defaultHeaderFlags, includeFlow = true) {
232
+ function decodeStreamWireHeader(header, flagOverrides, includeFlow = true) {
233
+ const flags = flagOverrides ?? defaultHeaderFlags;
231
234
  let offset = 0;
232
235
  if (header.length < 5) {
233
236
  throw new Error("Stream header is incomplete.");
@@ -365,8 +368,8 @@ function decodeStreamWireMetadata(metadata) {
365
368
  function lz4PickleUncompressed2(payload) {
366
369
  return lz4PickleUncompressed(payload);
367
370
  }
368
- function lz4UnpicklePayload2(payload, maxDecompressedSize = defaultMaxDecompressedPayloadSize) {
369
- return lz4UnpicklePayload(payload, maxDecompressedSize);
371
+ function lz4UnpicklePayload2(payload, maxDecompressedSize) {
372
+ return lz4UnpicklePayload(payload, maxDecompressedSize ?? defaultMaxDecompressedPayloadSize);
370
373
  }
371
374
  function utf8Encode(value) {
372
375
  return new TextEncoder().encode(value);
@@ -1,3 +1,3 @@
1
1
  export declare const defaultMaxDecompressedPayloadSize: number;
2
2
  export declare function lz4PickleUncompressed(payload: Uint8Array): Uint8Array;
3
- export declare function lz4UnpicklePayload(payload: Uint8Array, maxDecompressedSize?: number): Uint8Array;
3
+ export declare function lz4UnpicklePayload(payload: Uint8Array, maxSize?: number): Uint8Array;
package/dist/index.d.ts CHANGED
@@ -30,8 +30,8 @@ export declare const ZLINK_STREAM_FORMAT_MARKER = 242;
30
30
  export declare function encodeStreamWireFrame(header: Uint8Array, payload: Uint8Array): Uint8Array;
31
31
  export declare function decodeStreamWireFrame(frame: Uint8Array): ZLinkStreamWireFrame;
32
32
  export declare function tryDecodeStreamWireFrame(frame: Uint8Array): ZLinkStreamWireFrame | undefined;
33
- export declare function encodeStreamWireHeader(header: ZLinkStreamWireHeader, flags?: ZLinkStreamWireHeaderFlags): Uint8Array;
34
- export declare function decodeStreamWireHeader(header: Uint8Array, flags?: ZLinkStreamWireHeaderFlags, includeFlow?: boolean): ZLinkStreamWireHeader;
33
+ export declare function encodeStreamWireHeader(header: ZLinkStreamWireHeader, flagOverrides?: ZLinkStreamWireHeaderFlags): Uint8Array;
34
+ export declare function decodeStreamWireHeader(header: Uint8Array, flagOverrides?: ZLinkStreamWireHeaderFlags, includeFlow?: boolean): ZLinkStreamWireHeader;
35
35
  export declare function encodeStreamWireMetadata(metadata: ReadonlyMap<string, string>): Uint8Array;
36
36
  export declare function decodeStreamWireMetadata(metadata: Uint8Array): Map<string, string>;
37
37
  export declare function lz4PickleUncompressed(payload: Uint8Array): Uint8Array;
package/dist/index.js CHANGED
@@ -21,6 +21,11 @@ var ZlinkStreamCodec;
21
21
  ZlinkStreamCodec[ZlinkStreamCodec["MessagePack"] = 2] = "MessagePack";
22
22
  ZlinkStreamCodec[ZlinkStreamCodec["Protobuf"] = 3] = "Protobuf";
23
23
  })(ZlinkStreamCodec || (exports.ZlinkStreamCodec = ZlinkStreamCodec = {}));
24
+ // The functions below resolve this inside their bodies rather than in a parameter
25
+ // default. The browser IIFE build of this package is committed into the Unity
26
+ // WebGL adapter as an emscripten pre-js, and emscripten's dead-code pass does not
27
+ // walk parameter default initializers: a binding whose only references are
28
+ // defaults is deleted, and the player fails at runtime with "not defined".
24
29
  const defaultHeaderFlags = {
25
30
  hasRequestSeq: 0x01,
26
31
  hasMetadata: 0x02,
@@ -72,7 +77,8 @@ function tryDecodeStreamWireFrame(frame) {
72
77
  payload: frame.slice(6 + headerLength)
73
78
  };
74
79
  }
75
- function encodeStreamWireHeader(header, flags = defaultHeaderFlags) {
80
+ function encodeStreamWireHeader(header, flagOverrides) {
81
+ const flags = flagOverrides ?? defaultHeaderFlags;
76
82
  const reply = isReplyKind(header.kind);
77
83
  const packetName = reply ? '' : header.name;
78
84
  if (!reply)
@@ -140,7 +146,8 @@ function encodeStreamWireHeader(header, flags = defaultHeaderFlags) {
140
146
  }
141
147
  return buffer;
142
148
  }
143
- function decodeStreamWireHeader(header, flags = defaultHeaderFlags, includeFlow = true) {
149
+ function decodeStreamWireHeader(header, flagOverrides, includeFlow = true) {
150
+ const flags = flagOverrides ?? defaultHeaderFlags;
144
151
  let offset = 0;
145
152
  if (header.length < 5) {
146
153
  throw new Error('Stream header is incomplete.');
@@ -281,8 +288,8 @@ function decodeStreamWireMetadata(metadata) {
281
288
  function lz4PickleUncompressed(payload) {
282
289
  return (0, lz4_pickle_1.lz4PickleUncompressed)(payload);
283
290
  }
284
- function lz4UnpicklePayload(payload, maxDecompressedSize = lz4_pickle_1.defaultMaxDecompressedPayloadSize) {
285
- return (0, lz4_pickle_1.lz4UnpicklePayload)(payload, maxDecompressedSize);
291
+ function lz4UnpicklePayload(payload, maxDecompressedSize) {
292
+ return (0, lz4_pickle_1.lz4UnpicklePayload)(payload, maxDecompressedSize ?? lz4_pickle_1.defaultMaxDecompressedPayloadSize);
286
293
  }
287
294
  function utf8Encode(value) {
288
295
  return new TextEncoder().encode(value);
@@ -1,3 +1,3 @@
1
1
  export declare const defaultMaxDecompressedPayloadSize: number;
2
2
  export declare function lz4PickleUncompressed(payload: Uint8Array): Uint8Array;
3
- export declare function lz4UnpicklePayload(payload: Uint8Array, maxDecompressedSize?: number): Uint8Array;
3
+ export declare function lz4UnpicklePayload(payload: Uint8Array, maxSize?: number): Uint8Array;
@@ -3,6 +3,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.defaultMaxDecompressedPayloadSize = void 0;
4
4
  exports.lz4PickleUncompressed = lz4PickleUncompressed;
5
5
  exports.lz4UnpicklePayload = lz4UnpicklePayload;
6
+ // Resolved inside the function body rather than in a parameter default: see the
7
+ // note on defaultHeaderFlags in index.ts. Emscripten's dead-code pass deletes a
8
+ // binding whose only references are parameter defaults.
6
9
  exports.defaultMaxDecompressedPayloadSize = 64 * 1024;
7
10
  function lz4PickleUncompressed(payload) {
8
11
  if (payload.length === 0) {
@@ -13,7 +16,8 @@ function lz4PickleUncompressed(payload) {
13
16
  pickled.set(payload, 1);
14
17
  return pickled;
15
18
  }
16
- function lz4UnpicklePayload(payload, maxDecompressedSize = exports.defaultMaxDecompressedPayloadSize) {
19
+ function lz4UnpicklePayload(payload, maxSize) {
20
+ const maxDecompressedSize = maxSize ?? exports.defaultMaxDecompressedPayloadSize;
17
21
  if (payload.length === 0) {
18
22
  return new Uint8Array();
19
23
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zlink-systems/stream-wire",
3
- "version": "0.13.0",
3
+ "version": "0.15.0",
4
4
  "license": "SEE LICENSE IN LICENSE",
5
5
  "repository": {
6
6
  "type": "git",