@dxos/echo-pipeline 0.6.2-main.8a232a5 → 0.6.2-main.bd4e5d2

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dxos/echo-pipeline",
3
- "version": "0.6.2-main.8a232a5",
3
+ "version": "0.6.2-main.bd4e5d2",
4
4
  "description": "ECHO database.",
5
5
  "homepage": "https://dxos.org",
6
6
  "bugs": "https://github.com/dxos/dxos/issues",
@@ -39,38 +39,38 @@
39
39
  "crc-32": "^1.2.2",
40
40
  "level": "^8.0.1",
41
41
  "level-transcoder": "^1.0.1",
42
- "@dxos/async": "0.6.2-main.8a232a5",
43
- "@dxos/codec-protobuf": "0.6.2-main.8a232a5",
44
- "@dxos/automerge": "0.6.2-main.8a232a5",
45
- "@dxos/context": "0.6.2-main.8a232a5",
46
- "@dxos/credentials": "0.6.2-main.8a232a5",
47
- "@dxos/crypto": "0.6.2-main.8a232a5",
48
- "@dxos/echo-protocol": "0.6.2-main.8a232a5",
49
- "@dxos/debug": "0.6.2-main.8a232a5",
50
- "@dxos/echo-schema": "0.6.2-main.8a232a5",
51
- "@dxos/feed-store": "0.6.2-main.8a232a5",
52
- "@dxos/hypercore": "0.6.2-main.8a232a5",
53
- "@dxos/indexing": "0.6.2-main.8a232a5",
54
- "@dxos/invariant": "0.6.2-main.8a232a5",
55
- "@dxos/keyring": "0.6.2-main.8a232a5",
56
- "@dxos/keys": "0.6.2-main.8a232a5",
57
- "@dxos/kv-store": "0.6.2-main.8a232a5",
58
- "@dxos/messaging": "0.6.2-main.8a232a5",
59
- "@dxos/log": "0.6.2-main.8a232a5",
60
- "@dxos/network-manager": "0.6.2-main.8a232a5",
61
- "@dxos/protocols": "0.6.2-main.8a232a5",
62
- "@dxos/node-std": "0.6.2-main.8a232a5",
63
- "@dxos/rpc": "0.6.2-main.8a232a5",
64
- "@dxos/random-access-storage": "0.6.2-main.8a232a5",
65
- "@dxos/teleport": "0.6.2-main.8a232a5",
66
- "@dxos/teleport-extension-gossip": "0.6.2-main.8a232a5",
67
- "@dxos/teleport-extension-automerge-replicator": "0.6.2-main.8a232a5",
68
- "@dxos/teleport-extension-replicator": "0.6.2-main.8a232a5",
69
- "@dxos/teleport-extension-object-sync": "0.6.2-main.8a232a5",
70
- "@dxos/timeframe": "0.6.2-main.8a232a5",
71
- "@dxos/tracing": "0.6.2-main.8a232a5",
72
- "@dxos/typings": "0.6.2-main.8a232a5",
73
- "@dxos/util": "0.6.2-main.8a232a5"
42
+ "@dxos/async": "0.6.2-main.bd4e5d2",
43
+ "@dxos/automerge": "0.6.2-main.bd4e5d2",
44
+ "@dxos/context": "0.6.2-main.bd4e5d2",
45
+ "@dxos/codec-protobuf": "0.6.2-main.bd4e5d2",
46
+ "@dxos/credentials": "0.6.2-main.bd4e5d2",
47
+ "@dxos/crypto": "0.6.2-main.bd4e5d2",
48
+ "@dxos/debug": "0.6.2-main.bd4e5d2",
49
+ "@dxos/echo-protocol": "0.6.2-main.bd4e5d2",
50
+ "@dxos/feed-store": "0.6.2-main.bd4e5d2",
51
+ "@dxos/echo-schema": "0.6.2-main.bd4e5d2",
52
+ "@dxos/hypercore": "0.6.2-main.bd4e5d2",
53
+ "@dxos/indexing": "0.6.2-main.bd4e5d2",
54
+ "@dxos/keys": "0.6.2-main.bd4e5d2",
55
+ "@dxos/keyring": "0.6.2-main.bd4e5d2",
56
+ "@dxos/invariant": "0.6.2-main.bd4e5d2",
57
+ "@dxos/log": "0.6.2-main.bd4e5d2",
58
+ "@dxos/kv-store": "0.6.2-main.bd4e5d2",
59
+ "@dxos/messaging": "0.6.2-main.bd4e5d2",
60
+ "@dxos/network-manager": "0.6.2-main.bd4e5d2",
61
+ "@dxos/node-std": "0.6.2-main.bd4e5d2",
62
+ "@dxos/protocols": "0.6.2-main.bd4e5d2",
63
+ "@dxos/random-access-storage": "0.6.2-main.bd4e5d2",
64
+ "@dxos/rpc": "0.6.2-main.bd4e5d2",
65
+ "@dxos/teleport": "0.6.2-main.bd4e5d2",
66
+ "@dxos/teleport-extension-object-sync": "0.6.2-main.bd4e5d2",
67
+ "@dxos/teleport-extension-automerge-replicator": "0.6.2-main.bd4e5d2",
68
+ "@dxos/teleport-extension-replicator": "0.6.2-main.bd4e5d2",
69
+ "@dxos/teleport-extension-gossip": "0.6.2-main.bd4e5d2",
70
+ "@dxos/timeframe": "0.6.2-main.bd4e5d2",
71
+ "@dxos/tracing": "0.6.2-main.bd4e5d2",
72
+ "@dxos/typings": "0.6.2-main.bd4e5d2",
73
+ "@dxos/util": "0.6.2-main.bd4e5d2"
74
74
  },
75
75
  "devDependencies": {
76
76
  "fast-check": "^3.19.0",
@@ -72,6 +72,17 @@ describe('EchoNetworkAdapter', () => {
72
72
  expect(errored).to.be.true;
73
73
  });
74
74
 
75
+ test('peer disconnected when replicator is removed', async () => {
76
+ const controller = createReplicatorController();
77
+ const adapter = await createConnectedAdapter(controller.replicator);
78
+ await controller.connectPeer(ANOTHER_PEER_ID);
79
+ const onDisconnected = new Trigger<any>();
80
+ adapter.on('peer-disconnected', (payload) => onDisconnected.wake(payload));
81
+ await adapter.removeReplicator(controller.replicator);
82
+ const disconnectedPeer = await onDisconnected.wait();
83
+ expect(disconnectedPeer.peerId).to.eq(ANOTHER_PEER_ID);
84
+ });
85
+
75
86
  test('message sending is queued', async () => {
76
87
  let sentTotal = 0;
77
88
  let sendInProgress = false;
@@ -38,6 +38,9 @@ export class MeshEchoReplicator implements EchoReplicator {
38
38
  }
39
39
 
40
40
  async disconnect() {
41
+ for (const connection of this._connectionsPerPeer.values()) {
42
+ this._context?.onConnectionClosed(connection);
43
+ }
41
44
  for (const connection of this._connections) {
42
45
  await connection.close();
43
46
  }