@libp2p/mplex 11.0.46 → 11.0.47-a02cb0461

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 +1 @@
1
- {"version":3,"file":"mplex.js","sourceRoot":"","sources":["../../src/mplex.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mplex.js","sourceRoot":"","sources":["../../src/mplex.ts"],"names":[],"mappings":"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"}
@@ -1,39 +1,33 @@
1
- import { AbstractStream } from '@libp2p/utils/abstract-stream';
1
+ import { AbstractStream } from '@libp2p/utils';
2
2
  import { Uint8ArrayList } from 'uint8arraylist';
3
- import type { Message } from './message-types.js';
4
- import type { ComponentLogger } from '@libp2p/interface';
5
- import type { AbstractStreamInit } from '@libp2p/utils/abstract-stream';
3
+ import type { MplexStreamMuxer } from './mplex.ts';
4
+ import type { Logger, MessageStreamDirection } from '@libp2p/interface';
5
+ import type { AbstractStreamInit, SendResult } from '@libp2p/utils';
6
+ import type { AbortOptions } from 'it-pushable';
6
7
  export interface Options {
7
8
  id: number;
8
- send(msg: Message): Promise<void>;
9
- name?: string;
10
- onEnd?(err?: Error): void;
11
- type?: 'initiator' | 'receiver';
9
+ log: Logger;
10
+ direction: MessageStreamDirection;
12
11
  maxMsgSize?: number;
13
- logger: ComponentLogger;
12
+ muxer: MplexStreamMuxer;
14
13
  }
15
14
  interface MplexStreamInit extends AbstractStreamInit {
16
- streamId: number;
17
- name: string;
18
- send(msg: Message): Promise<void>;
19
- /**
20
- * The maximum allowable data size, any data larger than this will be
21
- * chunked and sent in multiple data messages
22
- */
23
15
  maxDataSize: number;
16
+ muxer: MplexStreamMuxer;
17
+ direction: MessageStreamDirection;
24
18
  }
25
19
  export declare class MplexStream extends AbstractStream {
26
- private readonly name;
27
- private readonly streamId;
28
- private readonly send;
20
+ readonly streamId: number;
29
21
  private readonly types;
30
22
  private readonly maxDataSize;
23
+ private readonly muxer;
31
24
  constructor(init: MplexStreamInit);
32
- sendNewStream(): Promise<void>;
33
- sendData(data: Uint8ArrayList): Promise<void>;
34
- sendReset(): Promise<void>;
35
- sendCloseWrite(): Promise<void>;
36
- sendCloseRead(): Promise<void>;
25
+ sendData(data: Uint8ArrayList): SendResult;
26
+ sendReset(): boolean;
27
+ sendCloseWrite(options?: AbortOptions): Promise<void>;
28
+ sendCloseRead(options?: AbortOptions): Promise<void>;
29
+ sendPause(): void;
30
+ sendResume(): void;
37
31
  }
38
32
  export declare function createStream(options: Options): MplexStream;
39
33
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"stream.d.ts","sourceRoot":"","sources":["../../src/stream.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAI/C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AACjD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACxD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAA;AAEvE,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACjC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,CAAA;IACzB,IAAI,CAAC,EAAE,WAAW,GAAG,UAAU,CAAA;IAC/B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,MAAM,EAAE,eAAe,CAAA;CACxB;AAED,UAAU,eAAgB,SAAQ,kBAAkB;IAClD,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAEjC;;;OAGG;IACH,WAAW,EAAE,MAAM,CAAA;CACpB;AAED,qBAAa,WAAY,SAAQ,cAAc;IAC7C,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAQ;IAC7B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAQ;IACjC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAiC;IACtD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAwB;IAC9C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAQ;gBAEvB,IAAI,EAAE,eAAe;IAU5B,aAAa,IAAK,OAAO,CAAC,IAAI,CAAC;IAI/B,QAAQ,CAAE,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAe9C,SAAS,IAAK,OAAO,CAAC,IAAI,CAAC;IAI3B,cAAc,IAAK,OAAO,CAAC,IAAI,CAAC;IAIhC,aAAa,IAAK,OAAO,CAAC,IAAI,CAAC;CAGtC;AAED,wBAAgB,YAAY,CAAE,OAAO,EAAE,OAAO,GAAG,WAAW,CAa3D"}
1
+ {"version":3,"file":"stream.d.ts","sourceRoot":"","sources":["../../src/stream.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAK/C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAClD,OAAO,KAAK,EAAE,MAAM,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAA;AACvE,OAAO,KAAK,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AACnE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAE/C,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAA;IACV,GAAG,EAAE,MAAM,CAAA;IACX,SAAS,EAAE,sBAAsB,CAAA;IACjC,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,gBAAgB,CAAA;CACxB;AAED,UAAU,eAAgB,SAAQ,kBAAkB;IAClD,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,gBAAgB,CAAA;IACvB,SAAS,EAAE,sBAAsB,CAAA;CAClC;AAED,qBAAa,WAAY,SAAQ,cAAc;IAC7C,SAAgB,QAAQ,EAAE,MAAM,CAAA;IAChC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAwB;IAC9C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAQ;IACpC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAkB;gBAE3B,IAAI,EAAE,eAAe;IA0BlC,QAAQ,CAAE,IAAI,EAAE,cAAc,GAAG,UAAU;IAwB3C,SAAS,IAAK,OAAO;IASf,cAAc,CAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAUtD,aAAa,CAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAK3D,SAAS,IAAK,IAAI;IAIlB,UAAU,IAAK,IAAI;CAGpB;AAED,wBAAgB,YAAY,CAAE,OAAO,EAAE,OAAO,GAAG,WAAW,CAY3D"}
@@ -1,58 +1,87 @@
1
- import { AbstractStream } from '@libp2p/utils/abstract-stream';
1
+ import { AbstractStream } from '@libp2p/utils';
2
2
  import { Uint8ArrayList } from 'uint8arraylist';
3
3
  import { fromString as uint8ArrayFromString } from 'uint8arrays/from-string';
4
4
  import { MAX_MSG_SIZE } from './decode.js';
5
+ import { encode } from "./encode.js";
5
6
  import { InitiatorMessageTypes, ReceiverMessageTypes } from './message-types.js';
6
7
  export class MplexStream extends AbstractStream {
7
- name;
8
8
  streamId;
9
- send;
10
9
  types;
11
10
  maxDataSize;
11
+ muxer;
12
12
  constructor(init) {
13
13
  super(init);
14
14
  this.types = init.direction === 'outbound' ? InitiatorMessageTypes : ReceiverMessageTypes;
15
- this.send = init.send;
16
- this.name = init.name;
17
- this.streamId = init.streamId;
18
15
  this.maxDataSize = init.maxDataSize;
16
+ this.muxer = init.muxer;
17
+ this.streamId = parseInt(this.id.substring(1));
18
+ if (init.direction === 'outbound') {
19
+ // open the stream on the receiver end. do this in a microtask so the
20
+ // stream gets added to the streams array by the muxer superclass before
21
+ // we send the NEW_STREAM message, otherwise we create a race condition
22
+ // whereby we can receive the stream messages before the stream is added
23
+ // to the streams list
24
+ queueMicrotask(() => {
25
+ this.muxer.send(encode({
26
+ id: this.streamId,
27
+ type: InitiatorMessageTypes.NEW_STREAM,
28
+ data: new Uint8ArrayList(uint8ArrayFromString(this.id))
29
+ }));
30
+ });
31
+ }
19
32
  }
20
- async sendNewStream() {
21
- await this.send({ id: this.streamId, type: InitiatorMessageTypes.NEW_STREAM, data: new Uint8ArrayList(uint8ArrayFromString(this.name)) });
22
- }
23
- async sendData(data) {
24
- data = data.sublist();
33
+ sendData(data) {
34
+ const list = new Uint8ArrayList();
35
+ const sentBytes = data.byteLength;
25
36
  while (data.byteLength > 0) {
26
37
  const toSend = Math.min(data.byteLength, this.maxDataSize);
27
- await this.send({
38
+ const slice = data.sublist(0, toSend);
39
+ data = data.sublist(toSend);
40
+ list.append(encode({
28
41
  id: this.streamId,
29
42
  type: this.types.MESSAGE,
30
- data: data.sublist(0, toSend)
31
- });
32
- data.consume(toSend);
43
+ data: slice
44
+ }));
33
45
  }
46
+ return {
47
+ sentBytes,
48
+ canSendMore: this.muxer.send(list)
49
+ };
34
50
  }
35
- async sendReset() {
36
- await this.send({ id: this.streamId, type: this.types.RESET });
51
+ sendReset() {
52
+ return this.muxer.send(encode({
53
+ id: this.streamId,
54
+ type: this.types.RESET
55
+ }));
37
56
  }
38
- async sendCloseWrite() {
39
- await this.send({ id: this.streamId, type: this.types.CLOSE });
57
+ async sendCloseWrite(options) {
58
+ this.muxer.send(encode({
59
+ id: this.streamId,
60
+ type: this.types.CLOSE
61
+ }));
62
+ options?.signal?.throwIfAborted();
40
63
  }
41
- async sendCloseRead() {
64
+ async sendCloseRead(options) {
65
+ options?.signal?.throwIfAborted();
42
66
  // mplex does not support close read, only close write
43
67
  }
68
+ sendPause() {
69
+ // mplex does not support backpressure
70
+ }
71
+ sendResume() {
72
+ // mplex does not support backpressure
73
+ }
44
74
  }
45
75
  export function createStream(options) {
46
- const { id, name, send, onEnd, type = 'initiator', maxMsgSize = MAX_MSG_SIZE } = options;
76
+ const { id, muxer, direction, maxMsgSize = MAX_MSG_SIZE } = options;
47
77
  return new MplexStream({
48
- id: type === 'initiator' ? (`i${id}`) : `r${id}`,
49
- streamId: id,
50
- name: `${name ?? id}`,
51
- direction: type === 'initiator' ? 'outbound' : 'inbound',
78
+ ...options,
79
+ id: direction === 'outbound' ? (`i${id}`) : `r${id}`,
80
+ direction,
52
81
  maxDataSize: maxMsgSize,
53
- onEnd,
54
- send,
55
- log: options.logger.forComponent(`libp2p:mplex:stream:${type}:${id}`)
82
+ muxer,
83
+ log: options.log.newScope(`${direction}:${id}`),
84
+ protocol: ''
56
85
  });
57
86
  }
58
87
  //# sourceMappingURL=stream.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"stream.js","sourceRoot":"","sources":["../../src/stream.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stream.js","sourceRoot":"","sources":["../../src/stream.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@libp2p/mplex",
3
- "version": "11.0.46",
3
+ "version": "11.0.47-a02cb0461",
4
4
  "description": "JavaScript implementation of https://github.com/libp2p/mplex",
5
5
  "license": "Apache-2.0 OR MIT",
6
6
  "homepage": "https://github.com/libp2p/js-libp2p/tree/main/packages/stream-multiplexer-mplex#readme",
@@ -55,29 +55,26 @@
55
55
  "test:electron-main": "aegir test -t electron-main"
56
56
  },
57
57
  "dependencies": {
58
- "@libp2p/interface": "^2.10.5",
59
- "@libp2p/utils": "^6.7.1",
60
- "it-pipe": "^3.0.1",
58
+ "@libp2p/interface": "2.11.0-a02cb0461",
59
+ "@libp2p/utils": "6.7.2-a02cb0461",
61
60
  "it-pushable": "^3.2.3",
62
- "it-stream-types": "^2.0.2",
63
61
  "uint8-varint": "^2.0.4",
64
62
  "uint8arraylist": "^2.4.8",
65
63
  "uint8arrays": "^5.1.0"
66
64
  },
67
65
  "devDependencies": {
68
- "@libp2p/interface-compliance-tests": "^6.4.16",
69
- "@libp2p/logger": "^5.1.21",
70
- "aegir": "^47.0.14",
66
+ "@libp2p/interface-compliance-tests": "6.5.0-a02cb0461",
67
+ "@libp2p/logger": "5.2.0-a02cb0461",
68
+ "aegir": "^47.0.21",
71
69
  "benchmark": "^2.1.4",
72
- "cborg": "^4.2.11",
73
- "delay": "^6.0.0",
74
70
  "iso-random-stream": "^2.0.2",
75
- "it-all": "^3.0.8",
76
- "it-drain": "^3.0.9",
77
- "it-foreach": "^2.1.3",
78
- "it-map": "^3.1.3",
71
+ "it-all": "^3.0.9",
72
+ "it-drain": "^3.0.10",
73
+ "it-foreach": "^2.1.4",
79
74
  "it-pair": "^2.0.6",
80
- "p-defer": "^4.0.1",
75
+ "it-pipe": "^3.0.1",
76
+ "it-stream-types": "^2.0.2",
77
+ "p-event": "^6.0.1",
81
78
  "random-int": "^3.0.0"
82
79
  },
83
80
  "sideEffects": false
package/src/encode.ts CHANGED
@@ -3,7 +3,6 @@ import { Uint8ArrayList } from 'uint8arraylist'
3
3
  import { allocUnsafe } from 'uint8arrays/alloc'
4
4
  import { MessageTypes } from './message-types.js'
5
5
  import type { Message } from './message-types.js'
6
- import type { Source } from 'it-stream-types'
7
6
 
8
7
  const POOL_SIZE = 10 * 1024
9
8
 
@@ -56,10 +55,9 @@ const encoder = new Encoder()
56
55
  /**
57
56
  * Encode and yield one or more messages
58
57
  */
59
- export async function * encode (source: Source<Message>): AsyncGenerator<Uint8Array | Uint8ArrayList, void, undefined> {
60
- for await (const message of source) {
61
- const list = new Uint8ArrayList()
62
- encoder.write(message, list)
63
- yield list
64
- }
58
+ export function encode (message: Message): Uint8ArrayList {
59
+ const list = new Uint8ArrayList()
60
+ encoder.write(message, list)
61
+
62
+ return list
65
63
  }
package/src/index.ts CHANGED
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * This is a [simple stream multiplexer(https://docs.libp2p.io/concepts/multiplex/mplex/) that has been deprecated.
5
5
  *
6
- * Please use [@chainsafe/libp2p-yamux](https://www.npmjs.com/package/@chainsafe/libp2p-yamux) instead.
6
+ * Please use [@libp2p/yamux](https://www.npmjs.com/package/@libp2p/yamux) instead.
7
7
  *
8
8
  * @example
9
9
  *
@@ -33,10 +33,7 @@
33
33
 
34
34
  import { serviceCapabilities } from '@libp2p/interface'
35
35
  import { MplexStreamMuxer } from './mplex.js'
36
- import type { MplexComponents } from './mplex.js'
37
- import type { StreamMuxer, StreamMuxerFactory, StreamMuxerInit } from '@libp2p/interface'
38
-
39
- export type { MplexComponents }
36
+ import type { MultiaddrConnection, StreamMuxer, StreamMuxerFactory } from '@libp2p/interface'
40
37
 
41
38
  export interface MplexInit {
42
39
  /**
@@ -45,9 +42,9 @@ export interface MplexInit {
45
42
  * messages. If we receive a message larger than this an error will
46
43
  * be thrown and the connection closed.
47
44
  *
48
- * @default 1048576
45
+ * @default 1_048_576
49
46
  */
50
- maxMsgSize?: number
47
+ maxMessageSize?: number
51
48
 
52
49
  /**
53
50
  * Constrains the size of the unprocessed message queue buffer.
@@ -55,37 +52,10 @@ export interface MplexInit {
55
52
  * we have the complete message to deserialized. If the queue gets longer
56
53
  * than this value an error will be thrown and the connection closed.
57
54
  *
58
- * @default 4194304
55
+ * @default 4_194_304
59
56
  */
60
57
  maxUnprocessedMessageQueueSize?: number
61
58
 
62
- /**
63
- * The maximum number of multiplexed streams that can be open at any
64
- * one time. A request to open more than this will have a stream
65
- * reset message sent immediately as a response for the newly opened
66
- * stream id
67
- *
68
- * @default 1024
69
- */
70
- maxInboundStreams?: number
71
-
72
- /**
73
- * The maximum number of multiplexed streams that can be open at any
74
- * one time. An attempt to open more than this will throw
75
- *
76
- * @default 1024
77
- */
78
- maxOutboundStreams?: number
79
-
80
- /**
81
- * Incoming stream messages are buffered until processed by the stream
82
- * handler. If the buffer reaches this size in bytes the stream will
83
- * be reset
84
- *
85
- * @default 4194304
86
- */
87
- maxStreamBufferSize?: number
88
-
89
59
  /**
90
60
  * When `maxInboundStreams` is hit, if the remote continues try to open
91
61
  * more than this many new multiplexed streams per second the connection
@@ -99,10 +69,8 @@ export interface MplexInit {
99
69
  class Mplex implements StreamMuxerFactory {
100
70
  public protocol = '/mplex/6.7.0'
101
71
  private readonly _init: MplexInit
102
- private readonly components: MplexComponents
103
72
 
104
- constructor (components: MplexComponents, init: MplexInit = {}) {
105
- this.components = components
73
+ constructor (init: MplexInit = {}) {
106
74
  this._init = init
107
75
  }
108
76
 
@@ -112,9 +80,8 @@ class Mplex implements StreamMuxerFactory {
112
80
  '@libp2p/stream-multiplexing'
113
81
  ]
114
82
 
115
- createStreamMuxer (init: StreamMuxerInit = {}): StreamMuxer {
116
- return new MplexStreamMuxer(this.components, {
117
- ...init,
83
+ createStreamMuxer (maConn: MultiaddrConnection): StreamMuxer {
84
+ return new MplexStreamMuxer(maConn, {
118
85
  ...this._init
119
86
  })
120
87
  }
@@ -123,6 +90,6 @@ class Mplex implements StreamMuxerFactory {
123
90
  /**
124
91
  * @deprecated mplex is deprecated as it has no flow control. Please use yamux instead.
125
92
  */
126
- export function mplex (init: MplexInit = {}): (components: MplexComponents) => StreamMuxerFactory {
127
- return (components) => new Mplex(components, init)
93
+ export function mplex (init: MplexInit = {}): () => StreamMuxerFactory {
94
+ return () => new Mplex(init)
128
95
  }