@libp2p/yamux 8.0.1 → 8.0.2

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,5 +1,5 @@
1
1
  import { InvalidParametersError } from '@libp2p/interface';
2
- import { INITIAL_STREAM_WINDOW, MAX_STREAM_WINDOW } from './constants.js';
2
+ import { INITIAL_STREAM_WINDOW, MAX_STREAM_WINDOW } from "./constants.js";
3
3
  export const defaultConfig = {
4
4
  enableKeepAlive: true,
5
5
  keepAliveInterval: 30_000,
@@ -1,5 +1,5 @@
1
1
  // Protocol violation errors
2
- import { BothClientsError, DecodeInvalidVersionError, InvalidFrameError, NotMatchingPingError, ReceiveWindowExceededError, StreamAlreadyExistsError, UnRequestedPingError } from './errors.js';
2
+ import { BothClientsError, DecodeInvalidVersionError, InvalidFrameError, NotMatchingPingError, ReceiveWindowExceededError, StreamAlreadyExistsError, UnRequestedPingError } from "./errors.js";
3
3
  export const PROTOCOL_ERRORS = new Set([
4
4
  InvalidFrameError.name,
5
5
  UnRequestedPingError.name,
@@ -1,5 +1,5 @@
1
1
  import { Uint8ArrayList } from 'uint8arraylist';
2
- import type { FrameHeader } from './frame.js';
2
+ import type { FrameHeader } from './frame.ts';
3
3
  export interface Frame {
4
4
  header: FrameHeader;
5
5
  data?: Uint8ArrayList;
@@ -1,6 +1,6 @@
1
1
  import { Uint8ArrayList } from 'uint8arraylist';
2
- import { InvalidFrameError } from './errors.js';
3
- import { FrameType, HEADER_LENGTH, YAMUX_VERSION } from './frame.js';
2
+ import { InvalidFrameError } from "./errors.js";
3
+ import { FrameType, HEADER_LENGTH, YAMUX_VERSION } from "./frame.js";
4
4
  export function isDataFrame(frame) {
5
5
  return frame.header.type === FrameType.Data && frame.data !== null;
6
6
  }
@@ -1,3 +1,3 @@
1
- import type { FrameHeader } from './frame.js';
1
+ import type { FrameHeader } from './frame.ts';
2
2
  export declare function encodeHeader(header: FrameHeader): Uint8Array;
3
3
  //# sourceMappingURL=encode.d.ts.map
@@ -1,4 +1,4 @@
1
- import { HEADER_LENGTH } from './frame.js';
1
+ import { HEADER_LENGTH } from "./frame.js";
2
2
  export function encodeHeader(header) {
3
3
  const frame = new Uint8Array(HEADER_LENGTH);
4
4
  // always assume version 0
@@ -3,6 +3,8 @@
3
3
  *
4
4
  * This module is a JavaScript implementation of [Yamux from Hashicorp](https://github.com/hashicorp/yamux/blob/master/spec.md) designed to be used with [js-libp2p](https://github.com/libp2p/js-libp2p).
5
5
  *
6
+ * Formerly published as [`@chainsafe/libp2p-yamux`](https://www.npmjs.com/package/@chainsafe/libp2p-yamux).
7
+ *
6
8
  * @example Configure libp2p with Yamux
7
9
  *
8
10
  * ```typescript
@@ -19,67 +21,49 @@
19
21
  *
20
22
  * @example Using the low-level API
21
23
  *
22
- * ```js
24
+ * ```typescript
23
25
  * import { yamux } from '@libp2p/yamux'
24
- * import { pipe } from 'it-pipe'
25
- * import { duplexPair } from 'it-pair/duplex'
26
- * import all from 'it-all'
27
- *
28
- * // Connect two yamux muxers to demo basic stream multiplexing functionality
29
- *
30
- * const clientMuxer = yamux({
31
- * client: true,
32
- * onIncomingStream: stream => {
33
- * // echo data on incoming streams
34
- * pipe(stream, stream)
35
- * },
36
- * onStreamEnd: stream => {
37
- * // do nothing
38
- * }
39
- * })()
40
- *
41
- * const serverMuxer = yamux({
42
- * client: false,
43
- * onIncomingStream: stream => {
44
- * // echo data on incoming streams
45
- * pipe(stream, stream)
46
- * },
47
- * onStreamEnd: stream => {
48
- * // do nothing
49
- * }
50
- * })()
51
- *
52
- * // `p` is our "connections", what we use to connect the two sides
53
- * // In a real application, a connection is usually to a remote computer
54
- * const p = duplexPair()
55
- *
56
- * // connect the muxers together
57
- * pipe(p[0], clientMuxer, p[0])
58
- * pipe(p[1], serverMuxer, p[1])
59
- *
60
- * // now either side can open streams
61
- * const stream0 = clientMuxer.newStream()
62
- * const stream1 = serverMuxer.newStream()
63
- *
64
- * // Send some data to the other side
65
- * const encoder = new TextEncoder()
66
- * const data = [encoder.encode('hello'), encoder.encode('world')]
67
- * pipe(data, stream0)
68
- *
69
- * // Receive data back
70
- * const result = await pipe(stream0, all)
71
- *
72
- * // close a stream
73
- * stream1.close()
74
- *
75
- * // close the muxer
76
- * clientMuxer.close()
26
+ * import { multiaddrConnectionPair } from '@libp2p/utils'
27
+ *
28
+ * // a pair of connected multiaddr connections - in a real application these
29
+ * // would be the two ends of a network connection
30
+ * const [outboundConnection, inboundConnection] = multiaddrConnectionPair()
31
+ *
32
+ * const clientMuxer = yamux()().createStreamMuxer(outboundConnection)
33
+ * const serverMuxer = yamux()().createStreamMuxer(inboundConnection)
34
+ *
35
+ * // echo incoming data back on the server side
36
+ * serverMuxer.addEventListener('stream', (evt) => {
37
+ * const stream = evt.detail
38
+ *
39
+ * stream.addEventListener('message', (msg) => {
40
+ * stream.send(msg.data)
41
+ * })
42
+ * })
43
+ *
44
+ * // open a stream from the client and send some data
45
+ * const stream = await clientMuxer.createStream()
46
+ *
47
+ * const received = new Promise<string>((resolve) => {
48
+ * stream.addEventListener('message', (msg) => {
49
+ * resolve(new TextDecoder().decode(msg.data.subarray()))
50
+ * })
51
+ * })
52
+ *
53
+ * stream.send(new TextEncoder().encode('hello world'))
54
+ *
55
+ * console.info(await received)
56
+ * // -> hello world
57
+ *
58
+ * await stream.close()
59
+ * await clientMuxer.close()
60
+ * await serverMuxer.close()
77
61
  * ```
78
62
  */
79
- import type { YamuxMuxer, YamuxMuxerInit } from './muxer.js';
63
+ import type { YamuxMuxer, YamuxMuxerInit } from './muxer.ts';
80
64
  import type { StreamMuxerFactory } from '@libp2p/interface';
81
- export { GoAwayCode } from './frame.js';
82
- export type { FrameHeader, FrameType } from './frame.js';
65
+ export { GoAwayCode } from './frame.ts';
66
+ export type { FrameHeader, FrameType } from './frame.ts';
83
67
  export type { YamuxMuxerInit };
84
68
  export declare function yamux(init?: YamuxMuxerInit): () => StreamMuxerFactory<YamuxMuxer>;
85
69
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6EG;AAGH,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAC5D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAE3D,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AACvC,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AACxD,YAAY,EAAE,cAAc,EAAE,CAAA;AAE9B,wBAAgB,KAAK,CAAE,IAAI,GAAE,cAAmB,GAAG,MAAM,kBAAkB,CAAC,UAAU,CAAC,CAEtF"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6DG;AAGH,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAC5D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAE3D,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AACvC,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AACxD,YAAY,EAAE,cAAc,EAAE,CAAA;AAE9B,wBAAgB,KAAK,CAAE,IAAI,GAAE,cAAmB,GAAG,MAAM,kBAAkB,CAAC,UAAU,CAAC,CAEtF"}
package/dist/src/index.js CHANGED
@@ -3,6 +3,8 @@
3
3
  *
4
4
  * This module is a JavaScript implementation of [Yamux from Hashicorp](https://github.com/hashicorp/yamux/blob/master/spec.md) designed to be used with [js-libp2p](https://github.com/libp2p/js-libp2p).
5
5
  *
6
+ * Formerly published as [`@chainsafe/libp2p-yamux`](https://www.npmjs.com/package/@chainsafe/libp2p-yamux).
7
+ *
6
8
  * @example Configure libp2p with Yamux
7
9
  *
8
10
  * ```typescript
@@ -19,65 +21,47 @@
19
21
  *
20
22
  * @example Using the low-level API
21
23
  *
22
- * ```js
24
+ * ```typescript
23
25
  * import { yamux } from '@libp2p/yamux'
24
- * import { pipe } from 'it-pipe'
25
- * import { duplexPair } from 'it-pair/duplex'
26
- * import all from 'it-all'
27
- *
28
- * // Connect two yamux muxers to demo basic stream multiplexing functionality
29
- *
30
- * const clientMuxer = yamux({
31
- * client: true,
32
- * onIncomingStream: stream => {
33
- * // echo data on incoming streams
34
- * pipe(stream, stream)
35
- * },
36
- * onStreamEnd: stream => {
37
- * // do nothing
38
- * }
39
- * })()
40
- *
41
- * const serverMuxer = yamux({
42
- * client: false,
43
- * onIncomingStream: stream => {
44
- * // echo data on incoming streams
45
- * pipe(stream, stream)
46
- * },
47
- * onStreamEnd: stream => {
48
- * // do nothing
49
- * }
50
- * })()
51
- *
52
- * // `p` is our "connections", what we use to connect the two sides
53
- * // In a real application, a connection is usually to a remote computer
54
- * const p = duplexPair()
55
- *
56
- * // connect the muxers together
57
- * pipe(p[0], clientMuxer, p[0])
58
- * pipe(p[1], serverMuxer, p[1])
59
- *
60
- * // now either side can open streams
61
- * const stream0 = clientMuxer.newStream()
62
- * const stream1 = serverMuxer.newStream()
63
- *
64
- * // Send some data to the other side
65
- * const encoder = new TextEncoder()
66
- * const data = [encoder.encode('hello'), encoder.encode('world')]
67
- * pipe(data, stream0)
68
- *
69
- * // Receive data back
70
- * const result = await pipe(stream0, all)
71
- *
72
- * // close a stream
73
- * stream1.close()
74
- *
75
- * // close the muxer
76
- * clientMuxer.close()
26
+ * import { multiaddrConnectionPair } from '@libp2p/utils'
27
+ *
28
+ * // a pair of connected multiaddr connections - in a real application these
29
+ * // would be the two ends of a network connection
30
+ * const [outboundConnection, inboundConnection] = multiaddrConnectionPair()
31
+ *
32
+ * const clientMuxer = yamux()().createStreamMuxer(outboundConnection)
33
+ * const serverMuxer = yamux()().createStreamMuxer(inboundConnection)
34
+ *
35
+ * // echo incoming data back on the server side
36
+ * serverMuxer.addEventListener('stream', (evt) => {
37
+ * const stream = evt.detail
38
+ *
39
+ * stream.addEventListener('message', (msg) => {
40
+ * stream.send(msg.data)
41
+ * })
42
+ * })
43
+ *
44
+ * // open a stream from the client and send some data
45
+ * const stream = await clientMuxer.createStream()
46
+ *
47
+ * const received = new Promise<string>((resolve) => {
48
+ * stream.addEventListener('message', (msg) => {
49
+ * resolve(new TextDecoder().decode(msg.data.subarray()))
50
+ * })
51
+ * })
52
+ *
53
+ * stream.send(new TextEncoder().encode('hello world'))
54
+ *
55
+ * console.info(await received)
56
+ * // -> hello world
57
+ *
58
+ * await stream.close()
59
+ * await clientMuxer.close()
60
+ * await serverMuxer.close()
77
61
  * ```
78
62
  */
79
- import { Yamux } from './muxer.js';
80
- export { GoAwayCode } from './frame.js';
63
+ import { Yamux } from "./muxer.js";
64
+ export { GoAwayCode } from "./frame.js";
81
65
  export function yamux(init = {}) {
82
66
  return () => new Yamux(init);
83
67
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6EG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAIlC,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAIvC,MAAM,UAAU,KAAK,CAAE,OAAuB,EAAE;IAC9C,OAAO,GAAG,EAAE,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,CAAA;AAC9B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6DG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAIlC,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAIvC,MAAM,UAAU,KAAK,CAAE,OAAuB,EAAE;IAC9C,OAAO,GAAG,EAAE,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,CAAA;AAC9B,CAAC"}
@@ -1,9 +1,9 @@
1
1
  import { serviceCapabilities } from '@libp2p/interface';
2
2
  import { AbstractStreamMuxer } from '@libp2p/utils';
3
3
  import { Uint8ArrayList } from 'uint8arraylist';
4
- import { GoAwayCode } from './frame.js';
5
- import { YamuxStream } from './stream.js';
6
- import type { Config } from './config.js';
4
+ import { GoAwayCode } from './frame.ts';
5
+ import { YamuxStream } from './stream.ts';
6
+ import type { Config } from './config.ts';
7
7
  import type { AbortOptions, MessageStream, StreamMuxerFactory } from '@libp2p/interface';
8
8
  export interface YamuxMuxerInit extends Partial<Config> {
9
9
  }
package/dist/src/muxer.js CHANGED
@@ -2,12 +2,12 @@ import { InvalidParametersError, MuxerClosedError, TooManyOutboundProtocolStream
2
2
  import { AbstractStreamMuxer, repeatingTask } from '@libp2p/utils';
3
3
  import { raceSignal } from 'race-signal';
4
4
  import { Uint8ArrayList } from 'uint8arraylist';
5
- import { defaultConfig, verifyConfig } from './config.js';
6
- import { Decoder } from './decode.js';
7
- import { encodeHeader } from './encode.js';
8
- import { InvalidFrameError, isProtocolError, NotMatchingPingError, UnRequestedPingError } from './errors.js';
9
- import { Flag, FrameType, GoAwayCode } from './frame.js';
10
- import { StreamState, YamuxStream } from './stream.js';
5
+ import { defaultConfig, verifyConfig } from "./config.js";
6
+ import { Decoder } from "./decode.js";
7
+ import { encodeHeader } from "./encode.js";
8
+ import { InvalidFrameError, isProtocolError, NotMatchingPingError, UnRequestedPingError } from "./errors.js";
9
+ import { Flag, FrameType, GoAwayCode } from "./frame.js";
10
+ import { StreamState, YamuxStream } from "./stream.js";
11
11
  function debugFrame(header) {
12
12
  return {
13
13
  type: FrameType[header.type],
@@ -1,7 +1,7 @@
1
1
  import { AbstractStream } from '@libp2p/utils';
2
2
  import { Uint8ArrayList } from 'uint8arraylist';
3
3
  import type { Frame } from './decode.ts';
4
- import type { FrameHeader } from './frame.js';
4
+ import type { FrameHeader } from './frame.ts';
5
5
  import type { AbortOptions } from '@libp2p/interface';
6
6
  import type { AbstractStreamInit, SendResult } from '@libp2p/utils';
7
7
  export declare enum StreamState {
@@ -48,7 +48,7 @@ export declare class YamuxStream extends AbstractStream {
48
48
  /**
49
49
  * Send a reset message to the remote muxer
50
50
  */
51
- sendReset(): Promise<void>;
51
+ sendReset(): void;
52
52
  /**
53
53
  * Send a message to the remote muxer, informing them no more data messages
54
54
  * will be sent by this end of the stream
@@ -1 +1 @@
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,KAAK,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAC7C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACrD,OAAO,KAAK,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAEnE,oBAAY,WAAW;IACrB,IAAI,IAAA;IACJ,OAAO,IAAA;IACP,WAAW,IAAA;IACX,WAAW,IAAA;IACX,QAAQ,IAAA;IACR,MAAM,IAAA;CACP;AAED,MAAM,WAAW,eAAgB,SAAQ,kBAAkB;IACzD,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,CAAC,EAAE,cAAc,GAAG,OAAO,CAAA;IAC9D,MAAM,IAAI,MAAM,CAAA;IAChB,uBAAuB,CAAC,EAAE,MAAM,CAAA;IAChC,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,KAAK,EAAE,WAAW,CAAA;CACnB;AAED,yEAAyE;AACzE,qBAAa,WAAY,SAAQ,cAAc;IAC7C,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,WAAW,CAAA;IAElB,4CAA4C;IAC5C,OAAO,CAAC,kBAAkB,CAAQ;IAClC,gEAAgE;IAChE,OAAO,CAAC,UAAU,CAAQ;IAC1B,+CAA+C;IAC/C,OAAO,CAAC,kBAAkB,CAAQ;IAClC,OAAO,CAAC,mBAAmB,CAAQ;IAEnC;;;;OAIG;IACH,OAAO,CAAC,UAAU,CAAQ;IAC1B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAc;IAErC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAyD;gBAEtE,IAAI,EAAE,eAAe;IAwBlC;;OAEG;IACH,QAAQ,CAAE,GAAG,EAAE,cAAc,GAAG,UAAU;IA8C1C;;OAEG;IACG,SAAS,IAAK,OAAO,CAAC,IAAI,CAAC;IASjC;;;OAGG;IACG,cAAc,IAAK,OAAO,CAAC,IAAI,CAAC;IAUtC;;;OAGG;IACG,aAAa,CAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAI3D;;;OAGG;IACH,SAAS,IAAK,IAAI;IAIlB;;OAEG;IACH,UAAU,IAAK,IAAI;IAKnB;;OAEG;IACH,kBAAkB,CAAE,KAAK,EAAE,KAAK,GAAG,IAAI;IAyBvC;;OAEG;IACH,UAAU,CAAE,KAAK,EAAE,KAAK,GAAG,IAAI;IAmB/B;;OAEG;IACH,OAAO,CAAC,YAAY;IAgBpB;;;;;OAKG;IACH,OAAO,CAAC,YAAY;IAapB;;;OAGG;IACH,gBAAgB,IAAK,IAAI;CA4C1B"}
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,KAAK,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAC7C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACrD,OAAO,KAAK,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAEnE,oBAAY,WAAW;IACrB,IAAI,IAAA;IACJ,OAAO,IAAA;IACP,WAAW,IAAA;IACX,WAAW,IAAA;IACX,QAAQ,IAAA;IACR,MAAM,IAAA;CACP;AAED,MAAM,WAAW,eAAgB,SAAQ,kBAAkB;IACzD,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,CAAC,EAAE,cAAc,GAAG,OAAO,CAAA;IAC9D,MAAM,IAAI,MAAM,CAAA;IAChB,uBAAuB,CAAC,EAAE,MAAM,CAAA;IAChC,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,KAAK,EAAE,WAAW,CAAA;CACnB;AAED,yEAAyE;AACzE,qBAAa,WAAY,SAAQ,cAAc;IAC7C,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,WAAW,CAAA;IAElB,4CAA4C;IAC5C,OAAO,CAAC,kBAAkB,CAAQ;IAClC,gEAAgE;IAChE,OAAO,CAAC,UAAU,CAAQ;IAC1B,+CAA+C;IAC/C,OAAO,CAAC,kBAAkB,CAAQ;IAClC,OAAO,CAAC,mBAAmB,CAAQ;IAEnC;;;;OAIG;IACH,OAAO,CAAC,UAAU,CAAQ;IAC1B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAc;IAErC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAyD;gBAEtE,IAAI,EAAE,eAAe;IAwBlC;;OAEG;IACH,QAAQ,CAAE,GAAG,EAAE,cAAc,GAAG,UAAU;IA8C1C;;OAEG;IACH,SAAS,IAAK,IAAI;IASlB;;;OAGG;IACG,cAAc,IAAK,OAAO,CAAC,IAAI,CAAC;IAUtC;;;OAGG;IACG,aAAa,CAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAI3D;;;OAGG;IACH,SAAS,IAAK,IAAI;IAIlB;;OAEG;IACH,UAAU,IAAK,IAAI;IAKnB;;OAEG;IACH,kBAAkB,CAAE,KAAK,EAAE,KAAK,GAAG,IAAI;IAyBvC;;OAEG;IACH,UAAU,CAAE,KAAK,EAAE,KAAK,GAAG,IAAI;IAmB/B;;OAEG;IACH,OAAO,CAAC,YAAY;IAgBpB;;;;;OAKG;IACH,OAAO,CAAC,YAAY;IAapB;;;OAGG;IACH,gBAAgB,IAAK,IAAI;CA4C1B"}
@@ -1,9 +1,9 @@
1
1
  import { AbstractStream } from '@libp2p/utils';
2
2
  import { Uint8ArrayList } from 'uint8arraylist';
3
- import { INITIAL_STREAM_WINDOW, MAX_STREAM_WINDOW } from './constants.js';
3
+ import { INITIAL_STREAM_WINDOW, MAX_STREAM_WINDOW } from "./constants.js";
4
4
  import { isDataFrame } from "./decode.js";
5
- import { InvalidFrameError, ReceiveWindowExceededError } from './errors.js';
6
- import { Flag, FrameType, HEADER_LENGTH } from './frame.js';
5
+ import { InvalidFrameError, ReceiveWindowExceededError } from "./errors.js";
6
+ import { Flag, FrameType, HEADER_LENGTH } from "./frame.js";
7
7
  export var StreamState;
8
8
  (function (StreamState) {
9
9
  StreamState[StreamState["Init"] = 0] = "Init";
@@ -95,7 +95,7 @@ export class YamuxStream extends AbstractStream {
95
95
  /**
96
96
  * Send a reset message to the remote muxer
97
97
  */
98
- async sendReset() {
98
+ sendReset() {
99
99
  this.sendFrame({
100
100
  type: FrameType.WindowUpdate,
101
101
  flag: Flag.RST,
@@ -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/yamux",
3
- "version": "8.0.1",
3
+ "version": "8.0.2",
4
4
  "description": "Yamux stream multiplexer for libp2p",
5
5
  "license": "Apache-2.0 OR MIT",
6
6
  "homepage": "https://github.com/libp2p/js-libp2p/tree/main/packages/stream-multiplexer-yamux#readme",
@@ -49,15 +49,18 @@
49
49
  "exports": {
50
50
  ".": {
51
51
  "types": "./dist/src/index.d.ts",
52
- "import": "./dist/src/index.js"
52
+ "import": "./dist/src/index.js",
53
+ "module-sync": "./dist/src/index.js"
53
54
  },
54
55
  "./config": {
55
56
  "types": "./dist/src/config.d.ts",
56
- "import": "./dist/src/config.js"
57
+ "import": "./dist/src/config.js",
58
+ "module-sync": "./dist/src/config.js"
57
59
  },
58
60
  "./stream": {
59
61
  "types": "./dist/src/stream.d.ts",
60
- "import": "./dist/src/stream.js"
62
+ "import": "./dist/src/stream.js",
63
+ "module-sync": "./dist/src/stream.js"
61
64
  }
62
65
  },
63
66
  "scripts": {
@@ -65,31 +68,31 @@
65
68
  "lint": "aegir lint",
66
69
  "dep-check": "aegir dep-check",
67
70
  "doc-check": "aegir doc-check",
68
- "benchmark": "benchmark dist/test/bench/*.bench.js --timeout 400000",
69
71
  "build": "aegir build",
72
+ "benchmark": "benchmark dist/test/bench/*.bench.js --timeout 400000",
70
73
  "test": "aegir test",
71
- "test:chrome": "aegir test -t browser",
74
+ "test:chrome": "aegir test -t browser --cov",
72
75
  "test:chrome-webworker": "aegir test -t webworker",
73
76
  "test:firefox": "aegir test -t browser -- --browser firefox",
74
77
  "test:firefox-webworker": "aegir test -t webworker -- --browser firefox",
75
78
  "test:node": "aegir test -t node --cov",
76
- "test:electron-main": "aegir test -t electron-main",
77
- "docs": "aegir docs"
79
+ "test:electron-main": "aegir test -t electron-main"
78
80
  },
79
81
  "dependencies": {
80
- "@libp2p/interface": "^3.0.0",
81
- "@libp2p/utils": "^7.0.1",
82
+ "@libp2p/interface": "^3.3.0",
83
+ "@libp2p/utils": "^7.4.1",
82
84
  "race-signal": "^2.0.0",
83
- "uint8arraylist": "^2.4.8"
85
+ "uint8arraylist": "^3.0.2"
84
86
  },
85
87
  "devDependencies": {
86
88
  "@dapplion/benchmark": "^1.0.0",
87
- "@libp2p/interface-compliance-tests": "^7.0.1",
88
- "@libp2p/mplex": "^12.0.1",
89
- "aegir": "^47.0.22",
89
+ "@libp2p/interface-compliance-tests": "^7.0.31",
90
+ "@libp2p/mplex": "^12.0.31",
91
+ "aegir": "^48.1.1",
90
92
  "it-all": "^3.0.9",
91
93
  "it-drain": "^3.0.10",
92
94
  "it-pushable": "^3.2.3",
93
95
  "p-event": "^7.0.0"
94
- }
96
+ },
97
+ "sideEffects": false
95
98
  }
package/src/config.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { InvalidParametersError } from '@libp2p/interface'
2
- import { INITIAL_STREAM_WINDOW, MAX_STREAM_WINDOW } from './constants.js'
2
+ import { INITIAL_STREAM_WINDOW, MAX_STREAM_WINDOW } from './constants.ts'
3
3
  import type { StreamMuxerOptions, StreamOptions } from '@libp2p/interface'
4
4
 
5
5
  export interface YamuxStreamOptions extends StreamOptions {
package/src/constants.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  // Protocol violation errors
2
2
 
3
- import { BothClientsError, DecodeInvalidVersionError, InvalidFrameError, NotMatchingPingError, ReceiveWindowExceededError, StreamAlreadyExistsError, UnRequestedPingError } from './errors.js'
3
+ import { BothClientsError, DecodeInvalidVersionError, InvalidFrameError, NotMatchingPingError, ReceiveWindowExceededError, StreamAlreadyExistsError, UnRequestedPingError } from './errors.ts'
4
4
 
5
5
  export const PROTOCOL_ERRORS = new Set([
6
6
  InvalidFrameError.name,
package/src/decode.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { Uint8ArrayList } from 'uint8arraylist'
2
- import { InvalidFrameError } from './errors.js'
3
- import { FrameType, HEADER_LENGTH, YAMUX_VERSION } from './frame.js'
4
- import type { FrameHeader } from './frame.js'
2
+ import { InvalidFrameError } from './errors.ts'
3
+ import { FrameType, HEADER_LENGTH, YAMUX_VERSION } from './frame.ts'
4
+ import type { FrameHeader } from './frame.ts'
5
5
 
6
6
  export interface Frame {
7
7
  header: FrameHeader
package/src/encode.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { HEADER_LENGTH } from './frame.js'
2
- import type { FrameHeader } from './frame.js'
1
+ import { HEADER_LENGTH } from './frame.ts'
2
+ import type { FrameHeader } from './frame.ts'
3
3
 
4
4
  export function encodeHeader (header: FrameHeader): Uint8Array {
5
5
  const frame = new Uint8Array(HEADER_LENGTH)