@dxos/teleport 0.3.5-next.63b0922 → 0.3.5
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.
- package/dist/lib/browser/{chunk-NRNKGCJ5.mjs → chunk-MG5IAKD3.mjs} +35 -33
- package/dist/lib/browser/chunk-MG5IAKD3.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +2 -2
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/testing/index.mjs +1 -1
- package/dist/lib/node/index.cjs +35 -33
- package/dist/lib/node/index.cjs.map +3 -3
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node/testing/index.cjs +34 -32
- package/dist/lib/node/testing/index.cjs.map +3 -3
- package/dist/types/src/muxing/muxer.d.ts +2 -2
- package/dist/types/src/muxing/muxer.d.ts.map +1 -1
- package/package.json +12 -12
- package/src/muxing/balancer.ts +3 -3
- package/src/muxing/muxer.ts +10 -8
- package/dist/lib/browser/chunk-NRNKGCJ5.mjs.map +0 -7
package/dist/lib/node/index.cjs
CHANGED
|
@@ -49,7 +49,7 @@ var import_node_stream = require("node:stream");
|
|
|
49
49
|
var import_async = require("@dxos/async");
|
|
50
50
|
var import_invariant = require("@dxos/invariant");
|
|
51
51
|
var import_log = require("@dxos/log");
|
|
52
|
-
var __dxlog_file = "/
|
|
52
|
+
var __dxlog_file = "/mnt/ramdisk/work/packages/core/mesh/teleport/src/muxing/framer.ts";
|
|
53
53
|
var FRAME_LENGTH_SIZE = 2;
|
|
54
54
|
var Framer = class {
|
|
55
55
|
constructor() {
|
|
@@ -224,7 +224,7 @@ var varint = __toESM(require("varint"));
|
|
|
224
224
|
var import_async2 = require("@dxos/async");
|
|
225
225
|
var import_invariant2 = require("@dxos/invariant");
|
|
226
226
|
var import_log2 = require("@dxos/log");
|
|
227
|
-
var __dxlog_file2 = "/
|
|
227
|
+
var __dxlog_file2 = "/mnt/ramdisk/work/packages/core/mesh/teleport/src/muxing/balancer.ts";
|
|
228
228
|
var MAX_CHUNK_SIZE = 8192;
|
|
229
229
|
var Balancer = class {
|
|
230
230
|
constructor(_sysChannelId) {
|
|
@@ -254,7 +254,7 @@ var Balancer = class {
|
|
|
254
254
|
}
|
|
255
255
|
pushData(data, trigger, channelId) {
|
|
256
256
|
this._enqueueChunk(data, trigger, channelId);
|
|
257
|
-
this._sendChunks(
|
|
257
|
+
this._sendChunks().catch((err) => import_log2.log.catch(err, void 0, {
|
|
258
258
|
F: __dxlog_file2,
|
|
259
259
|
L: 75,
|
|
260
260
|
S: this,
|
|
@@ -350,7 +350,7 @@ var Balancer = class {
|
|
|
350
350
|
}
|
|
351
351
|
return null;
|
|
352
352
|
}
|
|
353
|
-
async _sendChunks(
|
|
353
|
+
async _sendChunks() {
|
|
354
354
|
if (this._sending) {
|
|
355
355
|
return;
|
|
356
356
|
}
|
|
@@ -429,7 +429,7 @@ var decodeChunk = (data, withLength) => {
|
|
|
429
429
|
};
|
|
430
430
|
|
|
431
431
|
// packages/core/mesh/teleport/src/muxing/muxer.ts
|
|
432
|
-
var __dxlog_file3 = "/
|
|
432
|
+
var __dxlog_file3 = "/mnt/ramdisk/work/packages/core/mesh/teleport/src/muxing/muxer.ts";
|
|
433
433
|
var Command = import_protocols.schema.getCodecForType("dxos.mesh.muxer.Command");
|
|
434
434
|
var DEFAULT_SEND_COMMAND_TIMEOUT = 6e4;
|
|
435
435
|
var DESTROY_COMMAND_SEND_TIMEOUT = 5e3;
|
|
@@ -444,9 +444,9 @@ var Muxer = class {
|
|
|
444
444
|
this._channelsByTag = /* @__PURE__ */ new Map();
|
|
445
445
|
this._ctx = new import_context.Context();
|
|
446
446
|
this._nextId = 1;
|
|
447
|
-
this._destroyed = false;
|
|
448
|
-
this._destroying = false;
|
|
449
447
|
this._closing = false;
|
|
448
|
+
this._destroying = false;
|
|
449
|
+
this._disposed = false;
|
|
450
450
|
this._lastStats = void 0;
|
|
451
451
|
this._lastChannelStats = /* @__PURE__ */ new Map();
|
|
452
452
|
this.afterClosed = new import_async3.Event();
|
|
@@ -455,7 +455,6 @@ var Muxer = class {
|
|
|
455
455
|
this._balancer.incomingData.on(async (msg) => {
|
|
456
456
|
await this._handleCommand(Command.decode(msg));
|
|
457
457
|
});
|
|
458
|
-
(0, import_async3.scheduleTaskInterval)(this._ctx, async () => this._emitStats(), STATS_INTERVAL);
|
|
459
458
|
}
|
|
460
459
|
/**
|
|
461
460
|
* Creates a duplex Node.js-style stream.
|
|
@@ -470,7 +469,7 @@ var Muxer = class {
|
|
|
470
469
|
});
|
|
471
470
|
(0, import_invariant3.invariant)(!channel.push, `Channel already open: ${tag}`, {
|
|
472
471
|
F: __dxlog_file3,
|
|
473
|
-
L:
|
|
472
|
+
L: 140,
|
|
474
473
|
S: this,
|
|
475
474
|
A: [
|
|
476
475
|
"!channel.push",
|
|
@@ -518,7 +517,7 @@ var Muxer = class {
|
|
|
518
517
|
});
|
|
519
518
|
(0, import_invariant3.invariant)(!channel.push, `Channel already open: ${tag}`, {
|
|
520
519
|
F: __dxlog_file3,
|
|
521
|
-
L:
|
|
520
|
+
L: 192,
|
|
522
521
|
S: this,
|
|
523
522
|
A: [
|
|
524
523
|
"!channel.push",
|
|
@@ -542,7 +541,7 @@ var Muxer = class {
|
|
|
542
541
|
subscribe: (cb) => {
|
|
543
542
|
(0, import_invariant3.invariant)(!callback, "Only one subscriber is allowed", {
|
|
544
543
|
F: __dxlog_file3,
|
|
545
|
-
L:
|
|
544
|
+
L: 214,
|
|
546
545
|
S: this,
|
|
547
546
|
A: [
|
|
548
547
|
"!callback",
|
|
@@ -575,7 +574,7 @@ var Muxer = class {
|
|
|
575
574
|
if (this._destroying) {
|
|
576
575
|
(0, import_log3.log)("already destroying, ignoring graceful close request", void 0, {
|
|
577
576
|
F: __dxlog_file3,
|
|
578
|
-
L:
|
|
577
|
+
L: 247,
|
|
579
578
|
S: this,
|
|
580
579
|
C: (f, a) => f(...a)
|
|
581
580
|
});
|
|
@@ -584,7 +583,7 @@ var Muxer = class {
|
|
|
584
583
|
if (this._closing) {
|
|
585
584
|
(0, import_log3.log)("already closing, ignoring graceful close request", void 0, {
|
|
586
585
|
F: __dxlog_file3,
|
|
587
|
-
L:
|
|
586
|
+
L: 251,
|
|
588
587
|
S: this,
|
|
589
588
|
C: (f, a) => f(...a)
|
|
590
589
|
});
|
|
@@ -600,7 +599,7 @@ var Muxer = class {
|
|
|
600
599
|
err: err2
|
|
601
600
|
}, {
|
|
602
601
|
F: __dxlog_file3,
|
|
603
|
-
L:
|
|
602
|
+
L: 266,
|
|
604
603
|
S: this,
|
|
605
604
|
C: (f, a) => f(...a)
|
|
606
605
|
});
|
|
@@ -622,7 +621,7 @@ var Muxer = class {
|
|
|
622
621
|
if (this._destroying) {
|
|
623
622
|
(0, import_log3.log)("already destroying, ignoring destroy request", void 0, {
|
|
624
623
|
F: __dxlog_file3,
|
|
625
|
-
L:
|
|
624
|
+
L: 287,
|
|
626
625
|
S: this,
|
|
627
626
|
C: (f, a) => f(...a)
|
|
628
627
|
});
|
|
@@ -633,7 +632,7 @@ var Muxer = class {
|
|
|
633
632
|
if (this._closing) {
|
|
634
633
|
(0, import_log3.log)("destroy cancelling graceful close", void 0, {
|
|
635
634
|
F: __dxlog_file3,
|
|
636
|
-
L:
|
|
635
|
+
L: 293,
|
|
637
636
|
S: this,
|
|
638
637
|
C: (f, a) => f(...a)
|
|
639
638
|
});
|
|
@@ -648,7 +647,7 @@ var Muxer = class {
|
|
|
648
647
|
err: err2
|
|
649
648
|
}, {
|
|
650
649
|
F: __dxlog_file3,
|
|
651
|
-
L:
|
|
650
|
+
L: 306,
|
|
652
651
|
S: this,
|
|
653
652
|
C: (f, a) => f(...a)
|
|
654
653
|
});
|
|
@@ -659,7 +658,7 @@ var Muxer = class {
|
|
|
659
658
|
err: err2
|
|
660
659
|
}, {
|
|
661
660
|
F: __dxlog_file3,
|
|
662
|
-
L:
|
|
661
|
+
L: 311,
|
|
663
662
|
S: this,
|
|
664
663
|
C: (f, a) => f(...a)
|
|
665
664
|
});
|
|
@@ -667,10 +666,10 @@ var Muxer = class {
|
|
|
667
666
|
}
|
|
668
667
|
// complete the termination, graceful or otherwise
|
|
669
668
|
async dispose(err) {
|
|
670
|
-
if (this.
|
|
669
|
+
if (this._disposed) {
|
|
671
670
|
(0, import_log3.log)("already destroyed, ignoring dispose request", void 0, {
|
|
672
671
|
F: __dxlog_file3,
|
|
673
|
-
L:
|
|
672
|
+
L: 319,
|
|
674
673
|
S: this,
|
|
675
674
|
C: (f, a) => f(...a)
|
|
676
675
|
});
|
|
@@ -681,18 +680,18 @@ var Muxer = class {
|
|
|
681
680
|
for (const channel of this._channelsByTag.values()) {
|
|
682
681
|
channel.destroy?.(err);
|
|
683
682
|
}
|
|
684
|
-
this.
|
|
683
|
+
this._disposed = true;
|
|
685
684
|
this.afterClosed.emit(err);
|
|
686
685
|
this._channelsByLocalId.clear();
|
|
687
686
|
this._channelsByTag.clear();
|
|
688
687
|
}
|
|
689
688
|
async _handleCommand(cmd) {
|
|
690
|
-
if (this.
|
|
689
|
+
if (this._disposed) {
|
|
691
690
|
import_log3.log.warn("Received command after destroy", {
|
|
692
691
|
cmd
|
|
693
692
|
}, {
|
|
694
693
|
F: __dxlog_file3,
|
|
695
|
-
L:
|
|
694
|
+
L: 341,
|
|
696
695
|
S: this,
|
|
697
696
|
C: (f, a) => f(...a)
|
|
698
697
|
});
|
|
@@ -702,7 +701,7 @@ var Muxer = class {
|
|
|
702
701
|
if (!this._closing) {
|
|
703
702
|
(0, import_log3.log)("received peer close, initiating my own graceful close", void 0, {
|
|
704
703
|
F: __dxlog_file3,
|
|
705
|
-
L:
|
|
704
|
+
L: 347,
|
|
706
705
|
S: this,
|
|
707
706
|
C: (f, a) => f(...a)
|
|
708
707
|
});
|
|
@@ -710,7 +709,7 @@ var Muxer = class {
|
|
|
710
709
|
} else {
|
|
711
710
|
(0, import_log3.log)("received close from peer, already closing", void 0, {
|
|
712
711
|
F: __dxlog_file3,
|
|
713
|
-
L:
|
|
712
|
+
L: 350,
|
|
714
713
|
S: this,
|
|
715
714
|
C: (f, a) => f(...a)
|
|
716
715
|
});
|
|
@@ -739,7 +738,7 @@ var Muxer = class {
|
|
|
739
738
|
tag: stream.tag
|
|
740
739
|
}, {
|
|
741
740
|
F: __dxlog_file3,
|
|
742
|
-
L:
|
|
741
|
+
L: 379,
|
|
743
742
|
S: this,
|
|
744
743
|
C: (f, a) => f(...a)
|
|
745
744
|
});
|
|
@@ -760,6 +759,9 @@ var Muxer = class {
|
|
|
760
759
|
}
|
|
761
760
|
}
|
|
762
761
|
_getOrCreateStream(params) {
|
|
762
|
+
if (this._channelsByTag.size === 0) {
|
|
763
|
+
(0, import_async3.scheduleTaskInterval)(this._ctx, async () => this._emitStats(), STATS_INTERVAL);
|
|
764
|
+
}
|
|
763
765
|
let channel = this._channelsByTag.get(params.tag);
|
|
764
766
|
if (!channel) {
|
|
765
767
|
channel = {
|
|
@@ -788,7 +790,7 @@ var Muxer = class {
|
|
|
788
790
|
threshold: MAX_SAFE_FRAME_SIZE
|
|
789
791
|
}, {
|
|
790
792
|
F: __dxlog_file3,
|
|
791
|
-
L:
|
|
793
|
+
L: 425,
|
|
792
794
|
S: this,
|
|
793
795
|
C: (f, a) => f(...a)
|
|
794
796
|
});
|
|
@@ -813,7 +815,7 @@ var Muxer = class {
|
|
|
813
815
|
this._channelsByTag.delete(channel.tag);
|
|
814
816
|
}
|
|
815
817
|
async _emitStats() {
|
|
816
|
-
if (this.
|
|
818
|
+
if (this._disposed || this._destroying) {
|
|
817
819
|
this._lastStats = void 0;
|
|
818
820
|
this._lastChannelStats.clear();
|
|
819
821
|
return;
|
|
@@ -874,7 +876,7 @@ function _ts_decorate(decorators, target, key, desc) {
|
|
|
874
876
|
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
875
877
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
876
878
|
}
|
|
877
|
-
var __dxlog_file4 = "/
|
|
879
|
+
var __dxlog_file4 = "/mnt/ramdisk/work/packages/core/mesh/teleport/src/teleport.ts";
|
|
878
880
|
var CONTROL_HEARTBEAT_INTERVAL = 1e4;
|
|
879
881
|
var CONTROL_HEARTBEAT_TIMEOUT = 6e4;
|
|
880
882
|
var Teleport = class {
|
|
@@ -1244,7 +1246,7 @@ var import_node_stream3 = require("node:stream");
|
|
|
1244
1246
|
var import_invariant5 = require("@dxos/invariant");
|
|
1245
1247
|
var import_keys2 = require("@dxos/keys");
|
|
1246
1248
|
var import_log5 = require("@dxos/log");
|
|
1247
|
-
var __dxlog_file5 = "/
|
|
1249
|
+
var __dxlog_file5 = "/mnt/ramdisk/work/packages/core/mesh/teleport/src/testing/test-builder.ts";
|
|
1248
1250
|
var TestBuilder = class {
|
|
1249
1251
|
constructor() {
|
|
1250
1252
|
this._peers = /* @__PURE__ */ new Set();
|
|
@@ -1450,7 +1452,7 @@ var import_invariant6 = require("@dxos/invariant");
|
|
|
1450
1452
|
var import_log6 = require("@dxos/log");
|
|
1451
1453
|
var import_protocols3 = require("@dxos/protocols");
|
|
1452
1454
|
var import_rpc2 = require("@dxos/rpc");
|
|
1453
|
-
var __dxlog_file6 = "/
|
|
1455
|
+
var __dxlog_file6 = "/mnt/ramdisk/work/packages/core/mesh/teleport/src/testing/test-extension.ts";
|
|
1454
1456
|
var TestExtension = class {
|
|
1455
1457
|
constructor(callbacks = {}) {
|
|
1456
1458
|
this.callbacks = callbacks;
|
|
@@ -1557,7 +1559,7 @@ var import_invariant7 = require("@dxos/invariant");
|
|
|
1557
1559
|
var import_log7 = require("@dxos/log");
|
|
1558
1560
|
var import_protocols4 = require("@dxos/protocols");
|
|
1559
1561
|
var import_rpc3 = require("@dxos/rpc");
|
|
1560
|
-
var __dxlog_file7 = "/
|
|
1562
|
+
var __dxlog_file7 = "/mnt/ramdisk/work/packages/core/mesh/teleport/src/testing/test-extension-with-streams.ts";
|
|
1561
1563
|
var TestExtensionWithStreams = class {
|
|
1562
1564
|
constructor(callbacks = {}) {
|
|
1563
1565
|
this.callbacks = callbacks;
|
|
@@ -1813,7 +1815,7 @@ var TestExtensionWithStreams = class {
|
|
|
1813
1815
|
// packages/core/mesh/teleport/src/rpc-extension.ts
|
|
1814
1816
|
var import_invariant8 = require("@dxos/invariant");
|
|
1815
1817
|
var import_rpc4 = require("@dxos/rpc");
|
|
1816
|
-
var __dxlog_file8 = "/
|
|
1818
|
+
var __dxlog_file8 = "/mnt/ramdisk/work/packages/core/mesh/teleport/src/rpc-extension.ts";
|
|
1817
1819
|
var RpcExtension = class {
|
|
1818
1820
|
constructor(_rpcParams) {
|
|
1819
1821
|
this._rpcParams = _rpcParams;
|