@lodestar/beacon-node 1.26.0-dev.ee9d4fa72b → 1.26.0-dev.f9d080cde3

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.
Files changed (59) hide show
  1. package/lib/api/impl/beacon/blocks/index.js +4 -6
  2. package/lib/api/impl/beacon/blocks/index.js.map +1 -1
  3. package/lib/api/impl/beacon/pool/index.js +12 -8
  4. package/lib/api/impl/beacon/pool/index.js.map +1 -1
  5. package/lib/chain/blocks/types.d.ts +9 -19
  6. package/lib/chain/blocks/types.js +7 -14
  7. package/lib/chain/blocks/types.js.map +1 -1
  8. package/lib/chain/blocks/verifyBlocksDataAvailability.js +1 -1
  9. package/lib/chain/blocks/verifyBlocksDataAvailability.js.map +1 -1
  10. package/lib/chain/blocks/writeBlockInputToDb.js +2 -1
  11. package/lib/chain/blocks/writeBlockInputToDb.js.map +1 -1
  12. package/lib/chain/chain.d.ts +2 -0
  13. package/lib/chain/chain.js +2 -0
  14. package/lib/chain/chain.js.map +1 -1
  15. package/lib/chain/interface.d.ts +2 -0
  16. package/lib/chain/interface.js.map +1 -1
  17. package/lib/chain/opPools/opPool.d.ts +3 -2
  18. package/lib/chain/opPools/opPool.js +7 -7
  19. package/lib/chain/opPools/opPool.js.map +1 -1
  20. package/lib/chain/seenCache/seenGossipBlockInput.d.ts +0 -2
  21. package/lib/chain/seenCache/seenGossipBlockInput.js +8 -13
  22. package/lib/chain/seenCache/seenGossipBlockInput.js.map +1 -1
  23. package/lib/chain/validation/attesterSlashing.d.ts +4 -4
  24. package/lib/chain/validation/attesterSlashing.js +1 -2
  25. package/lib/chain/validation/attesterSlashing.js.map +1 -1
  26. package/lib/db/buckets.d.ts +1 -1
  27. package/lib/db/buckets.js +1 -1
  28. package/lib/db/buckets.js.map +1 -1
  29. package/lib/db/repositories/attesterSlashing.d.ts +2 -2
  30. package/lib/db/repositories/attesterSlashing.js +8 -2
  31. package/lib/db/repositories/attesterSlashing.js.map +1 -1
  32. package/lib/network/gossip/interface.d.ts +3 -3
  33. package/lib/network/gossip/interface.js.map +1 -1
  34. package/lib/network/gossip/topic.d.ts +945 -945
  35. package/lib/network/interface.d.ts +2 -2
  36. package/lib/network/network.d.ts +2 -2
  37. package/lib/network/network.js +1 -1
  38. package/lib/network/network.js.map +1 -1
  39. package/lib/network/processor/gossipHandlers.js +13 -11
  40. package/lib/network/processor/gossipHandlers.js.map +1 -1
  41. package/lib/network/reqresp/ReqRespBeaconNode.js +19 -13
  42. package/lib/network/reqresp/ReqRespBeaconNode.js.map +1 -1
  43. package/lib/network/reqresp/beaconBlocksMaybeBlobsByRange.js +4 -5
  44. package/lib/network/reqresp/beaconBlocksMaybeBlobsByRange.js.map +1 -1
  45. package/lib/network/reqresp/beaconBlocksMaybeBlobsByRoot.js +6 -7
  46. package/lib/network/reqresp/beaconBlocksMaybeBlobsByRoot.js.map +1 -1
  47. package/lib/network/reqresp/protocols.d.ts +16 -15
  48. package/lib/network/reqresp/protocols.js +3 -3
  49. package/lib/network/reqresp/protocols.js.map +1 -1
  50. package/lib/network/reqresp/rateLimit.d.ts +2 -1
  51. package/lib/network/reqresp/rateLimit.js +14 -17
  52. package/lib/network/reqresp/rateLimit.js.map +1 -1
  53. package/lib/network/reqresp/types.d.ts +1 -1
  54. package/lib/network/reqresp/types.js +2 -3
  55. package/lib/network/reqresp/types.js.map +1 -1
  56. package/lib/util/serializedCache.d.ts +12 -0
  57. package/lib/util/serializedCache.js +20 -0
  58. package/lib/util/serializedCache.js.map +1 -0
  59. package/package.json +14 -14
@@ -1,18 +1,19 @@
1
1
  import { BeaconConfig } from "@lodestar/config";
2
+ import { ForkName } from "@lodestar/params";
2
3
  import { ProtocolNoHandler } from "./types.js";
3
- export declare const Goodbye: (config: BeaconConfig) => ProtocolNoHandler;
4
- export declare const Metadata: (config: BeaconConfig) => ProtocolNoHandler;
5
- export declare const MetadataV2: (config: BeaconConfig) => ProtocolNoHandler;
6
- export declare const Ping: (config: BeaconConfig) => ProtocolNoHandler;
7
- export declare const Status: (config: BeaconConfig) => ProtocolNoHandler;
8
- export declare const BeaconBlocksByRange: (config: BeaconConfig) => ProtocolNoHandler;
9
- export declare const BeaconBlocksByRangeV2: (config: BeaconConfig) => ProtocolNoHandler;
10
- export declare const BeaconBlocksByRoot: (config: BeaconConfig) => ProtocolNoHandler;
11
- export declare const BeaconBlocksByRootV2: (config: BeaconConfig) => ProtocolNoHandler;
12
- export declare const BlobSidecarsByRange: (config: BeaconConfig) => ProtocolNoHandler;
13
- export declare const BlobSidecarsByRoot: (config: BeaconConfig) => ProtocolNoHandler;
14
- export declare const LightClientBootstrap: (config: BeaconConfig) => ProtocolNoHandler;
15
- export declare const LightClientFinalityUpdate: (config: BeaconConfig) => ProtocolNoHandler;
16
- export declare const LightClientOptimisticUpdate: (config: BeaconConfig) => ProtocolNoHandler;
17
- export declare const LightClientUpdatesByRange: (config: BeaconConfig) => ProtocolNoHandler;
4
+ export declare const Goodbye: (fork: ForkName, config: BeaconConfig) => ProtocolNoHandler;
5
+ export declare const Metadata: (fork: ForkName, config: BeaconConfig) => ProtocolNoHandler;
6
+ export declare const MetadataV2: (fork: ForkName, config: BeaconConfig) => ProtocolNoHandler;
7
+ export declare const Ping: (fork: ForkName, config: BeaconConfig) => ProtocolNoHandler;
8
+ export declare const Status: (fork: ForkName, config: BeaconConfig) => ProtocolNoHandler;
9
+ export declare const BeaconBlocksByRange: (fork: ForkName, config: BeaconConfig) => ProtocolNoHandler;
10
+ export declare const BeaconBlocksByRangeV2: (fork: ForkName, config: BeaconConfig) => ProtocolNoHandler;
11
+ export declare const BeaconBlocksByRoot: (fork: ForkName, config: BeaconConfig) => ProtocolNoHandler;
12
+ export declare const BeaconBlocksByRootV2: (fork: ForkName, config: BeaconConfig) => ProtocolNoHandler;
13
+ export declare const BlobSidecarsByRange: (fork: ForkName, config: BeaconConfig) => ProtocolNoHandler;
14
+ export declare const BlobSidecarsByRoot: (fork: ForkName, config: BeaconConfig) => ProtocolNoHandler;
15
+ export declare const LightClientBootstrap: (fork: ForkName, config: BeaconConfig) => ProtocolNoHandler;
16
+ export declare const LightClientFinalityUpdate: (fork: ForkName, config: BeaconConfig) => ProtocolNoHandler;
17
+ export declare const LightClientOptimisticUpdate: (fork: ForkName, config: BeaconConfig) => ProtocolNoHandler;
18
+ export declare const LightClientUpdatesByRange: (fork: ForkName, config: BeaconConfig) => ProtocolNoHandler;
18
19
  //# sourceMappingURL=protocols.d.ts.map
@@ -77,13 +77,13 @@ export const LightClientUpdatesByRange = toProtocol({
77
77
  contextBytesType: ContextBytesType.ForkDigest,
78
78
  });
79
79
  function toProtocol(protocol) {
80
- return (config) => ({
80
+ return (fork, config) => ({
81
81
  method: protocol.method,
82
82
  version: protocol.version,
83
83
  encoding: Encoding.SSZ_SNAPPY,
84
84
  contextBytes: toContextBytes(protocol.contextBytesType, config),
85
- inboundRateLimits: rateLimitQuotas(config)[protocol.method],
86
- requestSizes: requestSszTypeByMethod(config)[protocol.method],
85
+ inboundRateLimits: rateLimitQuotas(fork, config)[protocol.method],
86
+ requestSizes: requestSszTypeByMethod(fork, config)[protocol.method],
87
87
  responseSizes: (fork) => responseSszTypeByMethod[protocol.method](fork, protocol.version),
88
88
  });
89
89
  }
@@ -1 +1 @@
1
- {"version":3,"file":"protocols.js","sourceRoot":"","sources":["../../../src/network/reqresp/protocols.ts"],"names":[],"mappings":"AACA,OAAO,EAAsB,gBAAgB,EAAE,QAAQ,EAAC,MAAM,mBAAmB,CAAC;AAClF,OAAO,EAAC,eAAe,EAAC,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAoB,aAAa,EAAE,OAAO,EAAE,sBAAsB,EAAE,uBAAuB,EAAC,MAAM,YAAY,CAAC;AAEtH,MAAM,CAAC,MAAM,OAAO,GAAG,UAAU,CAAC;IAChC,MAAM,EAAE,aAAa,CAAC,OAAO;IAC7B,OAAO,EAAE,OAAO,CAAC,EAAE;IACnB,gBAAgB,EAAE,gBAAgB,CAAC,KAAK;CACzC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,QAAQ,GAAG,UAAU,CAAC;IACjC,MAAM,EAAE,aAAa,CAAC,QAAQ;IAC9B,OAAO,EAAE,OAAO,CAAC,EAAE;IACnB,gBAAgB,EAAE,gBAAgB,CAAC,KAAK;CACzC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,UAAU,GAAG,UAAU,CAAC;IACnC,MAAM,EAAE,aAAa,CAAC,QAAQ;IAC9B,OAAO,EAAE,OAAO,CAAC,EAAE;IACnB,gBAAgB,EAAE,gBAAgB,CAAC,KAAK;CACzC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,IAAI,GAAG,UAAU,CAAC;IAC7B,MAAM,EAAE,aAAa,CAAC,IAAI;IAC1B,OAAO,EAAE,OAAO,CAAC,EAAE;IACnB,gBAAgB,EAAE,gBAAgB,CAAC,KAAK;CACzC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,MAAM,GAAG,UAAU,CAAC;IAC/B,MAAM,EAAE,aAAa,CAAC,MAAM;IAC5B,OAAO,EAAE,OAAO,CAAC,EAAE;IACnB,gBAAgB,EAAE,gBAAgB,CAAC,KAAK;CACzC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAAG,UAAU,CAAC;IAC5C,MAAM,EAAE,aAAa,CAAC,mBAAmB;IACzC,OAAO,EAAE,OAAO,CAAC,EAAE;IACnB,gBAAgB,EAAE,gBAAgB,CAAC,KAAK;CACzC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,qBAAqB,GAAG,UAAU,CAAC;IAC9C,MAAM,EAAE,aAAa,CAAC,mBAAmB;IACzC,OAAO,EAAE,OAAO,CAAC,EAAE;IACnB,gBAAgB,EAAE,gBAAgB,CAAC,UAAU;CAC9C,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,kBAAkB,GAAG,UAAU,CAAC;IAC3C,MAAM,EAAE,aAAa,CAAC,kBAAkB;IACxC,OAAO,EAAE,OAAO,CAAC,EAAE;IACnB,gBAAgB,EAAE,gBAAgB,CAAC,KAAK;CACzC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,oBAAoB,GAAG,UAAU,CAAC;IAC7C,MAAM,EAAE,aAAa,CAAC,kBAAkB;IACxC,OAAO,EAAE,OAAO,CAAC,EAAE;IACnB,gBAAgB,EAAE,gBAAgB,CAAC,UAAU;CAC9C,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAAG,UAAU,CAAC;IAC5C,MAAM,EAAE,aAAa,CAAC,mBAAmB;IACzC,OAAO,EAAE,OAAO,CAAC,EAAE;IACnB,gBAAgB,EAAE,gBAAgB,CAAC,UAAU;CAC9C,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,kBAAkB,GAAG,UAAU,CAAC;IAC3C,MAAM,EAAE,aAAa,CAAC,kBAAkB;IACxC,OAAO,EAAE,OAAO,CAAC,EAAE;IACnB,gBAAgB,EAAE,gBAAgB,CAAC,UAAU;CAC9C,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,oBAAoB,GAAG,UAAU,CAAC;IAC7C,MAAM,EAAE,aAAa,CAAC,oBAAoB;IAC1C,OAAO,EAAE,OAAO,CAAC,EAAE;IACnB,gBAAgB,EAAE,gBAAgB,CAAC,UAAU;CAC9C,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,yBAAyB,GAAG,UAAU,CAAC;IAClD,MAAM,EAAE,aAAa,CAAC,yBAAyB;IAC/C,OAAO,EAAE,OAAO,CAAC,EAAE;IACnB,gBAAgB,EAAE,gBAAgB,CAAC,UAAU;CAC9C,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,2BAA2B,GAAG,UAAU,CAAC;IACpD,MAAM,EAAE,aAAa,CAAC,2BAA2B;IACjD,OAAO,EAAE,OAAO,CAAC,EAAE;IACnB,gBAAgB,EAAE,gBAAgB,CAAC,UAAU;CAC9C,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,yBAAyB,GAAG,UAAU,CAAC;IAClD,MAAM,EAAE,aAAa,CAAC,yBAAyB;IAC/C,OAAO,EAAE,OAAO,CAAC,EAAE;IACnB,gBAAgB,EAAE,gBAAgB,CAAC,UAAU;CAC9C,CAAC,CAAC;AAQH,SAAS,UAAU,CAAC,QAAyB;IAC3C,OAAO,CAAC,MAAoB,EAAqB,EAAE,CAAC,CAAC;QACnD,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,QAAQ,EAAE,QAAQ,CAAC,UAAU;QAC7B,YAAY,EAAE,cAAc,CAAC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;QAC/D,iBAAiB,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC3D,YAAY,EAAE,sBAAsB,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC7D,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,uBAAuB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC;KAC1F,CAAC,CAAC;AACL,CAAC;AAED,SAAS,cAAc,CAAC,IAAsB,EAAE,MAAyB;IACvE,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,gBAAgB,CAAC,KAAK;YACzB,OAAO,EAAC,IAAI,EAAE,gBAAgB,CAAC,KAAK,EAAC,CAAC;QACxC,KAAK,gBAAgB,CAAC,UAAU;YAC9B,OAAO,EAAC,IAAI,EAAE,gBAAgB,CAAC,UAAU,EAAE,iBAAiB,EAAE,MAAM,EAAC,CAAC;IAC1E,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"protocols.js","sourceRoot":"","sources":["../../../src/network/reqresp/protocols.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { BeaconConfig } from "@lodestar/config";
2
+ import { ForkName } from "@lodestar/params";
2
3
  import { InboundRateLimitQuota } from "@lodestar/reqresp";
3
4
  import { ReqRespMethod } from "./types.js";
4
- export declare const rateLimitQuotas: (config: BeaconConfig) => Record<ReqRespMethod, InboundRateLimitQuota>;
5
+ export declare const rateLimitQuotas: (fork: ForkName, config: BeaconConfig) => Record<ReqRespMethod, InboundRateLimitQuota>;
5
6
  //# sourceMappingURL=rateLimit.d.ts.map
@@ -1,7 +1,6 @@
1
- import { MAX_REQUEST_BLOCKS, MAX_REQUEST_LIGHT_CLIENT_UPDATES } from "@lodestar/params";
2
- import { ReqRespMethod } from "./types.js";
3
- import { requestSszTypeByMethod } from "./types.js";
4
- export const rateLimitQuotas = (config) => ({
1
+ import { MAX_REQUEST_BLOCKS, MAX_REQUEST_BLOCKS_DENEB, MAX_REQUEST_LIGHT_CLIENT_UPDATES, isForkBlobs, } from "@lodestar/params";
2
+ import { ReqRespMethod, requestSszTypeByMethod } from "./types.js";
3
+ export const rateLimitQuotas = (fork, config) => ({
5
4
  [ReqRespMethod.Status]: {
6
5
  // Rationale: https://github.com/sigp/lighthouse/blob/bf533c8e42cc73c35730e285c21df8add0195369/beacon_node/lighthouse_network/src/rpc/mod.rs#L118-L130
7
6
  byPeer: { quota: 5, quotaTimeMs: 15_000 },
@@ -21,25 +20,23 @@ export const rateLimitQuotas = (config) => ({
21
20
  // Do not matter
22
21
  [ReqRespMethod.BeaconBlocksByRange]: {
23
22
  // Rationale: https://github.com/sigp/lighthouse/blob/bf533c8e42cc73c35730e285c21df8add0195369/beacon_node/lighthouse_network/src/rpc/mod.rs#L118-L130
24
- byPeer: { quota: MAX_REQUEST_BLOCKS, quotaTimeMs: 10_000 },
25
- getRequestCount: getRequestCountFn(config, ReqRespMethod.BeaconBlocksByRange, (req) => req.count),
23
+ byPeer: { quota: isForkBlobs(fork) ? MAX_REQUEST_BLOCKS_DENEB : MAX_REQUEST_BLOCKS, quotaTimeMs: 10_000 },
24
+ getRequestCount: getRequestCountFn(fork, config, ReqRespMethod.BeaconBlocksByRange, (req) => req.count),
26
25
  },
27
26
  [ReqRespMethod.BeaconBlocksByRoot]: {
28
27
  // Rationale: https://github.com/sigp/lighthouse/blob/bf533c8e42cc73c35730e285c21df8add0195369/beacon_node/lighthouse_network/src/rpc/mod.rs#L118-L130
29
- byPeer: { quota: 128, quotaTimeMs: 10_000 },
30
- getRequestCount: getRequestCountFn(config, ReqRespMethod.BeaconBlocksByRoot, (req) => req.length),
28
+ byPeer: { quota: isForkBlobs(fork) ? MAX_REQUEST_BLOCKS_DENEB : MAX_REQUEST_BLOCKS, quotaTimeMs: 10_000 },
29
+ getRequestCount: getRequestCountFn(fork, config, ReqRespMethod.BeaconBlocksByRoot, (req) => req.length),
31
30
  },
32
31
  [ReqRespMethod.BlobSidecarsByRange]: {
33
32
  // Rationale: MAX_REQUEST_BLOCKS_DENEB * MAX_BLOBS_PER_BLOCK
34
- // TODO Electra: Stays as `MAX_REQUEST_BLOB_SIDECARS` until we have fork-aware `byPeer` and set it to `MAX_REQUEST_BLOB_SIDECARS_ELECTRA`
35
- byPeer: { quota: config.MAX_REQUEST_BLOB_SIDECARS, quotaTimeMs: 10_000 },
36
- getRequestCount: getRequestCountFn(config, ReqRespMethod.BlobSidecarsByRange, (req) => req.count),
33
+ byPeer: { quota: config.getMaxRequestBlobSidecars(fork), quotaTimeMs: 10_000 },
34
+ getRequestCount: getRequestCountFn(fork, config, ReqRespMethod.BlobSidecarsByRange, (req) => req.count),
37
35
  },
38
36
  [ReqRespMethod.BlobSidecarsByRoot]: {
39
37
  // Rationale: quota of BeaconBlocksByRoot * MAX_BLOBS_PER_BLOCK
40
- // TODO Electra: Stays as `MAX_REQUEST_BLOB_SIDECARS` until we have fork-aware `byPeer` and set it to `MAX_REQUEST_BLOB_SIDECARS_ELECTRA`
41
- byPeer: { quota: config.MAX_REQUEST_BLOB_SIDECARS, quotaTimeMs: 10_000 },
42
- getRequestCount: getRequestCountFn(config, ReqRespMethod.BlobSidecarsByRoot, (req) => req.length),
38
+ byPeer: { quota: config.getMaxRequestBlobSidecars(fork), quotaTimeMs: 10_000 },
39
+ getRequestCount: getRequestCountFn(fork, config, ReqRespMethod.BlobSidecarsByRoot, (req) => req.length),
43
40
  },
44
41
  [ReqRespMethod.LightClientBootstrap]: {
45
42
  // As similar in the nature of `Status` protocol so we use the same rate limits.
@@ -48,7 +45,7 @@ export const rateLimitQuotas = (config) => ({
48
45
  [ReqRespMethod.LightClientUpdatesByRange]: {
49
46
  // Same rationale as for BeaconBlocksByRange
50
47
  byPeer: { quota: MAX_REQUEST_LIGHT_CLIENT_UPDATES, quotaTimeMs: 10_000 },
51
- getRequestCount: getRequestCountFn(config, ReqRespMethod.LightClientUpdatesByRange, (req) => req.count),
48
+ getRequestCount: getRequestCountFn(fork, config, ReqRespMethod.LightClientUpdatesByRange, (req) => req.count),
52
49
  },
53
50
  [ReqRespMethod.LightClientFinalityUpdate]: {
54
51
  // Finality updates should not be requested more than once per epoch.
@@ -62,8 +59,8 @@ export const rateLimitQuotas = (config) => ({
62
59
  },
63
60
  });
64
61
  // Helper to produce a getRequestCount function
65
- function getRequestCountFn(config, method, fn) {
66
- const type = requestSszTypeByMethod(config)[method];
62
+ function getRequestCountFn(fork, config, method, fn) {
63
+ const type = requestSszTypeByMethod(fork, config)[method];
67
64
  return (reqData) => {
68
65
  try {
69
66
  return (type && fn(type.deserialize(reqData))) ?? 1;
@@ -1 +1 @@
1
- {"version":3,"file":"rateLimit.js","sourceRoot":"","sources":["../../../src/network/reqresp/rateLimit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rateLimit.js","sourceRoot":"","sources":["../../../src/network/reqresp/rateLimit.ts"],"names":[],"mappings":"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"}
@@ -49,7 +49,7 @@ type ResponseBodyByMethod = {
49
49
  [ReqRespMethod.LightClientOptimisticUpdate]: LightClientOptimisticUpdate;
50
50
  };
51
51
  /** Request SSZ type for each method and ForkName */
52
- export declare const requestSszTypeByMethod: (config: BeaconConfig, fork?: ForkName) => {
52
+ export declare const requestSszTypeByMethod: (fork: ForkName, config: BeaconConfig) => {
53
53
  [K in ReqRespMethod]: RequestBodyByMethod[K] extends null ? null : Type<RequestBodyByMethod[K]>;
54
54
  };
55
55
  export type ResponseTypeGetter<T> = (fork: ForkName, version: number) => Type<T>;
@@ -1,4 +1,4 @@
1
- import { ForkName, isForkLightClient } from "@lodestar/params";
1
+ import { isForkLightClient } from "@lodestar/params";
2
2
  import { ssz, sszTypesFor, } from "@lodestar/types";
3
3
  import { BlobSidecarsByRootRequestType } from "../../util/types.js";
4
4
  /** ReqResp protocol names or methods. Each ReqRespMethod can have multiple versions and encodings */
@@ -19,8 +19,7 @@ export var ReqRespMethod;
19
19
  ReqRespMethod["LightClientOptimisticUpdate"] = "light_client_optimistic_update";
20
20
  })(ReqRespMethod || (ReqRespMethod = {}));
21
21
  /** Request SSZ type for each method and ForkName */
22
- // TODO Electra: Currently setting default fork to deneb because not every caller of requestSszTypeByMethod can provide fork info
23
- export const requestSszTypeByMethod = (config, fork = ForkName.deneb) => ({
22
+ export const requestSszTypeByMethod = (fork, config) => ({
24
23
  [ReqRespMethod.Status]: ssz.phase0.Status,
25
24
  [ReqRespMethod.Goodbye]: ssz.phase0.Goodbye,
26
25
  [ReqRespMethod.Ping]: ssz.phase0.Ping,
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/network/reqresp/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/network/reqresp/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * A cache to store the serialized version of an object
3
+ *
4
+ * This is a thin wrapper around WeakMap
5
+ */
6
+ export declare class SerializedCache {
7
+ map: WeakMap<object, Uint8Array>;
8
+ get(obj: object): Uint8Array | undefined;
9
+ set(obj: object, serialized: Uint8Array): void;
10
+ clear(): void;
11
+ }
12
+ //# sourceMappingURL=serializedCache.d.ts.map
@@ -0,0 +1,20 @@
1
+ /**
2
+ * A cache to store the serialized version of an object
3
+ *
4
+ * This is a thin wrapper around WeakMap
5
+ */
6
+ export class SerializedCache {
7
+ constructor() {
8
+ this.map = new WeakMap();
9
+ }
10
+ get(obj) {
11
+ return this.map.get(obj);
12
+ }
13
+ set(obj, serialized) {
14
+ this.map.set(obj, serialized);
15
+ }
16
+ clear() {
17
+ this.map = new WeakMap();
18
+ }
19
+ }
20
+ //# sourceMappingURL=serializedCache.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serializedCache.js","sourceRoot":"","sources":["../../src/util/serializedCache.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,OAAO,eAAe;IAA5B;QACE,QAAG,GAAgC,IAAI,OAAO,EAAE,CAAC;IAanD,CAAC;IAXC,GAAG,CAAC,GAAW;QACb,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC3B,CAAC;IAED,GAAG,CAAC,GAAW,EAAE,UAAsB;QACrC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;IAChC,CAAC;IAED,KAAK;QACH,IAAI,CAAC,GAAG,GAAG,IAAI,OAAO,EAAE,CAAC;IAC3B,CAAC;CACF"}
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.26.0-dev.ee9d4fa72b",
14
+ "version": "1.26.0-dev.f9d080cde3",
15
15
  "type": "module",
16
16
  "exports": {
17
17
  ".": {
@@ -120,18 +120,18 @@
120
120
  "@libp2p/peer-id-factory": "^4.1.0",
121
121
  "@libp2p/prometheus-metrics": "^3.0.21",
122
122
  "@libp2p/tcp": "9.0.23",
123
- "@lodestar/api": "1.26.0-dev.ee9d4fa72b",
124
- "@lodestar/config": "1.26.0-dev.ee9d4fa72b",
125
- "@lodestar/db": "1.26.0-dev.ee9d4fa72b",
126
- "@lodestar/fork-choice": "1.26.0-dev.ee9d4fa72b",
127
- "@lodestar/light-client": "1.26.0-dev.ee9d4fa72b",
128
- "@lodestar/logger": "1.26.0-dev.ee9d4fa72b",
129
- "@lodestar/params": "1.26.0-dev.ee9d4fa72b",
130
- "@lodestar/reqresp": "1.26.0-dev.ee9d4fa72b",
131
- "@lodestar/state-transition": "1.26.0-dev.ee9d4fa72b",
132
- "@lodestar/types": "1.26.0-dev.ee9d4fa72b",
133
- "@lodestar/utils": "1.26.0-dev.ee9d4fa72b",
134
- "@lodestar/validator": "1.26.0-dev.ee9d4fa72b",
123
+ "@lodestar/api": "1.26.0-dev.f9d080cde3",
124
+ "@lodestar/config": "1.26.0-dev.f9d080cde3",
125
+ "@lodestar/db": "1.26.0-dev.f9d080cde3",
126
+ "@lodestar/fork-choice": "1.26.0-dev.f9d080cde3",
127
+ "@lodestar/light-client": "1.26.0-dev.f9d080cde3",
128
+ "@lodestar/logger": "1.26.0-dev.f9d080cde3",
129
+ "@lodestar/params": "1.26.0-dev.f9d080cde3",
130
+ "@lodestar/reqresp": "1.26.0-dev.f9d080cde3",
131
+ "@lodestar/state-transition": "1.26.0-dev.f9d080cde3",
132
+ "@lodestar/types": "1.26.0-dev.f9d080cde3",
133
+ "@lodestar/utils": "1.26.0-dev.f9d080cde3",
134
+ "@lodestar/validator": "1.26.0-dev.f9d080cde3",
135
135
  "@multiformats/multiaddr": "^12.1.3",
136
136
  "c-kzg": "^2.1.2",
137
137
  "datastore-core": "^9.1.1",
@@ -168,5 +168,5 @@
168
168
  "beacon",
169
169
  "blockchain"
170
170
  ],
171
- "gitHead": "1ce8c7818cb23ccd65fa1ce6f6aec352c1a6d323"
171
+ "gitHead": "ce38d546fd0c5877e5688db7cacf282471aed81b"
172
172
  }