@libp2p/webtransport 2.0.2-ab0e3980 → 2.0.2-c2232166

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
- import { type Transport } from '@libp2p/interface-transport';
2
- import type { PeerId } from '@libp2p/interface-peer-id';
1
+ import { type Transport } from '@libp2p/interface/transport';
2
+ import type { PeerId } from '@libp2p/interface/peer-id';
3
3
  declare global {
4
4
  var WebTransport: any;
5
5
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,SAAS,EAAuE,MAAM,6BAA6B,CAAA;AAOjI,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAKvD,OAAO,CAAC,MAAM,CAAC;IACb,IAAI,YAAY,EAAE,GAAG,CAAA;CACtB;AA8OD,wBAAgB,QAAQ,CAAE,GAAG,EAAE,UAAU,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,OAAO,CAgB/E;AAED,MAAM,WAAW,gBAAgB;IAC/B,iBAAiB,CAAC,EAAE,MAAM,CAAA;CAC3B;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,MAAM,CAAA;CACf;AA+ND,wBAAgB,YAAY,CAAE,IAAI,GAAE,gBAAqB,GAAG,CAAC,UAAU,EAAE,sBAAsB,KAAK,SAAS,CAE5G"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,SAAS,EAAuE,MAAM,6BAA6B,CAAA;AAOjI,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAKvD,OAAO,CAAC,MAAM,CAAC;IACb,IAAI,YAAY,EAAE,GAAG,CAAA;CACtB;AAwRD,wBAAgB,QAAQ,CAAE,GAAG,EAAE,UAAU,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,OAAO,CAgB/E;AAED,MAAM,WAAW,gBAAgB;IAC/B,iBAAiB,CAAC,EAAE,MAAM,CAAA;CAC3B;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,MAAM,CAAA;CACf;AA4ND,wBAAgB,YAAY,CAAE,IAAI,GAAE,gBAAqB,GAAG,CAAC,UAAU,EAAE,sBAAsB,KAAK,SAAS,CAE5G"}
package/dist/src/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { noise } from '@chainsafe/libp2p-noise';
2
- import { symbol } from '@libp2p/interface-transport';
2
+ import { symbol } from '@libp2p/interface/transport';
3
3
  import { logger } from '@libp2p/logger';
4
4
  import { peerIdFromString } from '@libp2p/peer-id';
5
5
  import { protocols } from '@multiformats/multiaddr';
@@ -38,7 +38,7 @@ async function webtransportBiDiStreamToStream(bidiStream, streamId, direction, a
38
38
  const index = activeStreams.findIndex(s => s === stream);
39
39
  if (index !== -1) {
40
40
  activeStreams.splice(index, 1);
41
- stream.stat.timeline.close = Date.now();
41
+ stream.timeline.close = Date.now();
42
42
  onStreamEnd?.(stream);
43
43
  }
44
44
  }
@@ -74,53 +74,75 @@ async function webtransportBiDiStreamToStream(bidiStream, streamId, direction, a
74
74
  let sinkSunk = false;
75
75
  const stream = {
76
76
  id: streamId,
77
- abort(_err) {
77
+ status: 'open',
78
+ writeStatus: 'ready',
79
+ readStatus: 'ready',
80
+ abort(err) {
78
81
  if (!writerClosed) {
79
82
  writer.abort();
80
83
  writerClosed = true;
81
84
  }
82
- stream.closeRead();
85
+ stream.abort(err);
83
86
  readerClosed = true;
87
+ this.status = 'aborted';
88
+ this.writeStatus = 'closed';
89
+ this.readStatus = 'closed';
90
+ this.timeline.reset =
91
+ this.timeline.close =
92
+ this.timeline.closeRead =
93
+ this.timeline.closeWrite = Date.now();
84
94
  cleanupStreamFromActiveStreams();
85
95
  },
86
- close() {
87
- stream.closeRead();
88
- stream.closeWrite();
96
+ async close(options) {
97
+ this.status = 'closing';
98
+ await Promise.all([
99
+ stream.closeRead(options),
100
+ stream.closeWrite(options)
101
+ ]);
89
102
  cleanupStreamFromActiveStreams();
103
+ this.status = 'closed';
104
+ this.timeline.close = Date.now();
90
105
  },
91
- closeRead() {
106
+ async closeRead(options) {
92
107
  if (!readerClosed) {
93
- reader.cancel().catch((err) => {
108
+ this.readStatus = 'closing';
109
+ try {
110
+ await reader.cancel();
111
+ }
112
+ catch (err) {
94
113
  if (err.toString().includes('RESET_STREAM') === true) {
95
114
  writerClosed = true;
96
115
  }
97
- });
116
+ }
117
+ this.timeline.closeRead = Date.now();
118
+ this.readStatus = 'closed';
98
119
  readerClosed = true;
99
120
  }
100
121
  if (writerClosed) {
101
122
  cleanupStreamFromActiveStreams();
102
123
  }
103
124
  },
104
- closeWrite() {
125
+ async closeWrite(options) {
105
126
  if (!writerClosed) {
106
127
  writerClosed = true;
107
- writer.close().catch((err) => {
128
+ this.writeStatus = 'closing';
129
+ try {
130
+ await writer.close();
131
+ }
132
+ catch (err) {
108
133
  if (err.toString().includes('RESET_STREAM') === true) {
109
134
  readerClosed = true;
110
135
  }
111
- });
136
+ }
137
+ this.timeline.closeWrite = Date.now();
138
+ this.writeStatus = 'closed';
112
139
  }
113
140
  if (readerClosed) {
114
141
  cleanupStreamFromActiveStreams();
115
142
  }
116
143
  },
117
- reset() {
118
- stream.close();
119
- },
120
- stat: {
121
- direction,
122
- timeline: { open: Date.now() }
123
- },
144
+ direction,
145
+ timeline: { open: Date.now() },
124
146
  metadata: {},
125
147
  source: (async function* () {
126
148
  while (true) {
@@ -141,6 +163,7 @@ async function webtransportBiDiStreamToStream(bidiStream, streamId, direction, a
141
163
  }
142
164
  sinkSunk = true;
143
165
  try {
166
+ this.writeStatus = 'writing';
144
167
  for await (const chunks of source) {
145
168
  if (chunks instanceof Uint8Array) {
146
169
  await writer.write(chunks);
@@ -151,9 +174,12 @@ async function webtransportBiDiStreamToStream(bidiStream, streamId, direction, a
151
174
  }
152
175
  }
153
176
  }
177
+ this.writeStatus = 'done';
154
178
  }
155
179
  finally {
156
- stream.closeWrite();
180
+ this.timeline.closeWrite = Date.now();
181
+ this.writeStatus = 'closed';
182
+ await stream.closeWrite();
157
183
  }
158
184
  }
159
185
  };
@@ -283,10 +309,12 @@ class WebTransportTransport {
283
309
  throw new Error('Failed to authenticate webtransport');
284
310
  }
285
311
  const maConn = {
286
- close: async (err) => {
287
- if (err != null) {
288
- log('Closing webtransport with err:', err);
289
- }
312
+ close: async (options) => {
313
+ log('Closing webtransport');
314
+ await wt.close();
315
+ },
316
+ abort: (err) => {
317
+ log('Aborting webtransport with err:', err);
290
318
  wt.close();
291
319
  },
292
320
  remoteAddr: ma,
@@ -398,22 +426,17 @@ class WebTransportTransport {
398
426
  /**
399
427
  * Close or abort all tracked streams and stop the muxer
400
428
  */
401
- close: (err) => {
402
- if (err != null) {
403
- log('Closing webtransport muxer with err:', err);
404
- }
429
+ close: async (options) => {
430
+ log('Closing webtransport muxer');
431
+ await wt.close();
432
+ },
433
+ abort: (err) => {
434
+ log('Aborting webtransport muxer with err:', err);
405
435
  wt.close();
406
436
  },
407
437
  // This stream muxer is webtransport native. Therefore it doesn't plug in with any other duplex.
408
438
  ...inertDuplex()
409
439
  };
410
- try {
411
- init?.signal?.throwIfAborted();
412
- }
413
- catch (e) {
414
- wt.close();
415
- throw e;
416
- }
417
440
  return muxer;
418
441
  }
419
442
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@libp2p/webtransport",
3
- "version": "2.0.2-ab0e3980",
3
+ "version": "2.0.2-c2232166",
4
4
  "description": "JavaScript implementation of the WebTransport module that libp2p uses and that implements the interface-transport spec",
5
5
  "license": "Apache-2.0 OR MIT",
6
6
  "homepage": "https://github.com/libp2p/js-libp2p/tree/master/packages/transport-webtransport#readme",
@@ -65,20 +65,17 @@
65
65
  },
66
66
  "dependencies": {
67
67
  "@chainsafe/libp2p-noise": "^12.0.1",
68
- "@libp2p/interface-connection": "5.1.1-ab0e3980",
69
- "@libp2p/interface-peer-id": "2.0.2-ab0e3980",
70
- "@libp2p/interface-stream-muxer": "4.1.2-ab0e3980",
71
- "@libp2p/interface-transport": "4.0.3-ab0e3980",
72
- "@libp2p/logger": "2.1.1-ab0e3980",
73
- "@libp2p/peer-id": "2.0.3-ab0e3980",
68
+ "@libp2p/interface": "0.0.1-c2232166",
69
+ "@libp2p/logger": "2.1.1-c2232166",
70
+ "@libp2p/peer-id": "2.0.3-c2232166",
74
71
  "@multiformats/multiaddr": "^12.1.3",
75
72
  "it-stream-types": "^2.0.1",
76
- "multiformats": "^11.0.2",
73
+ "multiformats": "^12.0.1",
77
74
  "uint8arraylist": "^2.4.3"
78
75
  },
79
76
  "devDependencies": {
80
- "aegir": "^39.0.10",
81
- "libp2p": "0.45.9-ab0e3980",
77
+ "aegir": "^39.0.13",
78
+ "libp2p": "0.45.9-c2232166",
82
79
  "p-defer": "^4.0.0"
83
80
  },
84
81
  "browser": {
package/src/index.ts CHANGED
@@ -1,13 +1,13 @@
1
1
  import { noise } from '@chainsafe/libp2p-noise'
2
- import { type Transport, symbol, type CreateListenerOptions, type DialOptions, type Listener } from '@libp2p/interface-transport'
2
+ import { type Transport, symbol, type CreateListenerOptions, type DialOptions, type Listener } from '@libp2p/interface/transport'
3
3
  import { logger } from '@libp2p/logger'
4
4
  import { peerIdFromString } from '@libp2p/peer-id'
5
- import { type Multiaddr, protocols } from '@multiformats/multiaddr'
5
+ import { type Multiaddr, protocols, type AbortOptions } from '@multiformats/multiaddr'
6
6
  import { bases, digest } from 'multiformats/basics'
7
7
  import { Uint8ArrayList } from 'uint8arraylist'
8
- import type { Connection, Direction, MultiaddrConnection, Stream } from '@libp2p/interface-connection'
9
- import type { PeerId } from '@libp2p/interface-peer-id'
10
- import type { StreamMuxerFactory, StreamMuxerInit, StreamMuxer } from '@libp2p/interface-stream-muxer'
8
+ import type { Connection, Direction, MultiaddrConnection, Stream } from '@libp2p/interface/connection'
9
+ import type { PeerId } from '@libp2p/interface/peer-id'
10
+ import type { StreamMuxerFactory, StreamMuxerInit, StreamMuxer } from '@libp2p/interface/stream-muxer'
11
11
  import type { Duplex, Source } from 'it-stream-types'
12
12
  import type { MultihashDigest } from 'multiformats/hashes/interface'
13
13
 
@@ -53,7 +53,7 @@ async function webtransportBiDiStreamToStream (bidiStream: any, streamId: string
53
53
  const index = activeStreams.findIndex(s => s === stream)
54
54
  if (index !== -1) {
55
55
  activeStreams.splice(index, 1)
56
- stream.stat.timeline.close = Date.now()
56
+ stream.timeline.close = Date.now()
57
57
  onStreamEnd?.(stream)
58
58
  }
59
59
  }
@@ -92,54 +92,89 @@ async function webtransportBiDiStreamToStream (bidiStream: any, streamId: string
92
92
  let sinkSunk = false
93
93
  const stream: Stream = {
94
94
  id: streamId,
95
- abort (_err: Error) {
95
+ status: 'open',
96
+ writeStatus: 'ready',
97
+ readStatus: 'ready',
98
+ abort (err: Error) {
96
99
  if (!writerClosed) {
97
100
  writer.abort()
98
101
  writerClosed = true
99
102
  }
100
- stream.closeRead()
103
+ stream.abort(err)
101
104
  readerClosed = true
105
+
106
+ this.status = 'aborted'
107
+ this.writeStatus = 'closed'
108
+ this.readStatus = 'closed'
109
+
110
+ this.timeline.reset =
111
+ this.timeline.close =
112
+ this.timeline.closeRead =
113
+ this.timeline.closeWrite = Date.now()
114
+
102
115
  cleanupStreamFromActiveStreams()
103
116
  },
104
- close () {
105
- stream.closeRead()
106
- stream.closeWrite()
117
+ async close (options?: AbortOptions) {
118
+ this.status = 'closing'
119
+
120
+ await Promise.all([
121
+ stream.closeRead(options),
122
+ stream.closeWrite(options)
123
+ ])
124
+
107
125
  cleanupStreamFromActiveStreams()
126
+
127
+ this.status = 'closed'
128
+ this.timeline.close = Date.now()
108
129
  },
109
130
 
110
- closeRead () {
131
+ async closeRead (options?: AbortOptions) {
111
132
  if (!readerClosed) {
112
- reader.cancel().catch((err: any) => {
133
+ this.readStatus = 'closing'
134
+
135
+ try {
136
+ await reader.cancel()
137
+ } catch (err: any) {
113
138
  if (err.toString().includes('RESET_STREAM') === true) {
114
139
  writerClosed = true
115
140
  }
116
- })
141
+ }
142
+
143
+ this.timeline.closeRead = Date.now()
144
+ this.readStatus = 'closed'
145
+
117
146
  readerClosed = true
118
147
  }
148
+
119
149
  if (writerClosed) {
120
150
  cleanupStreamFromActiveStreams()
121
151
  }
122
152
  },
123
- closeWrite () {
153
+
154
+ async closeWrite (options?: AbortOptions) {
124
155
  if (!writerClosed) {
125
156
  writerClosed = true
126
- writer.close().catch((err: any) => {
157
+
158
+ this.writeStatus = 'closing'
159
+
160
+ try {
161
+ await writer.close()
162
+ } catch (err: any) {
127
163
  if (err.toString().includes('RESET_STREAM') === true) {
128
164
  readerClosed = true
129
165
  }
130
- })
166
+ }
167
+
168
+ this.timeline.closeWrite = Date.now()
169
+ this.writeStatus = 'closed'
131
170
  }
171
+
132
172
  if (readerClosed) {
133
173
  cleanupStreamFromActiveStreams()
134
174
  }
135
175
  },
136
- reset () {
137
- stream.close()
138
- },
139
- stat: {
140
- direction,
141
- timeline: { open: Date.now() }
142
- },
176
+ direction,
177
+ timeline: { open: Date.now() },
143
178
  metadata: {},
144
179
  source: (async function * () {
145
180
  while (true) {
@@ -161,6 +196,8 @@ async function webtransportBiDiStreamToStream (bidiStream: any, streamId: string
161
196
  }
162
197
  sinkSunk = true
163
198
  try {
199
+ this.writeStatus = 'writing'
200
+
164
201
  for await (const chunks of source) {
165
202
  if (chunks instanceof Uint8Array) {
166
203
  await writer.write(chunks)
@@ -170,8 +207,13 @@ async function webtransportBiDiStreamToStream (bidiStream: any, streamId: string
170
207
  }
171
208
  }
172
209
  }
210
+
211
+ this.writeStatus = 'done'
173
212
  } finally {
174
- stream.closeWrite()
213
+ this.timeline.closeWrite = Date.now()
214
+ this.writeStatus = 'closed'
215
+
216
+ await stream.closeWrite()
175
217
  }
176
218
  }
177
219
  }
@@ -327,10 +369,12 @@ class WebTransportTransport implements Transport {
327
369
  }
328
370
 
329
371
  const maConn: MultiaddrConnection = {
330
- close: async (err?: Error) => {
331
- if (err != null) {
332
- log('Closing webtransport with err:', err)
333
- }
372
+ close: async (options?: AbortOptions) => {
373
+ log('Closing webtransport')
374
+ await wt.close()
375
+ },
376
+ abort: (err: Error) => {
377
+ log('Aborting webtransport with err:', err)
334
378
  wt.close()
335
379
  },
336
380
  remoteAddr: ma,
@@ -464,23 +508,18 @@ class WebTransportTransport implements Transport {
464
508
  /**
465
509
  * Close or abort all tracked streams and stop the muxer
466
510
  */
467
- close: (err?: Error) => {
468
- if (err != null) {
469
- log('Closing webtransport muxer with err:', err)
470
- }
511
+ close: async (options?: AbortOptions) => {
512
+ log('Closing webtransport muxer')
513
+ await wt.close()
514
+ },
515
+ abort: (err: Error) => {
516
+ log('Aborting webtransport muxer with err:', err)
471
517
  wt.close()
472
518
  },
473
519
  // This stream muxer is webtransport native. Therefore it doesn't plug in with any other duplex.
474
520
  ...inertDuplex()
475
521
  }
476
522
 
477
- try {
478
- init?.signal?.throwIfAborted()
479
- } catch (e) {
480
- wt.close()
481
- throw e
482
- }
483
-
484
523
  return muxer
485
524
  }
486
525
  }