@helia/bitswap 1.0.0 → 1.0.1-0a528bb

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 (52) hide show
  1. package/dist/index.min.js +1 -1
  2. package/dist/src/constants.d.ts +2 -0
  3. package/dist/src/constants.d.ts.map +1 -1
  4. package/dist/src/constants.js +2 -0
  5. package/dist/src/constants.js.map +1 -1
  6. package/dist/src/index.d.ts +20 -7
  7. package/dist/src/index.d.ts.map +1 -1
  8. package/dist/src/index.js.map +1 -1
  9. package/dist/src/network.d.ts +7 -4
  10. package/dist/src/network.d.ts.map +1 -1
  11. package/dist/src/network.js +55 -131
  12. package/dist/src/network.js.map +1 -1
  13. package/dist/src/pb/message.d.ts +6 -6
  14. package/dist/src/pb/message.d.ts.map +1 -1
  15. package/dist/src/pb/message.js +37 -20
  16. package/dist/src/pb/message.js.map +1 -1
  17. package/dist/src/peer-want-lists/index.d.ts +3 -1
  18. package/dist/src/peer-want-lists/index.d.ts.map +1 -1
  19. package/dist/src/peer-want-lists/index.js +6 -2
  20. package/dist/src/peer-want-lists/index.js.map +1 -1
  21. package/dist/src/peer-want-lists/ledger.d.ts +3 -1
  22. package/dist/src/peer-want-lists/ledger.d.ts.map +1 -1
  23. package/dist/src/peer-want-lists/ledger.js +8 -0
  24. package/dist/src/peer-want-lists/ledger.js.map +1 -1
  25. package/dist/src/stats.d.ts +2 -1
  26. package/dist/src/stats.d.ts.map +1 -1
  27. package/dist/src/stats.js +4 -4
  28. package/dist/src/stats.js.map +1 -1
  29. package/dist/src/utils/merge-messages.d.ts +3 -0
  30. package/dist/src/utils/merge-messages.d.ts.map +1 -0
  31. package/dist/src/utils/merge-messages.js +51 -0
  32. package/dist/src/utils/merge-messages.js.map +1 -0
  33. package/dist/src/utils/split-message.d.ts +18 -0
  34. package/dist/src/utils/split-message.d.ts.map +1 -0
  35. package/dist/src/utils/split-message.js +101 -0
  36. package/dist/src/utils/split-message.js.map +1 -0
  37. package/dist/src/want-list.d.ts +2 -1
  38. package/dist/src/want-list.d.ts.map +1 -1
  39. package/dist/src/want-list.js +8 -5
  40. package/dist/src/want-list.js.map +1 -1
  41. package/package.json +4 -4
  42. package/src/constants.ts +2 -0
  43. package/src/index.ts +22 -8
  44. package/src/network.ts +65 -154
  45. package/src/pb/message.ts +40 -20
  46. package/src/peer-want-lists/index.ts +8 -3
  47. package/src/peer-want-lists/ledger.ts +11 -1
  48. package/src/stats.ts +6 -5
  49. package/src/utils/merge-messages.ts +70 -0
  50. package/src/utils/split-message.ts +133 -0
  51. package/src/want-list.ts +12 -6
  52. package/dist/typedoc-urls.json +0 -20
@@ -1,11 +1,11 @@
1
1
  import { TypedEventEmitter } from '@libp2p/interface';
2
- import { CID } from 'multiformats/cid';
3
2
  import { BitswapMessage } from './pb/message.js';
4
3
  import type { WantOptions } from './bitswap.js';
5
4
  import type { MultihashHasherLoader } from './index.js';
6
5
  import type { Block } from './pb/message.js';
7
6
  import type { Provider, Routing } from '@helia/interface/routing';
8
- import type { Libp2p, AbortOptions, Connection, PeerId, IncomingStreamData, ComponentLogger } from '@libp2p/interface';
7
+ import type { Libp2p, AbortOptions, Connection, PeerId, IncomingStreamData, ComponentLogger, Metrics } from '@libp2p/interface';
8
+ import type { CID } from 'multiformats/cid';
9
9
  import type { ProgressEvent, ProgressOptions } from 'progress-events';
10
10
  export type BitswapNetworkProgressEvents = ProgressEvent<'bitswap:network:dial', PeerId>;
11
11
  export type BitswapNetworkWantProgressEvents = ProgressEvent<'bitswap:network:send-wantlist', PeerId> | ProgressEvent<'bitswap:network:send-wantlist:error', {
@@ -18,15 +18,17 @@ export interface NetworkInit {
18
18
  maxInboundStreams?: number;
19
19
  maxOutboundStreams?: number;
20
20
  messageReceiveTimeout?: number;
21
- messageSendTimeout?: number;
22
21
  messageSendConcurrency?: number;
23
22
  protocols?: string[];
24
23
  runOnTransientConnections?: boolean;
24
+ maxOutgoingMessageSize?: number;
25
+ maxIncomingMessageSize?: number;
25
26
  }
26
27
  export interface NetworkComponents {
27
28
  routing: Routing;
28
29
  logger: ComponentLogger;
29
30
  libp2p: Libp2p;
31
+ metrics?: Metrics;
30
32
  }
31
33
  export interface BitswapMessageEventDetail {
32
34
  peer: PeerId;
@@ -52,8 +54,9 @@ export declare class Network extends TypedEventEmitter<NetworkEvents> {
52
54
  private registrarIds;
53
55
  private readonly metrics;
54
56
  private readonly sendQueue;
55
- private readonly messageSendTimeout;
56
57
  private readonly runOnTransientConnections;
58
+ private readonly maxOutgoingMessageSize;
59
+ private readonly maxIncomingMessageSize;
57
60
  constructor(components: NetworkComponents, init?: NetworkInit);
58
61
  start(): Promise<void>;
59
62
  stop(): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"network.d.ts","sourceRoot":"","sources":["../../src/network.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"network.d.ts","sourceRoot":"","sources":["../../src/network.ts"],"names":[],"mappings":"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"}
@@ -1,45 +1,16 @@
1
1
  import { CodeError, TypedEventEmitter, setMaxListeners } from '@libp2p/interface';
2
2
  import { PeerQueue } from '@libp2p/utils/peer-queue';
3
- import { anySignal } from 'any-signal';
4
- import debug from 'debug';
5
3
  import drain from 'it-drain';
6
4
  import * as lp from 'it-length-prefixed';
7
- import { lpStream } from 'it-length-prefixed-stream';
8
5
  import map from 'it-map';
9
6
  import { pipe } from 'it-pipe';
10
7
  import take from 'it-take';
11
- import { base64 } from 'multiformats/bases/base64';
12
- import { CID } from 'multiformats/cid';
13
8
  import { CustomProgressEvent } from 'progress-events';
14
9
  import { raceEvent } from 'race-event';
15
- import { toString as uint8ArrayToString } from 'uint8arrays/to-string';
16
- import { BITSWAP_120, DEFAULT_MAX_INBOUND_STREAMS, DEFAULT_MAX_OUTBOUND_STREAMS, DEFAULT_MAX_PROVIDERS_PER_REQUEST, DEFAULT_MESSAGE_RECEIVE_TIMEOUT, DEFAULT_MESSAGE_SEND_CONCURRENCY, DEFAULT_MESSAGE_SEND_TIMEOUT, DEFAULT_RUN_ON_TRANSIENT_CONNECTIONS } from './constants.js';
10
+ import { BITSWAP_120, DEFAULT_MAX_INBOUND_STREAMS, DEFAULT_MAX_INCOMING_MESSAGE_SIZE, DEFAULT_MAX_OUTBOUND_STREAMS, DEFAULT_MAX_OUTGOING_MESSAGE_SIZE, DEFAULT_MAX_PROVIDERS_PER_REQUEST, DEFAULT_MESSAGE_RECEIVE_TIMEOUT, DEFAULT_MESSAGE_SEND_CONCURRENCY, DEFAULT_RUN_ON_TRANSIENT_CONNECTIONS } from './constants.js';
17
11
  import { BitswapMessage } from './pb/message.js';
18
- // Add a formatter for a bitswap message
19
- debug.formatters.B = (b) => {
20
- if (b == null) {
21
- return 'undefined';
22
- }
23
- return JSON.stringify({
24
- blocks: b.blocks?.map(b => ({
25
- data: `${uint8ArrayToString(b.data, 'base64').substring(0, 10)}...`,
26
- prefix: uint8ArrayToString(b.prefix, 'base64')
27
- })),
28
- blockPresences: b.blockPresences?.map(p => ({
29
- ...p,
30
- cid: CID.decode(p.cid).toString()
31
- })),
32
- wantlist: b.wantlist == null
33
- ? undefined
34
- : {
35
- full: b.wantlist.full,
36
- entries: b.wantlist.entries.map(e => ({
37
- ...e,
38
- cid: CID.decode(e.cid).toString()
39
- }))
40
- }
41
- }, null, 2);
42
- };
12
+ import { mergeMessages } from './utils/merge-messages.js';
13
+ import { splitMessage } from './utils/split-message.js';
43
14
  export class Network extends TypedEventEmitter {
44
15
  log;
45
16
  libp2p;
@@ -52,8 +23,9 @@ export class Network extends TypedEventEmitter {
52
23
  registrarIds;
53
24
  metrics;
54
25
  sendQueue;
55
- messageSendTimeout;
56
26
  runOnTransientConnections;
27
+ maxOutgoingMessageSize;
28
+ maxIncomingMessageSize;
57
29
  constructor(components, init = {}) {
58
30
  super();
59
31
  this.log = components.logger.forComponent('helia:bitswap:network');
@@ -67,15 +39,16 @@ export class Network extends TypedEventEmitter {
67
39
  this.maxInboundStreams = init.maxInboundStreams ?? DEFAULT_MAX_INBOUND_STREAMS;
68
40
  this.maxOutboundStreams = init.maxOutboundStreams ?? DEFAULT_MAX_OUTBOUND_STREAMS;
69
41
  this.messageReceiveTimeout = init.messageReceiveTimeout ?? DEFAULT_MESSAGE_RECEIVE_TIMEOUT;
70
- this.messageSendTimeout = init.messageSendTimeout ?? DEFAULT_MESSAGE_SEND_TIMEOUT;
71
42
  this.runOnTransientConnections = init.runOnTransientConnections ?? DEFAULT_RUN_ON_TRANSIENT_CONNECTIONS;
43
+ this.maxIncomingMessageSize = init.maxIncomingMessageSize ?? DEFAULT_MAX_OUTGOING_MESSAGE_SIZE;
44
+ this.maxOutgoingMessageSize = init.maxOutgoingMessageSize ?? init.maxIncomingMessageSize ?? DEFAULT_MAX_INCOMING_MESSAGE_SIZE;
72
45
  this.metrics = {
73
- blocksSent: components.libp2p.metrics?.registerCounter('helia_bitswap_sent_blocks_total'),
74
- dataSent: components.libp2p.metrics?.registerCounter('helia_bitswap_sent_data_bytes_total')
46
+ blocksSent: components.metrics?.registerCounter('helia_bitswap_sent_blocks_total'),
47
+ dataSent: components.metrics?.registerCounter('helia_bitswap_sent_data_bytes_total')
75
48
  };
76
49
  this.sendQueue = new PeerQueue({
77
50
  concurrency: init.messageSendConcurrency ?? DEFAULT_MESSAGE_SEND_CONCURRENCY,
78
- metrics: components.libp2p.metrics,
51
+ metrics: components.metrics,
79
52
  metricName: 'helia_bitswap_message_send_queue'
80
53
  });
81
54
  this.sendQueue.addEventListener('error', (evt) => {
@@ -139,16 +112,24 @@ export class Network extends TypedEventEmitter {
139
112
  Promise.resolve().then(async () => {
140
113
  this.log('incoming new bitswap %s stream from %p', stream.protocol, connection.remotePeer);
141
114
  const abortListener = () => {
142
- stream.abort(new CodeError('Incoming Bitswap stream timed out', 'ERR_TIMEOUT'));
115
+ if (stream.status === 'open') {
116
+ stream.abort(new CodeError('Incoming Bitswap stream timed out', 'ERR_TIMEOUT'));
117
+ }
118
+ else {
119
+ this.log('stream aborted with status', stream.status);
120
+ }
143
121
  };
144
122
  let signal = AbortSignal.timeout(this.messageReceiveTimeout);
145
123
  setMaxListeners(Infinity, signal);
146
124
  signal.addEventListener('abort', abortListener);
147
- await pipe(stream, (source) => lp.decode(source), async (source) => {
125
+ await stream.closeWrite();
126
+ await pipe(stream, (source) => lp.decode(source, {
127
+ maxDataLength: this.maxIncomingMessageSize
128
+ }), async (source) => {
148
129
  for await (const data of source) {
149
130
  try {
150
131
  const message = BitswapMessage.decode(data);
151
- this.log('incoming new bitswap %s message from %p %B', stream.protocol, connection.remotePeer, message);
132
+ this.log('incoming new bitswap %s message from %p on stream', stream.protocol, connection.remotePeer, stream.id);
152
133
  this.safeDispatchEvent('bitswap:message', {
153
134
  detail: {
154
135
  peer: connection.remotePeer,
@@ -162,7 +143,7 @@ export class Network extends TypedEventEmitter {
162
143
  signal.addEventListener('abort', abortListener);
163
144
  }
164
145
  catch (err) {
165
- this.log.error('error reading incoming bitswap message from %p', connection.remotePeer, err);
146
+ this.log.error('error reading incoming bitswap message from %p on stream', connection.remotePeer, stream.id, err);
166
147
  stream.abort(err);
167
148
  break;
168
149
  }
@@ -216,49 +197,41 @@ export class Network extends TypedEventEmitter {
216
197
  blockPresences: msg.blockPresences ?? [],
217
198
  pendingBytes: msg.pendingBytes ?? 0
218
199
  };
219
- const timeoutSignal = AbortSignal.timeout(this.messageSendTimeout);
220
- const signal = anySignal([timeoutSignal, options?.signal]);
221
- setMaxListeners(Infinity, timeoutSignal, signal);
222
- try {
223
- const existingJob = this.sendQueue.queue.find(job => {
224
- return peerId.equals(job.options.peerId) && job.status === 'queued';
225
- });
226
- if (existingJob != null) {
227
- // merge messages instead of adding new job
228
- existingJob.options.message = mergeMessages(existingJob.options.message, message);
229
- await existingJob.join({
230
- signal
231
- });
232
- return;
233
- }
234
- await this.sendQueue.add(async (options) => {
235
- const message = options?.message;
236
- if (message == null) {
237
- throw new CodeError('No message to send', 'ERR_NO_MESSAGE');
238
- }
239
- this.log('sendMessage to %p %B', peerId, message);
240
- options?.onProgress?.(new CustomProgressEvent('bitswap:network:send-wantlist', peerId));
241
- const stream = await this.libp2p.dialProtocol(peerId, BITSWAP_120, options);
242
- try {
243
- const lp = lpStream(stream);
244
- await lp.write(BitswapMessage.encode(message), options);
245
- await lp.unwrap().close(options);
246
- }
247
- catch (err) {
248
- options?.onProgress?.(new CustomProgressEvent('bitswap:network:send-wantlist:error', { peer: peerId, error: err }));
249
- this.log.error('error sending message to %p', peerId, err);
250
- stream.abort(err);
251
- }
252
- this._updateSentStats(message.blocks);
253
- }, {
254
- peerId,
255
- signal,
256
- message
200
+ const existingJob = this.sendQueue.queue.find(job => {
201
+ return peerId.equals(job.options.peerId) && job.status === 'queued';
202
+ });
203
+ if (existingJob != null) {
204
+ // merge messages instead of adding new job
205
+ existingJob.options.message = mergeMessages(existingJob.options.message, message);
206
+ await existingJob.join({
207
+ signal: options?.signal
257
208
  });
209
+ return;
258
210
  }
259
- finally {
260
- signal.clear();
261
- }
211
+ await this.sendQueue.add(async (options) => {
212
+ const message = options?.message;
213
+ if (message == null) {
214
+ throw new CodeError('No message to send', 'ERR_NO_MESSAGE');
215
+ }
216
+ this.log('sendMessage to %p', peerId);
217
+ options?.onProgress?.(new CustomProgressEvent('bitswap:network:send-wantlist', peerId));
218
+ const stream = await this.libp2p.dialProtocol(peerId, BITSWAP_120, options);
219
+ await stream.closeRead();
220
+ try {
221
+ await pipe(splitMessage(message, this.maxOutgoingMessageSize), (source) => lp.encode(source), stream);
222
+ await stream.close(options);
223
+ }
224
+ catch (err) {
225
+ options?.onProgress?.(new CustomProgressEvent('bitswap:network:send-wantlist:error', { peer: peerId, error: err }));
226
+ this.log.error('error sending message to %p', peerId, err);
227
+ stream.abort(err);
228
+ }
229
+ this._updateSentStats(message.blocks);
230
+ }, {
231
+ peerId,
232
+ signal: options?.signal,
233
+ message
234
+ });
262
235
  }
263
236
  /**
264
237
  * Connects to another peer
@@ -296,53 +269,4 @@ export class Network extends TypedEventEmitter {
296
269
  this.metrics.blocksSent?.increment(blocks.length);
297
270
  }
298
271
  }
299
- function mergeMessages(messageA, messageB) {
300
- const wantListEntries = new Map((messageA.wantlist?.entries ?? []).map(entry => ([
301
- base64.encode(entry.cid),
302
- entry
303
- ])));
304
- for (const entry of messageB.wantlist?.entries ?? []) {
305
- const key = base64.encode(entry.cid);
306
- const existingEntry = wantListEntries.get(key);
307
- if (existingEntry != null) {
308
- // take highest priority
309
- if (existingEntry.priority > entry.priority) {
310
- entry.priority = existingEntry.priority;
311
- }
312
- // take later values if passed, otherwise use earlier ones
313
- entry.cancel = entry.cancel ?? existingEntry.cancel;
314
- entry.wantType = entry.wantType ?? existingEntry.wantType;
315
- entry.sendDontHave = entry.sendDontHave ?? existingEntry.sendDontHave;
316
- }
317
- wantListEntries.set(key, entry);
318
- }
319
- const blockPresences = new Map(messageA.blockPresences.map(presence => ([
320
- base64.encode(presence.cid),
321
- presence
322
- ])));
323
- for (const blockPresence of messageB.blockPresences) {
324
- const key = base64.encode(blockPresence.cid);
325
- // override earlier block presence with later one as if duplicated it is
326
- // likely to be more accurate since it is more recent
327
- blockPresences.set(key, blockPresence);
328
- }
329
- const blocks = new Map(messageA.blocks.map(block => ([
330
- base64.encode(block.data),
331
- block
332
- ])));
333
- for (const block of messageB.blocks) {
334
- const key = base64.encode(block.data);
335
- blocks.set(key, block);
336
- }
337
- const output = {
338
- wantlist: {
339
- full: messageA.wantlist?.full ?? messageB.wantlist?.full ?? false,
340
- entries: [...wantListEntries.values()]
341
- },
342
- blockPresences: [...blockPresences.values()],
343
- blocks: [...blocks.values()],
344
- pendingBytes: messageA.pendingBytes + messageB.pendingBytes
345
- };
346
- return output;
347
- }
348
272
  //# sourceMappingURL=network.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"network.js","sourceRoot":"","sources":["../../src/network.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"network.js","sourceRoot":"","sources":["../../src/network.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { type Codec } from 'protons-runtime';
1
+ import { type Codec, type DecodeOptions } from 'protons-runtime';
2
2
  import type { Uint8ArrayList } from 'uint8arraylist';
3
3
  export declare enum WantType {
4
4
  WantBlock = "WantBlock",
@@ -17,7 +17,7 @@ export interface WantlistEntry {
17
17
  export declare namespace WantlistEntry {
18
18
  const codec: () => Codec<WantlistEntry>;
19
19
  const encode: (obj: Partial<WantlistEntry>) => Uint8Array;
20
- const decode: (buf: Uint8Array | Uint8ArrayList) => WantlistEntry;
20
+ const decode: (buf: Uint8Array | Uint8ArrayList, opts?: DecodeOptions<WantlistEntry>) => WantlistEntry;
21
21
  }
22
22
  export interface Wantlist {
23
23
  entries: WantlistEntry[];
@@ -26,7 +26,7 @@ export interface Wantlist {
26
26
  export declare namespace Wantlist {
27
27
  const codec: () => Codec<Wantlist>;
28
28
  const encode: (obj: Partial<Wantlist>) => Uint8Array;
29
- const decode: (buf: Uint8Array | Uint8ArrayList) => Wantlist;
29
+ const decode: (buf: Uint8Array | Uint8ArrayList, opts?: DecodeOptions<Wantlist>) => Wantlist;
30
30
  }
31
31
  export interface Block {
32
32
  prefix: Uint8Array;
@@ -35,7 +35,7 @@ export interface Block {
35
35
  export declare namespace Block {
36
36
  const codec: () => Codec<Block>;
37
37
  const encode: (obj: Partial<Block>) => Uint8Array;
38
- const decode: (buf: Uint8Array | Uint8ArrayList) => Block;
38
+ const decode: (buf: Uint8Array | Uint8ArrayList, opts?: DecodeOptions<Block>) => Block;
39
39
  }
40
40
  export declare enum BlockPresenceType {
41
41
  HaveBlock = "HaveBlock",
@@ -51,7 +51,7 @@ export interface BlockPresence {
51
51
  export declare namespace BlockPresence {
52
52
  const codec: () => Codec<BlockPresence>;
53
53
  const encode: (obj: Partial<BlockPresence>) => Uint8Array;
54
- const decode: (buf: Uint8Array | Uint8ArrayList) => BlockPresence;
54
+ const decode: (buf: Uint8Array | Uint8ArrayList, opts?: DecodeOptions<BlockPresence>) => BlockPresence;
55
55
  }
56
56
  export interface BitswapMessage {
57
57
  wantlist?: Wantlist;
@@ -62,6 +62,6 @@ export interface BitswapMessage {
62
62
  export declare namespace BitswapMessage {
63
63
  const codec: () => Codec<BitswapMessage>;
64
64
  const encode: (obj: Partial<BitswapMessage>) => Uint8Array;
65
- const decode: (buf: Uint8Array | Uint8ArrayList) => BitswapMessage;
65
+ const decode: (buf: Uint8Array | Uint8ArrayList, opts?: DecodeOptions<BitswapMessage>) => BitswapMessage;
66
66
  }
67
67
  //# sourceMappingURL=message.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../../../src/pb/message.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,KAAK,EAAsD,MAAM,iBAAiB,CAAA;AAEhG,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAEpD,oBAAY,QAAQ;IAClB,SAAS,cAAc;IACvB,QAAQ,aAAa;CACtB;AAOD,yBAAiB,QAAQ,CAAC;IACjB,MAAM,KAAK,QAAO,MAAM,QAAQ,CAEtC,CAAA;CACF;AACD,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,UAAU,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,YAAY,CAAC,EAAE,OAAO,CAAA;CACvB;AAED,yBAAiB,aAAa,CAAC;IAGtB,MAAM,KAAK,QAAO,MAAM,aAAa,CA+E3C,CAAA;IAEM,MAAM,MAAM,QAAS,QAAQ,aAAa,CAAC,KAAG,UAEpD,CAAA;IAEM,MAAM,MAAM,QAAS,UAAU,GAAG,cAAc,KAAG,aAEzD,CAAA;CACF;AAED,MAAM,WAAW,QAAQ;IACvB,OAAO,EAAE,aAAa,EAAE,CAAA;IACxB,IAAI,CAAC,EAAE,OAAO,CAAA;CACf;AAED,yBAAiB,QAAQ,CAAC;IAGjB,MAAM,KAAK,QAAO,MAAM,QAAQ,CAqDtC,CAAA;IAEM,MAAM,MAAM,QAAS,QAAQ,QAAQ,CAAC,KAAG,UAE/C,CAAA;IAEM,MAAM,MAAM,QAAS,UAAU,GAAG,cAAc,KAAG,QAEzD,CAAA;CACF;AAED,MAAM,WAAW,KAAK;IACpB,MAAM,EAAE,UAAU,CAAA;IAClB,IAAI,EAAE,UAAU,CAAA;CACjB;AAED,yBAAiB,KAAK,CAAC;IAGd,MAAM,KAAK,QAAO,MAAM,KAAK,CAoDnC,CAAA;IAEM,MAAM,MAAM,QAAS,QAAQ,KAAK,CAAC,KAAG,UAE5C,CAAA;IAEM,MAAM,MAAM,QAAS,UAAU,GAAG,cAAc,KAAG,KAEzD,CAAA;CACF;AAED,oBAAY,iBAAiB;IAC3B,SAAS,cAAc;IACvB,aAAa,kBAAkB;CAChC;AAOD,yBAAiB,iBAAiB,CAAC;IAC1B,MAAM,KAAK,QAAO,MAAM,iBAAiB,CAE/C,CAAA;CACF;AACD,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,UAAU,CAAA;IACf,IAAI,EAAE,iBAAiB,CAAA;CACxB;AAED,yBAAiB,aAAa,CAAC;IAGtB,MAAM,KAAK,QAAO,MAAM,aAAa,CAoD3C,CAAA;IAEM,MAAM,MAAM,QAAS,QAAQ,aAAa,CAAC,KAAG,UAEpD,CAAA;IAEM,MAAM,MAAM,QAAS,UAAU,GAAG,cAAc,KAAG,aAEzD,CAAA;CACF;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,MAAM,EAAE,KAAK,EAAE,CAAA;IACf,cAAc,EAAE,aAAa,EAAE,CAAA;IAC/B,YAAY,EAAE,MAAM,CAAA;CACrB;AAED,yBAAiB,cAAc,CAAC;IAGvB,MAAM,KAAK,QAAO,MAAM,cAAc,CA2E5C,CAAA;IAEM,MAAM,MAAM,QAAS,QAAQ,cAAc,CAAC,KAAG,UAErD,CAAA;IAEM,MAAM,MAAM,QAAS,UAAU,GAAG,cAAc,KAAG,cAEzD,CAAA;CACF"}
1
+ {"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../../../src/pb/message.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,KAAK,EAA4B,KAAK,aAAa,EAAuC,MAAM,iBAAiB,CAAA;AAE/H,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAEpD,oBAAY,QAAQ;IAClB,SAAS,cAAc;IACvB,QAAQ,aAAa;CACtB;AAOD,yBAAiB,QAAQ,CAAC;IACjB,MAAM,KAAK,QAAO,MAAM,QAAQ,CAEtC,CAAA;CACF;AACD,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,UAAU,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,YAAY,CAAC,EAAE,OAAO,CAAA;CACvB;AAED,yBAAiB,aAAa,CAAC;IAGtB,MAAM,KAAK,QAAO,MAAM,aAAa,CA+E3C,CAAA;IAEM,MAAM,MAAM,QAAS,QAAQ,aAAa,CAAC,KAAG,UAEpD,CAAA;IAEM,MAAM,MAAM,QAAS,UAAU,GAAG,cAAc,SAAS,cAAc,aAAa,CAAC,KAAG,aAE9F,CAAA;CACF;AAED,MAAM,WAAW,QAAQ;IACvB,OAAO,EAAE,aAAa,EAAE,CAAA;IACxB,IAAI,CAAC,EAAE,OAAO,CAAA;CACf;AAED,yBAAiB,QAAQ,CAAC;IAGjB,MAAM,KAAK,QAAO,MAAM,QAAQ,CA2DtC,CAAA;IAEM,MAAM,MAAM,QAAS,QAAQ,QAAQ,CAAC,KAAG,UAE/C,CAAA;IAEM,MAAM,MAAM,QAAS,UAAU,GAAG,cAAc,SAAS,cAAc,QAAQ,CAAC,KAAG,QAEzF,CAAA;CACF;AAED,MAAM,WAAW,KAAK;IACpB,MAAM,EAAE,UAAU,CAAA;IAClB,IAAI,EAAE,UAAU,CAAA;CACjB;AAED,yBAAiB,KAAK,CAAC;IAGd,MAAM,KAAK,QAAO,MAAM,KAAK,CAoDnC,CAAA;IAEM,MAAM,MAAM,QAAS,QAAQ,KAAK,CAAC,KAAG,UAE5C,CAAA;IAEM,MAAM,MAAM,QAAS,UAAU,GAAG,cAAc,SAAS,cAAc,KAAK,CAAC,KAAG,KAEtF,CAAA;CACF;AAED,oBAAY,iBAAiB;IAC3B,SAAS,cAAc;IACvB,aAAa,kBAAkB;CAChC;AAOD,yBAAiB,iBAAiB,CAAC;IAC1B,MAAM,KAAK,QAAO,MAAM,iBAAiB,CAE/C,CAAA;CACF;AACD,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,UAAU,CAAA;IACf,IAAI,EAAE,iBAAiB,CAAA;CACxB;AAED,yBAAiB,aAAa,CAAC;IAGtB,MAAM,KAAK,QAAO,MAAM,aAAa,CAoD3C,CAAA;IAEM,MAAM,MAAM,QAAS,QAAQ,aAAa,CAAC,KAAG,UAEpD,CAAA;IAEM,MAAM,MAAM,QAAS,UAAU,GAAG,cAAc,SAAS,cAAc,aAAa,CAAC,KAAG,aAE9F,CAAA;CACF;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,MAAM,EAAE,KAAK,EAAE,CAAA;IACf,cAAc,EAAE,aAAa,EAAE,CAAA;IAC/B,YAAY,EAAE,MAAM,CAAA;CACrB;AAED,yBAAiB,cAAc,CAAC;IAGvB,MAAM,KAAK,QAAO,MAAM,cAAc,CAyF5C,CAAA;IAEM,MAAM,MAAM,QAAS,QAAQ,cAAc,CAAC,KAAG,UAErD,CAAA;IAEM,MAAM,MAAM,QAAS,UAAU,GAAG,cAAc,SAAS,cAAc,cAAc,CAAC,KAAG,cAE/F,CAAA;CACF"}
@@ -3,7 +3,7 @@
3
3
  /* eslint-disable @typescript-eslint/no-namespace */
4
4
  /* eslint-disable @typescript-eslint/no-unnecessary-boolean-literal-compare */
5
5
  /* eslint-disable @typescript-eslint/no-empty-interface */
6
- import { decodeMessage, encodeMessage, enumeration, message } from 'protons-runtime';
6
+ import { CodeError, decodeMessage, encodeMessage, enumeration, message } from 'protons-runtime';
7
7
  import { alloc as uint8ArrayAlloc } from 'uint8arrays/alloc';
8
8
  export var WantType;
9
9
  (function (WantType) {
@@ -52,7 +52,7 @@ export var WantlistEntry;
52
52
  if (opts.lengthDelimited !== false) {
53
53
  w.ldelim();
54
54
  }
55
- }, (reader, length) => {
55
+ }, (reader, length, opts = {}) => {
56
56
  const obj = {
57
57
  cid: uint8ArrayAlloc(0),
58
58
  priority: 0
@@ -95,8 +95,8 @@ export var WantlistEntry;
95
95
  WantlistEntry.encode = (obj) => {
96
96
  return encodeMessage(obj, WantlistEntry.codec());
97
97
  };
98
- WantlistEntry.decode = (buf) => {
99
- return decodeMessage(buf, WantlistEntry.codec());
98
+ WantlistEntry.decode = (buf, opts) => {
99
+ return decodeMessage(buf, WantlistEntry.codec(), opts);
100
100
  };
101
101
  })(WantlistEntry || (WantlistEntry = {}));
102
102
  export var Wantlist;
@@ -121,7 +121,7 @@ export var Wantlist;
121
121
  if (opts.lengthDelimited !== false) {
122
122
  w.ldelim();
123
123
  }
124
- }, (reader, length) => {
124
+ }, (reader, length, opts = {}) => {
125
125
  const obj = {
126
126
  entries: []
127
127
  };
@@ -130,7 +130,12 @@ export var Wantlist;
130
130
  const tag = reader.uint32();
131
131
  switch (tag >>> 3) {
132
132
  case 1: {
133
- obj.entries.push(WantlistEntry.codec().decode(reader, reader.uint32()));
133
+ if (opts.limits?.entries != null && obj.entries.length === opts.limits.entries) {
134
+ throw new CodeError('decode error - map field "entries" had too many elements', 'ERR_MAX_LENGTH');
135
+ }
136
+ obj.entries.push(WantlistEntry.codec().decode(reader, reader.uint32(), {
137
+ limits: opts.limits?.entries$
138
+ }));
134
139
  break;
135
140
  }
136
141
  case 2: {
@@ -151,8 +156,8 @@ export var Wantlist;
151
156
  Wantlist.encode = (obj) => {
152
157
  return encodeMessage(obj, Wantlist.codec());
153
158
  };
154
- Wantlist.decode = (buf) => {
155
- return decodeMessage(buf, Wantlist.codec());
159
+ Wantlist.decode = (buf, opts) => {
160
+ return decodeMessage(buf, Wantlist.codec(), opts);
156
161
  };
157
162
  })(Wantlist || (Wantlist = {}));
158
163
  export var Block;
@@ -175,7 +180,7 @@ export var Block;
175
180
  if (opts.lengthDelimited !== false) {
176
181
  w.ldelim();
177
182
  }
178
- }, (reader, length) => {
183
+ }, (reader, length, opts = {}) => {
179
184
  const obj = {
180
185
  prefix: uint8ArrayAlloc(0),
181
186
  data: uint8ArrayAlloc(0)
@@ -206,8 +211,8 @@ export var Block;
206
211
  Block.encode = (obj) => {
207
212
  return encodeMessage(obj, Block.codec());
208
213
  };
209
- Block.decode = (buf) => {
210
- return decodeMessage(buf, Block.codec());
214
+ Block.decode = (buf, opts) => {
215
+ return decodeMessage(buf, Block.codec(), opts);
211
216
  };
212
217
  })(Block || (Block = {}));
213
218
  export var BlockPresenceType;
@@ -245,7 +250,7 @@ export var BlockPresence;
245
250
  if (opts.lengthDelimited !== false) {
246
251
  w.ldelim();
247
252
  }
248
- }, (reader, length) => {
253
+ }, (reader, length, opts = {}) => {
249
254
  const obj = {
250
255
  cid: uint8ArrayAlloc(0),
251
256
  type: BlockPresenceType.HaveBlock
@@ -276,8 +281,8 @@ export var BlockPresence;
276
281
  BlockPresence.encode = (obj) => {
277
282
  return encodeMessage(obj, BlockPresence.codec());
278
283
  };
279
- BlockPresence.decode = (buf) => {
280
- return decodeMessage(buf, BlockPresence.codec());
284
+ BlockPresence.decode = (buf, opts) => {
285
+ return decodeMessage(buf, BlockPresence.codec(), opts);
281
286
  };
282
287
  })(BlockPresence || (BlockPresence = {}));
283
288
  export var BitswapMessage;
@@ -312,7 +317,7 @@ export var BitswapMessage;
312
317
  if (opts.lengthDelimited !== false) {
313
318
  w.ldelim();
314
319
  }
315
- }, (reader, length) => {
320
+ }, (reader, length, opts = {}) => {
316
321
  const obj = {
317
322
  blocks: [],
318
323
  blockPresences: [],
@@ -323,15 +328,27 @@ export var BitswapMessage;
323
328
  const tag = reader.uint32();
324
329
  switch (tag >>> 3) {
325
330
  case 1: {
326
- obj.wantlist = Wantlist.codec().decode(reader, reader.uint32());
331
+ obj.wantlist = Wantlist.codec().decode(reader, reader.uint32(), {
332
+ limits: opts.limits?.wantlist
333
+ });
327
334
  break;
328
335
  }
329
336
  case 3: {
330
- obj.blocks.push(Block.codec().decode(reader, reader.uint32()));
337
+ if (opts.limits?.blocks != null && obj.blocks.length === opts.limits.blocks) {
338
+ throw new CodeError('decode error - map field "blocks" had too many elements', 'ERR_MAX_LENGTH');
339
+ }
340
+ obj.blocks.push(Block.codec().decode(reader, reader.uint32(), {
341
+ limits: opts.limits?.blocks$
342
+ }));
331
343
  break;
332
344
  }
333
345
  case 4: {
334
- obj.blockPresences.push(BlockPresence.codec().decode(reader, reader.uint32()));
346
+ if (opts.limits?.blockPresences != null && obj.blockPresences.length === opts.limits.blockPresences) {
347
+ throw new CodeError('decode error - map field "blockPresences" had too many elements', 'ERR_MAX_LENGTH');
348
+ }
349
+ obj.blockPresences.push(BlockPresence.codec().decode(reader, reader.uint32(), {
350
+ limits: opts.limits?.blockPresences$
351
+ }));
335
352
  break;
336
353
  }
337
354
  case 5: {
@@ -352,8 +369,8 @@ export var BitswapMessage;
352
369
  BitswapMessage.encode = (obj) => {
353
370
  return encodeMessage(obj, BitswapMessage.codec());
354
371
  };
355
- BitswapMessage.decode = (buf) => {
356
- return decodeMessage(buf, BitswapMessage.codec());
372
+ BitswapMessage.decode = (buf, opts) => {
373
+ return decodeMessage(buf, BitswapMessage.codec(), opts);
357
374
  };
358
375
  })(BitswapMessage || (BitswapMessage = {}));
359
376
  //# sourceMappingURL=message.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"message.js","sourceRoot":"","sources":["../../../src/pb/message.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"message.js","sourceRoot":"","sources":["../../../src/pb/message.ts"],"names":[],"mappings":"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"}