@lodestar/reqresp 1.11.0-dev.4d5f7773f7 → 1.11.0-dev.56ee70c4eb

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.
@@ -1,4 +1,4 @@
1
- import varint from "varint";
1
+ import { decode as varintDecode, encodingLength as varintEncodingLength } from "uint8-varint";
2
2
  import { Uint8ArrayList } from "uint8arraylist";
3
3
  import { SnappyFramesUncompress } from "./snappyFrames/uncompress.js";
4
4
  import { maxEncodedLen } from "./utils.js";
@@ -25,23 +25,16 @@ export async function readSszSnappyHeader(bufferedSource, type) {
25
25
  if (buffer.length === 0) {
26
26
  continue;
27
27
  }
28
- // Use Number.MAX_SAFE_INTEGER to guard against this check https://github.com/chrisdickinson/varint/pull/20
29
- // On varint v6 if the number is > Number.MAX_SAFE_INTEGER `varint.decode` throws.
30
- // Since MAX_VARINT_BYTES = 10, this will always be the case for the condition below.
31
- // The check for MAX_VARINT_BYTES is kept for completeness
32
28
  let sszDataLength;
33
29
  try {
34
- sszDataLength = varint.decode(buffer.slice());
30
+ sszDataLength = varintDecode(buffer.subarray());
35
31
  }
36
32
  catch (e) {
37
33
  throw new SszSnappyError({ code: SszSnappyErrorCode.INVALID_VARINT_BYTES_COUNT, bytes: Infinity });
38
34
  }
39
35
  // MUST validate: the unsigned protobuf varint used for the length-prefix MUST not be longer than 10 bytes
40
- // Check for varintBytes > 0 to guard against NaN, or 0 values
41
- const varintBytes = varint.decode.bytes;
42
- if (varintBytes === undefined || varintBytes > MAX_VARINT_BYTES || !(varintBytes > 0)) {
43
- throw new SszSnappyError({ code: SszSnappyErrorCode.INVALID_VARINT_BYTES_COUNT, bytes: varintBytes ?? 0 });
44
- }
36
+ // encodingLength function only returns 1-8 inclusive
37
+ const varintBytes = varintEncodingLength(sszDataLength);
45
38
  buffer.consume(varintBytes);
46
39
  // MUST validate: the length-prefix is within the expected size bounds derived from the payload SSZ type.
47
40
  const minSize = type.minSize;
@@ -1 +1 @@
1
- {"version":3,"file":"decode.js","sourceRoot":"","sources":["../../../src/encodingStrategies/sszSnappy/decode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"decode.js","sourceRoot":"","sources":["../../../src/encodingStrategies/sszSnappy/decode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,IAAI,YAAY,EAAE,cAAc,IAAI,oBAAoB,EAAC,MAAM,cAAc,CAAC;AAC5F,OAAO,EAAC,cAAc,EAAC,MAAM,gBAAgB,CAAC;AAG9C,OAAO,EAAC,sBAAsB,EAAC,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAC,aAAa,EAAC,MAAM,YAAY,CAAC;AACzC,OAAO,EAAC,cAAc,EAAE,kBAAkB,EAAC,MAAM,aAAa,CAAC;AAE/D,MAAM,CAAC,MAAM,gBAAgB,GAAG,EAAE,CAAC;AAEnC;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,cAA8B,EAAE,IAAe;IACxF,MAAM,aAAa,GAAG,MAAM,mBAAmB,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;IAEtE,OAAO,iBAAiB,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC;AAC1D,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,cAA8B,EAAE,IAAe;IACvF,IAAI,KAAK,EAAE,MAAM,MAAM,IAAI,cAAc,EAAE;QACzC,0BAA0B;QAC1B,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;YACvB,SAAS;SACV;QAED,IAAI,aAAqB,CAAC;QAC1B,IAAI;YACF,aAAa,GAAG,YAAY,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;SACjD;QAAC,OAAO,CAAC,EAAE;YACV,MAAM,IAAI,cAAc,CAAC,EAAC,IAAI,EAAE,kBAAkB,CAAC,0BAA0B,EAAE,KAAK,EAAE,QAAQ,EAAC,CAAC,CAAC;SAClG;QAED,0GAA0G;QAC1G,qDAAqD;QACrD,MAAM,WAAW,GAAG,oBAAoB,CAAC,aAAa,CAAC,CAAC;QACxD,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAE5B,yGAAyG;QACzG,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC7B,IAAI,aAAa,GAAG,OAAO,EAAE;YAC3B,MAAM,IAAI,cAAc,CAAC,EAAC,IAAI,EAAE,kBAAkB,CAAC,kBAAkB,EAAE,OAAO,EAAE,aAAa,EAAC,CAAC,CAAC;SACjG;QACD,IAAI,aAAa,GAAG,OAAO,EAAE;YAC3B,MAAM,IAAI,cAAc,CAAC,EAAC,IAAI,EAAE,kBAAkB,CAAC,iBAAiB,EAAE,OAAO,EAAE,aAAa,EAAC,CAAC,CAAC;SAChG;QAED,OAAO,aAAa,CAAC;KACtB;IAED,MAAM,IAAI,cAAc,CAAC,EAAC,IAAI,EAAE,kBAAkB,CAAC,cAAc,EAAC,CAAC,CAAC;AACtE,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,cAA8B,EAAE,aAAqB;IAC3F,MAAM,YAAY,GAAG,IAAI,sBAAsB,EAAE,CAAC;IAClD,MAAM,gBAAgB,GAAG,IAAI,cAAc,EAAE,CAAC;IAC9C,IAAI,SAAS,GAAG,CAAC,CAAC;IAElB,IAAI,KAAK,EAAE,MAAM,MAAM,IAAI,cAAc,EAAE;QACzC,2GAA2G;QAC3G,SAAS,IAAI,MAAM,CAAC,MAAM,CAAC;QAC3B,IAAI,SAAS,GAAG,aAAa,CAAC,aAAa,CAAC,EAAE;YAC5C,MAAM,IAAI,cAAc,CAAC,EAAC,IAAI,EAAE,kBAAkB,CAAC,mBAAmB,EAAE,SAAS,EAAE,aAAa,EAAC,CAAC,CAAC;SACpG;QAED,qCAAqC;QACrC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;YACvB,SAAS;SACV;QAED,8FAA8F;QAC9F,IAAI;YACF,MAAM,YAAY,GAAG,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YACrD,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAC9B,IAAI,YAAY,KAAK,IAAI,EAAE;gBACzB,gBAAgB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;aACvC;SACF;QAAC,OAAO,CAAC,EAAE;YACV,MAAM,IAAI,cAAc,CAAC,EAAC,IAAI,EAAE,kBAAkB,CAAC,kBAAkB,EAAE,iBAAiB,EAAE,CAAU,EAAC,CAAC,CAAC;SACxG;QAED,gEAAgE;QAChE,IAAI,gBAAgB,CAAC,MAAM,GAAG,aAAa,EAAE;YAC3C,MAAM,IAAI,cAAc,CAAC,EAAC,IAAI,EAAE,kBAAkB,CAAC,cAAc,EAAE,aAAa,EAAC,CAAC,CAAC;SACpF;QAED,0CAA0C;QAC1C,IAAI,gBAAgB,CAAC,MAAM,GAAG,aAAa,EAAE;YAC3C,SAAS;SACV;QAED,sBAAsB;QACtB,OAAO,gBAAgB,CAAC,QAAQ,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC;KACpD;IAED,2GAA2G;IAC3G,MAAM,IAAI,cAAc,CAAC,EAAC,IAAI,EAAE,kBAAkB,CAAC,cAAc,EAAC,CAAC,CAAC;AACtE,CAAC"}
@@ -1,4 +1,4 @@
1
- import varint from "varint";
1
+ import { encode as varintEncode } from "uint8-varint";
2
2
  import { encodeSnappy } from "./snappyFrames/compress.js";
3
3
  /**
4
4
  * ssz_snappy encoding strategy writer.
@@ -13,7 +13,7 @@ export const writeSszSnappyPayload = encodeSszSnappy;
13
13
  */
14
14
  export async function* encodeSszSnappy(bytes) {
15
15
  // MUST encode the length of the raw SSZ bytes, encoded as an unsigned protobuf varint
16
- yield Buffer.from(varint.encode(bytes.length));
16
+ yield Buffer.from(varintEncode(bytes.length));
17
17
  // By first computing and writing the SSZ byte length, the SSZ encoder can then directly
18
18
  // write the chunk contents to the stream. Snappy writer compresses frame by frame
19
19
  yield* encodeSnappy(bytes);
@@ -1 +1 @@
1
- {"version":3,"file":"encode.js","sourceRoot":"","sources":["../../../src/encodingStrategies/sszSnappy/encode.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAC,YAAY,EAAC,MAAM,4BAA4B,CAAC;AAExD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,eAAgE,CAAC;AAEtG;;GAEG;AACH,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,eAAe,CAAC,KAAa;IAClD,sFAAsF;IACtF,MAAM,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IAE/C,wFAAwF;IACxF,kFAAkF;IAClF,KAAK,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;AAC7B,CAAC"}
1
+ {"version":3,"file":"encode.js","sourceRoot":"","sources":["../../../src/encodingStrategies/sszSnappy/encode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,IAAI,YAAY,EAAC,MAAM,cAAc,CAAC;AACpD,OAAO,EAAC,YAAY,EAAC,MAAM,4BAA4B,CAAC;AAExD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,eAAgE,CAAC;AAEtG;;GAEG;AACH,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,eAAe,CAAC,KAAa;IAClD,sFAAsF;IACtF,MAAM,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IAE9C,wFAAwF;IACxF,kFAAkF;IAClF,KAAK,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;AAC7B,CAAC"}
package/package.json CHANGED
@@ -11,7 +11,7 @@
11
11
  "bugs": {
12
12
  "url": "https://github.com/ChainSafe/lodestar/issues"
13
13
  },
14
- "version": "1.11.0-dev.4d5f7773f7",
14
+ "version": "1.11.0-dev.56ee70c4eb",
15
15
  "type": "module",
16
16
  "exports": {
17
17
  ".": {
@@ -56,19 +56,19 @@
56
56
  "dependencies": {
57
57
  "@chainsafe/fast-crc32c": "^4.1.1",
58
58
  "@libp2p/interface": "^0.1.1",
59
- "@lodestar/config": "1.11.0-dev.4d5f7773f7",
60
- "@lodestar/params": "1.11.0-dev.4d5f7773f7",
61
- "@lodestar/utils": "1.11.0-dev.4d5f7773f7",
59
+ "@lodestar/config": "1.11.0-dev.56ee70c4eb",
60
+ "@lodestar/params": "1.11.0-dev.56ee70c4eb",
61
+ "@lodestar/utils": "1.11.0-dev.56ee70c4eb",
62
62
  "it-all": "^3.0.2",
63
63
  "it-pipe": "^3.0.1",
64
64
  "snappy": "^7.2.2",
65
65
  "snappyjs": "^0.7.0",
66
- "uint8arraylist": "^2.4.3",
67
- "varint": "^6.0.0"
66
+ "uint8-varint": "^2.0.1",
67
+ "uint8arraylist": "^2.4.3"
68
68
  },
69
69
  "devDependencies": {
70
- "@lodestar/logger": "1.11.0-dev.4d5f7773f7",
71
- "@lodestar/types": "1.11.0-dev.4d5f7773f7",
70
+ "@lodestar/logger": "1.11.0-dev.56ee70c4eb",
71
+ "@lodestar/types": "1.11.0-dev.56ee70c4eb",
72
72
  "libp2p": "0.46.3"
73
73
  },
74
74
  "peerDependencies": {
@@ -82,5 +82,5 @@
82
82
  "reqresp",
83
83
  "blockchain"
84
84
  ],
85
- "gitHead": "f85185f82a9222a829145141fe8172f6788a4ded"
85
+ "gitHead": "87524407d402c1839624c0e46d01174aef1d5d42"
86
86
  }