@streamr/dht 102.0.0-beta.0 → 102.0.0-beta.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.
- package/dist/generated/packages/dht/protos/DhtRpc.d.ts +16 -8
- package/dist/generated/packages/dht/protos/DhtRpc.js +7 -5
- package/dist/generated/packages/dht/protos/DhtRpc.js.map +1 -1
- package/dist/package.json +15 -16
- package/dist/src/connection/ConnectionManager.js +18 -8
- package/dist/src/connection/ConnectionManager.js.map +1 -1
- package/dist/src/connection/Handshaker.d.ts +1 -1
- package/dist/src/connection/Handshaker.js +9 -5
- package/dist/src/connection/Handshaker.js.map +1 -1
- package/dist/src/connection/ManagedConnection.js +17 -7
- package/dist/src/connection/ManagedConnection.js.map +1 -1
- package/dist/src/connection/connectivityChecker.js +20 -10
- package/dist/src/connection/connectivityChecker.js.map +1 -1
- package/dist/src/connection/connectivityRequestHandler.js +3 -3
- package/dist/src/connection/connectivityRequestHandler.js.map +1 -1
- package/dist/src/connection/simulator/Simulator.js +3 -2
- package/dist/src/connection/simulator/Simulator.js.map +1 -1
- package/dist/src/connection/simulator/pings.d.ts +1 -1
- package/dist/src/connection/simulator/pings.js +3 -3
- package/dist/src/connection/simulator/pings.js.map +1 -1
- package/dist/src/connection/webrtc/NodeWebrtcConnection.js +0 -2
- package/dist/src/connection/webrtc/NodeWebrtcConnection.js.map +1 -1
- package/dist/src/connection/webrtc/WebrtcConnector.js +19 -9
- package/dist/src/connection/webrtc/WebrtcConnector.js.map +1 -1
- package/dist/src/connection/webrtc/iceServerAsString.js +1 -2
- package/dist/src/connection/webrtc/iceServerAsString.js.map +1 -1
- package/dist/src/connection/websocket/AbstractWebsocketClientConnection.d.ts +0 -2
- package/dist/src/connection/websocket/WebsocketClientConnectorRpcLocal.d.ts +0 -1
- package/dist/src/connection/websocket/WebsocketServerConnection.d.ts +0 -1
- package/dist/src/connection/websocket/WebsocketServerConnector.js +28 -18
- package/dist/src/connection/websocket/WebsocketServerConnector.js.map +1 -1
- package/dist/src/dht/DhtNode.d.ts +1 -0
- package/dist/src/dht/DhtNode.js +3 -2
- package/dist/src/dht/DhtNode.js.map +1 -1
- package/dist/src/dht/DhtNodeRpcLocal.d.ts +1 -1
- package/dist/src/dht/PeerManager.d.ts +2 -1
- package/dist/src/dht/PeerManager.js +2 -1
- package/dist/src/dht/PeerManager.js.map +1 -1
- package/dist/src/dht/contact/SortedContactList.js +1 -1
- package/dist/src/dht/contact/SortedContactList.js.map +1 -1
- package/dist/src/dht/discovery/DiscoverySession.d.ts +0 -1
- package/dist/src/dht/discovery/PeerDiscovery.d.ts +0 -1
- package/dist/src/dht/discovery/RingDiscoverySession.d.ts +0 -1
- package/dist/src/dht/recursive-operation/RecursiveOperationManager.d.ts +2 -2
- package/dist/src/dht/routing/DuplicateDetector.js.map +1 -1
- package/dist/src/dht/routing/RoutingSession.js +2 -2
- package/dist/src/dht/routing/RoutingSession.js.map +1 -1
- package/dist/src/dht/routing/RoutingTablesCache.d.ts +1 -1
- package/dist/src/dht/store/LocalDataStore.js +1 -1
- package/dist/src/dht/store/LocalDataStore.js.map +1 -1
- package/dist/src/dht/store/StoreManager.d.ts +1 -1
- package/dist/src/dht/store/StoreRpcLocal.d.ts +1 -1
- package/dist/src/helpers/AddressTools.js +2 -3
- package/dist/src/helpers/AddressTools.js.map +1 -1
- package/dist/src/helpers/debugHelpers.js +2 -2
- package/dist/src/helpers/debugHelpers.js.map +1 -1
- package/dist/src/helpers/protoClasses.d.ts +1 -1
- package/dist/src/helpers/protoClasses.js.map +1 -1
- package/dist/src/helpers/protoToString.js +1 -2
- package/dist/src/helpers/protoToString.js.map +1 -1
- package/dist/src/helpers/version.d.ts +1 -1
- package/dist/src/helpers/version.js +4 -4
- package/dist/src/helpers/version.js.map +1 -1
- package/eslint.config.mjs +12 -0
- package/jest.config.ts +12 -0
- package/package.json +15 -16
- package/protos/DhtRpc.proto +6 -4
- package/.eslintignore +0 -5
- package/.eslintrc +0 -3
- package/generated/google/protobuf/any.ts +0 -326
- package/generated/google/protobuf/empty.ts +0 -81
- package/generated/google/protobuf/timestamp.ts +0 -287
- package/generated/packages/dht/protos/DhtRpc.client.ts +0 -419
- package/generated/packages/dht/protos/DhtRpc.server.ts +0 -165
- package/generated/packages/dht/protos/DhtRpc.ts +0 -1266
- package/generated/packages/proto-rpc/protos/ProtoRpc.ts +0 -108
- package/jest.config.js +0 -5
- package/src/connection/Connection.ts +0 -28
- package/src/connection/ConnectionLockRpcLocal.ts +0 -78
- package/src/connection/ConnectionLockRpcRemote.ts +0 -64
- package/src/connection/ConnectionLockStates.ts +0 -131
- package/src/connection/ConnectionManager.ts +0 -661
- package/src/connection/ConnectionsView.ts +0 -8
- package/src/connection/ConnectorFacade.ts +0 -217
- package/src/connection/Handshaker.ts +0 -205
- package/src/connection/IConnection.ts +0 -40
- package/src/connection/ManagedConnection.ts +0 -113
- package/src/connection/OutputBuffer.ts +0 -28
- package/src/connection/PendingConnection.ts +0 -68
- package/src/connection/connectivityChecker.ts +0 -108
- package/src/connection/connectivityRequestHandler.ts +0 -116
- package/src/connection/simulator/Simulator.ts +0 -368
- package/src/connection/simulator/SimulatorConnection.ts +0 -137
- package/src/connection/simulator/SimulatorConnector.ts +0 -98
- package/src/connection/simulator/SimulatorTransport.ts +0 -15
- package/src/connection/simulator/pings.ts +0 -42
- package/src/connection/webrtc/BrowserWebrtcConnection.ts +0 -242
- package/src/connection/webrtc/IWebrtcConnection.ts +0 -24
- package/src/connection/webrtc/NodeWebrtcConnection.ts +0 -247
- package/src/connection/webrtc/WebrtcConnector.ts +0 -234
- package/src/connection/webrtc/WebrtcConnectorRpcLocal.ts +0 -108
- package/src/connection/webrtc/WebrtcConnectorRpcRemote.ts +0 -60
- package/src/connection/webrtc/iceServerAsString.ts +0 -15
- package/src/connection/websocket/AbstractWebsocketClientConnection.ts +0 -122
- package/src/connection/websocket/AutoCertifierClientFacade.ts +0 -89
- package/src/connection/websocket/BrowserWebsocketClientConnection.ts +0 -44
- package/src/connection/websocket/NodeWebsocketClientConnection.ts +0 -39
- package/src/connection/websocket/WebsocketClientConnector.ts +0 -119
- package/src/connection/websocket/WebsocketClientConnectorRpcLocal.ts +0 -38
- package/src/connection/websocket/WebsocketClientConnectorRpcRemote.ts +0 -19
- package/src/connection/websocket/WebsocketServer.ts +0 -164
- package/src/connection/websocket/WebsocketServerConnection.ts +0 -109
- package/src/connection/websocket/WebsocketServerConnector.ts +0 -286
- package/src/dht/DhtNode.ts +0 -678
- package/src/dht/DhtNodeRpcLocal.ts +0 -84
- package/src/dht/DhtNodeRpcRemote.ts +0 -107
- package/src/dht/ExternalApiRpcLocal.ts +0 -58
- package/src/dht/ExternalApiRpcRemote.ts +0 -41
- package/src/dht/PeerManager.ts +0 -303
- package/src/dht/contact/Contact.ts +0 -19
- package/src/dht/contact/ContactList.ts +0 -43
- package/src/dht/contact/RandomContactList.ts +0 -56
- package/src/dht/contact/RingContactList.ts +0 -143
- package/src/dht/contact/RpcRemote.ts +0 -72
- package/src/dht/contact/SortedContactList.ts +0 -173
- package/src/dht/contact/getClosestNodes.ts +0 -24
- package/src/dht/contact/ringIdentifiers.ts +0 -62
- package/src/dht/discovery/DiscoverySession.ts +0 -129
- package/src/dht/discovery/PeerDiscovery.ts +0 -244
- package/src/dht/discovery/RingDiscoverySession.ts +0 -148
- package/src/dht/recursive-operation/RecursiveOperationManager.ts +0 -251
- package/src/dht/recursive-operation/RecursiveOperationRpcLocal.ts +0 -34
- package/src/dht/recursive-operation/RecursiveOperationRpcRemote.ts +0 -43
- package/src/dht/recursive-operation/RecursiveOperationSession.ts +0 -231
- package/src/dht/recursive-operation/RecursiveOperationSessionRpcLocal.ts +0 -35
- package/src/dht/recursive-operation/RecursiveOperationSessionRpcRemote.ts +0 -30
- package/src/dht/routing/DuplicateDetector.ts +0 -34
- package/src/dht/routing/Router.ts +0 -246
- package/src/dht/routing/RouterRpcLocal.ts +0 -78
- package/src/dht/routing/RouterRpcRemote.ts +0 -80
- package/src/dht/routing/RoutingSession.ts +0 -243
- package/src/dht/routing/RoutingTablesCache.ts +0 -60
- package/src/dht/routing/getPreviousPeer.ts +0 -6
- package/src/dht/store/LocalDataStore.ts +0 -84
- package/src/dht/store/StoreManager.ts +0 -170
- package/src/dht/store/StoreRpcLocal.ts +0 -89
- package/src/dht/store/StoreRpcRemote.ts +0 -32
- package/src/exports.ts +0 -33
- package/src/helpers/AddressTools.ts +0 -28
- package/src/helpers/Connectivity.ts +0 -19
- package/src/helpers/browser/isBrowserEnvironment.ts +0 -1
- package/src/helpers/browser/isBrowserEnvironment_override.ts +0 -3
- package/src/helpers/createPeerDescriptor.ts +0 -57
- package/src/helpers/createPeerDescriptorSignaturePayload.ts +0 -28
- package/src/helpers/debugHelpers.ts +0 -9
- package/src/helpers/errors.ts +0 -49
- package/src/helpers/offering.ts +0 -15
- package/src/helpers/protoClasses.ts +0 -57
- package/src/helpers/protoToString.ts +0 -21
- package/src/helpers/version.ts +0 -32
- package/src/identifiers.ts +0 -29
- package/src/rpc-protocol/DhtCallContext.ts +0 -14
- package/src/rpc-protocol/DhtRpcOptions.ts +0 -10
- package/src/transport/ITransport.ts +0 -37
- package/src/transport/ListeningRpcCommunicator.ts +0 -32
- package/src/transport/RoutingRpcCommunicator.ts +0 -66
- package/src/types/ServiceID.ts +0 -1
- package/src/types/textencoding.d.ts +0 -6
- package/test/benchmark/Find.test.ts +0 -72
- package/test/benchmark/KademliaCorrectness.test.ts +0 -114
- package/test/benchmark/RingCorrectness.test.ts +0 -157
- package/test/benchmark/SortedContactListBenchmark.test.ts +0 -108
- package/test/benchmark/WebsocketServerMemoryLeak.test.ts +0 -41
- package/test/benchmark/hybrid-network-simulation/RingContactList.test.ts +0 -71
- package/test/end-to-end/GeoIpLayer0.test.ts +0 -55
- package/test/end-to-end/Layer0-Layer1.test.ts +0 -93
- package/test/end-to-end/Layer0.test.ts +0 -76
- package/test/end-to-end/Layer0MixedConnectionTypes.test.ts +0 -110
- package/test/end-to-end/Layer0Webrtc-Layer1.test.ts +0 -137
- package/test/end-to-end/Layer0Webrtc.test.ts +0 -85
- package/test/end-to-end/Layer1-Scale-WebSocket.test.ts +0 -82
- package/test/end-to-end/Layer1-Scale-Webrtc.test.ts +0 -76
- package/test/end-to-end/RecoveryFromFailedAutoCertification.test.ts +0 -52
- package/test/end-to-end/WebsocketConnectionRequest.test.ts +0 -69
- package/test/end-to-end/memory-leak.test.ts +0 -80
- package/test/integration/ConnectionLocking.test.ts +0 -182
- package/test/integration/ConnectionManager.test.ts +0 -528
- package/test/integration/ConnectivityChecking.test.ts +0 -53
- package/test/integration/DhtJoinPeerDiscovery.test.ts +0 -49
- package/test/integration/DhtNode.test.ts +0 -66
- package/test/integration/DhtNodeExternalAPI.test.ts +0 -48
- package/test/integration/DhtNodeRpcRemote.test.ts +0 -66
- package/test/integration/DhtRpc.test.ts +0 -121
- package/test/integration/Find.test.ts +0 -45
- package/test/integration/GeoIpConnectivityChecking.test.ts +0 -72
- package/test/integration/Layer1-scale.test.ts +0 -189
- package/test/integration/Mock-Layer1-Layer0.test.ts +0 -85
- package/test/integration/MultipleEntryPointJoining.test.ts +0 -105
- package/test/integration/ReplicateData.test.ts +0 -104
- package/test/integration/RouteMessage.test.ts +0 -230
- package/test/integration/RouterRpcRemote.test.ts +0 -77
- package/test/integration/SimultaneousConnections.test.ts +0 -316
- package/test/integration/Store.test.ts +0 -85
- package/test/integration/StoreAndDelete.test.ts +0 -77
- package/test/integration/StoreOnDhtWithThreeNodes.test.ts +0 -59
- package/test/integration/StoreOnDhtWithTwoNodes.test.ts +0 -51
- package/test/integration/StoreRpcRemote.test.ts +0 -54
- package/test/integration/WebrtcConnectionManagement.test.ts +0 -219
- package/test/integration/WebrtcConnectorRpc.test.ts +0 -125
- package/test/integration/Websocket.test.ts +0 -65
- package/test/integration/WebsocketClientConnectorRpc.test.ts +0 -69
- package/test/integration/WebsocketConnectionManagement.test.ts +0 -191
- package/test/integration/rpc-connections-over-webrtc.test.ts +0 -158
- package/test/kademlia-simulation/data/nodeids.json +0 -13002
- package/test/kademlia-simulation/data/orderedneighbors.json +0 -1001
- package/test/types/global.d.ts +0 -1
- package/test/unit/AddressTools.test.ts +0 -44
- package/test/unit/AutoCertifierClientFacade.test.ts +0 -58
- package/test/unit/ConnectionManager.test.ts +0 -65
- package/test/unit/ConnectivityHelpers.test.ts +0 -61
- package/test/unit/DiscoverySession.test.ts +0 -87
- package/test/unit/DuplicateDetector.test.ts +0 -31
- package/test/unit/Handshaker.test.ts +0 -169
- package/test/unit/ListeningRpcCommunicator.test.ts +0 -52
- package/test/unit/LocalDataStore.test.ts +0 -108
- package/test/unit/ManagedConnection.test.ts +0 -58
- package/test/unit/PeerManager.test.ts +0 -93
- package/test/unit/PendingConnection.test.ts +0 -57
- package/test/unit/ProtobufMessage.test.ts +0 -21
- package/test/unit/RandomContactList.test.ts +0 -58
- package/test/unit/RecursiveOperationManager.test.ts +0 -161
- package/test/unit/RecursiveOperationSession.test.ts +0 -68
- package/test/unit/Router.test.ts +0 -137
- package/test/unit/RoutingSession.test.ts +0 -79
- package/test/unit/SortedContactList.test.ts +0 -115
- package/test/unit/StoreManager.test.ts +0 -146
- package/test/unit/StoreRpcLocal.test.ts +0 -167
- package/test/unit/WebrtcConnection.test.ts +0 -29
- package/test/unit/WebrtcConnector.test.ts +0 -56
- package/test/unit/WebsocketClientConnector.test.ts +0 -101
- package/test/unit/WebsocketServer.test.ts +0 -66
- package/test/unit/WebsocketServerConnector.test.ts +0 -102
- package/test/unit/connectivityRequestHandler.test.ts +0 -104
- package/test/unit/createPeerDescriptor.test.ts +0 -69
- package/test/unit/customMatchers.test.ts +0 -16
- package/test/unit/getClosestNodes.test.ts +0 -30
- package/test/unit/version.test.ts +0 -18
- package/test/unit/webrtcReplaceInternalIpWithExternalIp.test.ts +0 -18
- package/test/utils/FakeConnectorFacade.ts +0 -41
- package/test/utils/FakeRpcCommunicator.ts +0 -23
- package/test/utils/FakeTransport.ts +0 -79
- package/test/utils/customMatchers.ts +0 -71
- package/test/utils/mock/MockConnection.ts +0 -26
- package/test/utils/mock/MockConnectionsView.ts +0 -18
- package/test/utils/mock/MockRouter.ts +0 -62
- package/test/utils/mock/MockRpcCommunicator.ts +0 -7
- package/test/utils/mock/MockTransport.ts +0 -26
- package/test/utils/mock/mockDataEntry.ts +0 -38
- package/test/utils/topology.ts +0 -80
- package/test/utils/utils.ts +0 -268
- package/tsconfig.browser.json +0 -17
- package/tsconfig.jest.json +0 -25
- package/tsconfig.json +0 -3
- package/tsconfig.node.json +0 -24
|
@@ -14,6 +14,7 @@ interface PeerManagerOptions {
|
|
|
14
14
|
localNodeId: DhtAddress;
|
|
15
15
|
localPeerDescriptor: PeerDescriptor;
|
|
16
16
|
connectionLocker?: ConnectionLocker;
|
|
17
|
+
neighborPingLimit?: number;
|
|
17
18
|
lockId: LockID;
|
|
18
19
|
createDhtNodeRpcRemote: (peerDescriptor: PeerDescriptor) => DhtNodeRpcRemote;
|
|
19
20
|
hasConnection: (nodeId: DhtAddress) => boolean;
|
|
@@ -55,7 +56,7 @@ export declare class PeerManager extends EventEmitter<PeerManagerEvents> {
|
|
|
55
56
|
getRingContacts(): RingContactList<DhtNodeRpcRemote>;
|
|
56
57
|
getNearbyContactCount(excludedNodeIds?: Set<DhtAddress>): number;
|
|
57
58
|
getNeighborCount(): number;
|
|
58
|
-
getNeighbors():
|
|
59
|
+
getNeighbors(): readonly DhtNodeRpcRemote[];
|
|
59
60
|
setContactActive(nodeId: DhtAddress): void;
|
|
60
61
|
addContact(peerDescriptor: PeerDescriptor): void;
|
|
61
62
|
}
|
|
@@ -117,7 +117,8 @@ class PeerManager extends eventemitter3_1.default {
|
|
|
117
117
|
const nodeId = (0, identifiers_1.toNodeId)(peerDescriptor);
|
|
118
118
|
// Important to lock here, before the ping result is known
|
|
119
119
|
this.options.connectionLocker?.weakLockConnection(nodeId, this.options.lockId);
|
|
120
|
-
if (this.options.hasConnection(contact.getNodeId())
|
|
120
|
+
if (this.options.hasConnection(contact.getNodeId())
|
|
121
|
+
|| (this.options.neighborPingLimit !== undefined && this.neighbors.count() > this.options.neighborPingLimit)) {
|
|
121
122
|
logger.trace(`Added new contact ${nodeId}`);
|
|
122
123
|
}
|
|
123
124
|
else { // open connection by pinging
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PeerManager.js","sourceRoot":"","sources":["../../../src/dht/PeerManager.ts"],"names":[],"mappings":";;;;;;AAAA,0CAEuB;AACvB,kEAAwC;AACxC,wDAA8B;AAG9B,gDAAqF;AAKrF,mEAA+D;AAC/D,+DAA2D;AAC3D,mEAA0F;AAC1F,+DAAqF;AAErF,MAAM,MAAM,GAAG,IAAI,cAAM,CAAC,MAAM,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"PeerManager.js","sourceRoot":"","sources":["../../../src/dht/PeerManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -25,7 +25,7 @@ class SortedContactList extends eventemitter3_1.default {
|
|
|
25
25
|
}
|
|
26
26
|
addContact(contact) {
|
|
27
27
|
const contactId = contact.getNodeId();
|
|
28
|
-
if (this.options.excludedNodeIds
|
|
28
|
+
if (this.options.excludedNodeIds?.has(contactId)) {
|
|
29
29
|
return;
|
|
30
30
|
}
|
|
31
31
|
if ((!this.options.allowToContainReferenceId && (this.options.referenceId === contactId)) ||
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SortedContactList.js","sourceRoot":"","sources":["../../../../src/dht/contact/SortedContactList.ts"],"names":[],"mappings":";;;;;;AACA,mCAAsC;AACtC,kEAAwC;AACxC,gDAA4C;AAC5C,mDAA+D;AAgB/D,MAAa,iBAA6D,SAAQ,uBAAuB;IAE7F,OAAO,CAA0B;IACjC,YAAY,GAAuB,IAAI,GAAG,EAAE,CAAA;IAC5C,UAAU,GAAiB,EAAE,CAAA;IAErC,YACI,OAAiC;QAEjC,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAChD,CAAC;IAEM,mBAAmB;QACtB,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;IAC7B,CAAC;IAEM,aAAa;QAChB,OAAO,IAAI,CAAC,UAAU,CAAA;IAC1B,CAAC;IAEM,UAAU,CAAC,OAAU;QACxB,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,EAAE,CAAA;QACrC,IAAI,IAAI,CAAC,OAAO,CAAC,eAAe,
|
|
1
|
+
{"version":3,"file":"SortedContactList.js","sourceRoot":"","sources":["../../../../src/dht/contact/SortedContactList.ts"],"names":[],"mappings":";;;;;;AACA,mCAAsC;AACtC,kEAAwC;AACxC,gDAA4C;AAC5C,mDAA+D;AAgB/D,MAAa,iBAA6D,SAAQ,uBAAuB;IAE7F,OAAO,CAA0B;IACjC,YAAY,GAAuB,IAAI,GAAG,EAAE,CAAA;IAC5C,UAAU,GAAiB,EAAE,CAAA;IAErC,YACI,OAAiC;QAEjC,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAChD,CAAC;IAEM,mBAAmB;QACtB,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;IAC7B,CAAC;IAEM,aAAa;QAChB,OAAO,IAAI,CAAC,UAAU,CAAA;IAC1B,CAAC;IAEM,UAAU,CAAC,OAAU;QACxB,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,EAAE,CAAA;QACrC,IAAI,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YAC/C,OAAM;QACV,CAAC;QACD,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,yBAAyB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC;YACrF,CAAC,IAAI,CAAC,OAAO,CAAC,mBAAmB,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YACvH,OAAM;QACV,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YACpC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC1F,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;gBACzC,MAAM,KAAK,GAAG,IAAA,sBAAa,EAAC,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,CAAC,EAAc,EAAE,EAAE,GAAG,OAAO,IAAI,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAA,CAAC,CAAC,CAAC,CAAA;gBACtH,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,SAAS,CAAC,CAAA;gBAC3C,IAAI,IAAI,CAAC,iBAAiB,EAAE,EAAE,CAAC;oBAC3B,IAAI,CAAC,IAAI,CACL,cAAc,EACd,OAAO,CACV,CAAA;gBACL,CAAC;YACL,CAAC;iBAAM,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,GAAG,CAAC,CAAC,EAAE,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC;gBACnF,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,CAAA;gBACvC,MAAM,cAAc,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,SAAU,CAAE,CAAA;gBACzD,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,SAAU,CAAC,CAAA;gBACpC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;gBACzC,MAAM,KAAK,GAAG,IAAA,sBAAa,EAAC,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,CAAC,EAAc,EAAE,EAAE,GAAG,OAAO,IAAI,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAA,CAAC,CAAC,CAAC,CAAA;gBACtH,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,SAAS,CAAC,CAAA;gBAC3C,IAAI,IAAI,CAAC,iBAAiB,EAAE,EAAE,CAAC;oBAC3B,IAAI,CAAC,IAAI,CACL,gBAAgB,EAChB,cAAc,CACjB,CAAA;oBACD,IAAI,CAAC,IAAI,CACL,cAAc,EACd,OAAO,CACV,CAAA;gBACL,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;IAEM,WAAW,CAAC,QAAa;QAC5B,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAA;IAC3D,CAAC;IAEM,UAAU,CAAC,EAAc;QAC5B,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IACpC,CAAC;IAED,GAAG,CAAC,EAAc;QACd,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IACpC,CAAC;IAED;;OAEG;IACI,kBAAkB,CAAC,KAAc;QACpC,MAAM,iBAAiB,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAA;QAChH,OAAO,iBAAiB,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAE,CAAC,CAAA;IAC5E,CAAC;IAED;;OAEG;IACH,mBAAmB,CAAC,KAAc;QAC9B,MAAM,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAA;QACpD,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC;YACxB,CAAC,CAAC,GAAG;YACL,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAA;IAC1C,CAAC;IAEM,UAAU,CAAC,GAAe,EAAE,GAAe;QAC9C,MAAM,SAAS,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAA;QACjD,MAAM,SAAS,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAA;QACjD,OAAO,SAAS,GAAG,SAAS,CAAA;IAChC,CAAC;IAED,2BAA2B;IACnB,qBAAqB,CAAC,EAAc;QACxC,qHAAqH;QACrH,OAAO,IAAA,yBAAW,EAAC,IAAA,6BAAe,EAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,IAAA,6BAAe,EAAC,EAAE,CAAC,CAAC,CAAA;IACtF,CAAC;IAEM,aAAa,CAAC,EAAc;QAC/B,IAAI,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;YAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAE,CAAA;YAC1C,0BAA0B;YAC1B,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC,CAAA;YACpE,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;YAChC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;YAC5B,IAAI,IAAI,CAAC,iBAAiB,EAAE,EAAE,CAAC;gBAC3B,IAAI,CAAC,IAAI,CACL,gBAAgB,EAChB,OAAO,CACV,CAAA;YACL,CAAC;YACD,OAAO,IAAI,CAAA;QACf,CAAC;QACD,OAAO,KAAK,CAAA;IAChB,CAAC;IAEM,8BAA8B;QACjC,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAA;IACrC,CAAC;IAEM,OAAO,CAAC,eAAiC;QAC5C,IAAI,aAAa,GAAG,CAAC,CAAA;QACrB,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;YAChC,KAAK,MAAM,MAAM,IAAI,eAAe,EAAE,CAAC;gBACnC,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;oBACnB,aAAa,EAAE,CAAA;gBACnB,CAAC;YACL,CAAC;QACL,CAAC;QACD,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,aAAa,CAAA;IACjD,CAAC;IAEM,KAAK;QACR,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAA;QACzB,IAAI,CAAC,UAAU,GAAG,EAAE,CAAA;IACxB,CAAC;IAEM,IAAI;QACP,IAAI,CAAC,kBAAkB,EAAE,CAAA;QACzB,IAAI,CAAC,KAAK,EAAE,CAAA;IAChB,CAAC;IAEO,iBAAiB;QACrB,OAAO,IAAI,CAAC,UAAU,EAAE,CAAC,MAAM,GAAG,CAAC,CAAA;IACvC,CAAC;CACJ;AAxJD,8CAwJC"}
|
|
@@ -19,8 +19,8 @@ interface RecursiveOperationManagerOptions {
|
|
|
19
19
|
createDhtNodeRpcRemote: (peerDescriptor: PeerDescriptor) => DhtNodeRpcRemote;
|
|
20
20
|
}
|
|
21
21
|
export interface RecursiveOperationResult {
|
|
22
|
-
closestNodes:
|
|
23
|
-
dataEntries?:
|
|
22
|
+
closestNodes: PeerDescriptor[];
|
|
23
|
+
dataEntries?: DataEntry[];
|
|
24
24
|
}
|
|
25
25
|
export declare class RecursiveOperationManager {
|
|
26
26
|
private ongoingSessions;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DuplicateDetector.js","sourceRoot":"","sources":["../../../../src/dht/routing/DuplicateDetector.ts"],"names":[],"mappings":";;;AAAA,MAAa,iBAAiB;IAElB,MAAM,GAAgB,IAAI,GAAG,EAAE,CAAA;IAC/B,KAAK,
|
|
1
|
+
{"version":3,"file":"DuplicateDetector.js","sourceRoot":"","sources":["../../../../src/dht/routing/DuplicateDetector.ts"],"names":[],"mappings":";;;AAAA,MAAa,iBAAiB;IAElB,MAAM,GAAgB,IAAI,GAAG,EAAE,CAAA;IAC/B,KAAK,GAAa,EAAE,CAAA;IACpB,YAAY,CAAQ;IAE5B,YACI,YAAoB;QAEpB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAA;IACpC,CAAC;IAEM,GAAG,CAAC,KAAa;QACpB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QACtB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACtB,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;YACxC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAG,CAAA;YACnC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;QAC/B,CAAC;IACL,CAAC;IAEM,qBAAqB,CAAC,KAAa;QACtC,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;IACjC,CAAC;IAEM,IAAI;QACP,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAA;IAC3B,CAAC;IAEM,KAAK;QACR,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAA;QACnB,IAAI,CAAC,KAAK,GAAG,EAAE,CAAA;IACnB,CAAC;CACJ;AAjCD,8CAiCC"}
|
|
@@ -17,7 +17,7 @@ const identifiers_1 = require("../../identifiers");
|
|
|
17
17
|
const lodash_1 = require("lodash");
|
|
18
18
|
const logger = new utils_1.Logger(module);
|
|
19
19
|
const MAX_FAILED_HOPS = 2;
|
|
20
|
-
const ROUTING_TABLE_MAX_SIZE =
|
|
20
|
+
const ROUTING_TABLE_MAX_SIZE = 5;
|
|
21
21
|
class RoutingRemoteContact extends Contact_1.Contact {
|
|
22
22
|
routerRpcRemote;
|
|
23
23
|
recursiveOperationRpcRemote;
|
|
@@ -127,7 +127,7 @@ class RoutingSession extends eventemitter3_1.default {
|
|
|
127
127
|
const previousId = previousPeer ? (0, identifiers_1.toNodeId)(previousPeer) : undefined;
|
|
128
128
|
const targetId = (0, identifiers_1.toDhtAddress)(this.options.routedMessage.target);
|
|
129
129
|
let routingTable;
|
|
130
|
-
if (this.options.routingTablesCache.has(targetId, previousId)) {
|
|
130
|
+
if (this.options.routingTablesCache.has(targetId, previousId) && this.options.routingTablesCache.get(targetId, previousId).getSize() > 0) {
|
|
131
131
|
routingTable = this.options.routingTablesCache.get(targetId, previousId);
|
|
132
132
|
}
|
|
133
133
|
else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RoutingSession.js","sourceRoot":"","sources":["../../../../src/dht/routing/RoutingSession.ts"],"names":[],"mappings":";;;;;;AAAA,oEAAgE;AAChE,0CAAuC;AACvC,kEAAwC;AACxC,+BAAyB;AAEzB,uDAAoE;AAEpE,wFAAmH;AACnH,gDAA4C;AAC5C,oGAAgG;AAChG,uDAAmD;AACnD,mDAA+F;AAC/F,mCAA6B;AAG7B,MAAM,MAAM,GAAG,IAAI,cAAM,CAAC,MAAM,CAAC,CAAA;AAEjC,MAAM,eAAe,GAAG,CAAC,CAAA;AACzB,MAAM,sBAAsB,GAAG,
|
|
1
|
+
{"version":3,"file":"RoutingSession.js","sourceRoot":"","sources":["../../../../src/dht/routing/RoutingSession.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { DhtAddress } from '../../identifiers';
|
|
2
2
|
import { SortedContactList } from '../contact/SortedContactList';
|
|
3
3
|
import { RoutingRemoteContact } from './RoutingSession';
|
|
4
|
-
export type RoutingTable = Pick<SortedContactList<RoutingRemoteContact>, 'getClosestContacts' | 'addContacts' | 'addContact' | 'removeContact' | 'stop'>;
|
|
4
|
+
export type RoutingTable = Pick<SortedContactList<RoutingRemoteContact>, 'getClosestContacts' | 'addContacts' | 'addContact' | 'removeContact' | 'stop' | 'getSize'>;
|
|
5
5
|
/**
|
|
6
6
|
* RoutingTablesCache is a cache for routing tables.
|
|
7
7
|
* It is used to store the routing tables for a specific targetId and previousId.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LocalDataStore.js","sourceRoot":"","sources":["../../../../src/dht/store/LocalDataStore.ts"],"names":[],"mappings":";;;AACA,mDAA4D;AAC5D,0CAA2C;AAE3C,MAAa,cAAc;IAEN,MAAM,CAAQ;IAE/B,YAAY,MAAc;QACtB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;IACxB,CAAC;IAED,8DAA8D;IAC9D,8DAA8D;IAC9D,wCAAwC;IAChC,KAAK,GAAuD,IAAI,GAAG,EAAE,CAAA;IAEtE,UAAU,CAAC,SAAoB;QAClC,MAAM,GAAG,GAAG,IAAA,0BAAY,EAAC,SAAS,CAAC,GAAG,CAAC,CAAA;QACvC,MAAM,aAAa,GAAG,IAAA,0BAAY,EAAC,SAAS,CAAC,OAAO,CAAC,CAAA;QACrD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACvB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,kBAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;QAC5E,CAAC;QACD,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;YAC1C,MAAM,YAAY,GAAG,CAAC,SAAS,CAAC,SAAU,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,SAAU,CAAC,KAAK,GAAG,OAAO,CAAC,CAAA;YACnG,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC,GAAG,CAAC,aAAa,CAAE,CAAA;YAC9D,MAAM,eAAe,GAAG,CAAC,aAAa,CAAC,SAAU,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,SAAU,CAAC,KAAK,GAAG,OAAO,CAAC,CAAA;YAC9G,iEAAiE;YACjE,IAAI,eAAe,IAAI,YAAY,EAAE,CAAC;gBAClC,OAAO,KAAK,CAAA;YAChB,CAAC;QACL,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC,GAAG,CAAC,aAAa,EAAE,SAAS,CAAC,CAAA;QAClD,OAAO,IAAI,CAAA;IACf,CAAC;IAEM,aAAa,CAAC,GAAe,EAAE,OAAmB;QACrD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QAChC,IAAI,CAAC,IAAI,
|
|
1
|
+
{"version":3,"file":"LocalDataStore.js","sourceRoot":"","sources":["../../../../src/dht/store/LocalDataStore.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,7 +14,7 @@ interface StoreManagerOptions {
|
|
|
14
14
|
serviceId: ServiceID;
|
|
15
15
|
highestTtl: number;
|
|
16
16
|
redundancyFactor: number;
|
|
17
|
-
getNeighbors: () =>
|
|
17
|
+
getNeighbors: () => readonly PeerDescriptor[];
|
|
18
18
|
createRpcRemote: (contact: PeerDescriptor) => StoreRpcRemote;
|
|
19
19
|
}
|
|
20
20
|
export declare class StoreManager {
|
|
@@ -8,7 +8,7 @@ interface StoreRpcLocalOptions {
|
|
|
8
8
|
localDataStore: LocalDataStore;
|
|
9
9
|
localPeerDescriptor: PeerDescriptor;
|
|
10
10
|
replicateDataToContact: (dataEntry: DataEntry, contact: PeerDescriptor) => Promise<void>;
|
|
11
|
-
getStorers: (key: DhtAddress) =>
|
|
11
|
+
getStorers: (key: DhtAddress) => readonly PeerDescriptor[];
|
|
12
12
|
}
|
|
13
13
|
export declare class StoreRpcLocal implements IStoreRpc {
|
|
14
14
|
private readonly options;
|
|
@@ -3,7 +3,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.
|
|
6
|
+
exports.isPrivateIPv4 = isPrivateIPv4;
|
|
7
|
+
exports.getAddressFromIceCandidate = getAddressFromIceCandidate;
|
|
7
8
|
const ipaddr_js_1 = __importDefault(require("ipaddr.js"));
|
|
8
9
|
// IPv4 private address ranges as specified by RFC 1918
|
|
9
10
|
// and private loopback addresses
|
|
@@ -24,10 +25,8 @@ function isPrivateIPv4(address) {
|
|
|
24
25
|
}
|
|
25
26
|
return false;
|
|
26
27
|
}
|
|
27
|
-
exports.isPrivateIPv4 = isPrivateIPv4;
|
|
28
28
|
function getAddressFromIceCandidate(candidate) {
|
|
29
29
|
const fields = candidate.split(' ').filter((field) => field.length > 0);
|
|
30
30
|
return fields.length >= 5 && ipaddr_js_1.default.isValid(fields[4]) ? fields[4] : undefined;
|
|
31
31
|
}
|
|
32
|
-
exports.getAddressFromIceCandidate = getAddressFromIceCandidate;
|
|
33
32
|
//# sourceMappingURL=AddressTools.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AddressTools.js","sourceRoot":"","sources":["../../../src/helpers/AddressTools.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"AddressTools.js","sourceRoot":"","sources":["../../../src/helpers/AddressTools.ts"],"names":[],"mappings":";;;;;AAWA,sCAWC;AAED,gEAGC;AA3BD,0DAA8B;AAE9B,uDAAuD;AACvD,iCAAiC;AACjC,MAAM,iBAAiB,GAAG;IACtB,YAAY;IACZ,eAAe;IACf,gBAAgB;IAChB,aAAa;CAChB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,mBAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;AAEjC,SAAgB,aAAa,CAAC,OAAe;IACzC,IAAI,mBAAM,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QAC/B,MAAM,EAAE,GAAG,mBAAM,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QACrC,KAAK,MAAM,KAAK,IAAI,iBAAiB,EAAE,CAAC;YACpC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;gBAClB,OAAO,IAAI,CAAA;YACf,CAAC;QACL,CAAC;IACL,CAAC;IAED,OAAO,KAAK,CAAA;AAChB,CAAC;AAED,SAAgB,0BAA0B,CAAC,SAAiB;IACxD,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;IACvE,OAAO,MAAM,CAAC,MAAM,IAAI,CAAC,IAAI,mBAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;AAClF,CAAC"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.debugVars = void 0;
|
|
4
|
+
exports.logInfoIf = logInfoIf;
|
|
4
5
|
exports.debugVars = [];
|
|
5
6
|
function logInfoIf(logger, condition, msg) {
|
|
6
7
|
if (condition) {
|
|
7
8
|
logger.info(msg);
|
|
8
9
|
}
|
|
9
10
|
}
|
|
10
|
-
exports.logInfoIf = logInfoIf;
|
|
11
11
|
//# sourceMappingURL=debugHelpers.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"debugHelpers.js","sourceRoot":"","sources":["../../../src/helpers/debugHelpers.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"debugHelpers.js","sourceRoot":"","sources":["../../../src/helpers/debugHelpers.ts"],"names":[],"mappings":";;;AAIA,8BAIC;AANY,QAAA,SAAS,GAAwB,EAAE,CAAA;AAEhD,SAAgB,SAAS,CAAC,MAAc,EAAE,SAAkB,EAAE,GAAW;IACrE,IAAI,SAAS,EAAE,CAAC;QACZ,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACpB,CAAC;AACL,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import { IMessageType } from '@protobuf-ts/runtime';
|
|
2
|
-
export declare const protoClasses:
|
|
2
|
+
export declare const protoClasses: IMessageType<any>[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protoClasses.js","sourceRoot":"","sources":["../../../src/helpers/protoClasses.ts"],"names":[],"mappings":";;;AACA,uEA2BmD;AAEtC,QAAA,YAAY,
|
|
1
|
+
{"version":3,"file":"protoClasses.js","sourceRoot":"","sources":["../../../src/helpers/protoClasses.ts"],"names":[],"mappings":";;;AACA,uEA2BmD;AAEtC,QAAA,YAAY,GAAwB;IAC7C,4BAAmB;IACnB,6BAAoB;IACpB,kCAAyB;IACzB,mCAA0B;IAC1B,oBAAW;IACX,qBAAY;IACZ,oBAAW;IACX,uBAAc;IACd,2BAAkB;IAClB,yBAAgB;IAChB,4BAAmB;IACnB,wBAAe;IACf,4BAAmB;IACnB,6BAAoB;IACpB,yBAAgB;IAChB,0BAAiB;IACjB,gBAAO;IACP,mCAA0B;IAC1B,gCAAuB;IACvB,iBAAQ;IACR,kBAAS;IACT,qBAAY;IACZ,oBAAW;IACX,sBAAa;IACb,qBAAY;CACf,CAAA"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.protoToString =
|
|
3
|
+
exports.protoToString = protoToString;
|
|
4
4
|
const protoClasses_1 = require("./protoClasses");
|
|
5
5
|
const proto_rpc_1 = require("@streamr/proto-rpc");
|
|
6
6
|
const typeRegistry = protoClasses_1.protoClasses.concat(proto_rpc_1.protoClasses);
|
|
@@ -16,5 +16,4 @@ function protoToString(protoObj, objectType) {
|
|
|
16
16
|
}
|
|
17
17
|
return ret;
|
|
18
18
|
}
|
|
19
|
-
exports.protoToString = protoToString;
|
|
20
19
|
//# sourceMappingURL=protoToString.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protoToString.js","sourceRoot":"","sources":["../../../src/helpers/protoToString.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"protoToString.js","sourceRoot":"","sources":["../../../src/helpers/protoToString.ts"],"names":[],"mappings":";;AAOA,sCAaC;AAlBD,iDAA6C;AAC7C,kDAAoE;AAEpE,MAAM,YAAY,GAAG,2BAAY,CAAC,MAAM,CAAC,wBAAe,CAAC,CAAA;AAEzD,SAAgB,aAAa,CAAsD,QAAW,EAC1F,UAAqB;IAErB,IAAI,GAAG,GAAG,EAAE,CAAA;IACZ,IAAI,CAAC;QACD,GAAG,GAAG,UAAU,CAAC,YAAY,CAAC,QAAQ,EAAE;YACpC,YAAY;SACf,CAAC,CAAA;IACN,CAAC;IAAC,OAAO,EAAE,EAAE,CAAC;QACV,GAAG,GAAG,6BAA6B,CAAA;IACvC,CAAC;IAED,OAAO,GAAG,CAAA;AACd,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export declare const LOCAL_PROTOCOL_VERSION = "1.1";
|
|
2
|
-
export declare const
|
|
2
|
+
export declare const isMaybeSupportedProtocolVersion: (remoteVersion: string) => boolean;
|
|
3
3
|
export declare const parseVersion: (version: string) => {
|
|
4
4
|
major: number;
|
|
5
5
|
minor: number;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.parseVersion = exports.
|
|
3
|
+
exports.parseVersion = exports.isMaybeSupportedProtocolVersion = exports.LOCAL_PROTOCOL_VERSION = void 0;
|
|
4
4
|
exports.LOCAL_PROTOCOL_VERSION = '1.1';
|
|
5
5
|
/*
|
|
6
6
|
* When two nodes negotiate whether they are compatible or not, it is up to the
|
|
@@ -8,9 +8,9 @@ exports.LOCAL_PROTOCOL_VERSION = '1.1';
|
|
|
8
8
|
*
|
|
9
9
|
* The older version assumes optimistically that it may be supported by the newer
|
|
10
10
|
* version. It can't know for sure, but the other node will tell if it is not
|
|
11
|
-
* supported (e.g. rejecting the handshake with
|
|
11
|
+
* supported (e.g. rejecting the handshake with UNSUPPORTED_PROTOCOL_VERSION error).
|
|
12
12
|
*/
|
|
13
|
-
const
|
|
13
|
+
const isMaybeSupportedProtocolVersion = (remoteVersion) => {
|
|
14
14
|
const localMajor = (0, exports.parseVersion)(exports.LOCAL_PROTOCOL_VERSION).major;
|
|
15
15
|
const remoteMajor = (0, exports.parseVersion)(remoteVersion)?.major;
|
|
16
16
|
if ((remoteMajor === undefined) || (remoteMajor < localMajor)) {
|
|
@@ -21,7 +21,7 @@ const isMaybeSupportedVersion = (remoteVersion) => {
|
|
|
21
21
|
return true;
|
|
22
22
|
}
|
|
23
23
|
};
|
|
24
|
-
exports.
|
|
24
|
+
exports.isMaybeSupportedProtocolVersion = isMaybeSupportedProtocolVersion;
|
|
25
25
|
const parseVersion = (version) => {
|
|
26
26
|
const parts = version.split('.');
|
|
27
27
|
if (parts.length === 2) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../../src/helpers/version.ts"],"names":[],"mappings":";;;AAAa,QAAA,sBAAsB,GAAG,KAAK,CAAA;AAE3C;;;;;;;GAOG;AACI,MAAM,
|
|
1
|
+
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../../src/helpers/version.ts"],"names":[],"mappings":";;;AAAa,QAAA,sBAAsB,GAAG,KAAK,CAAA;AAE3C;;;;;;;GAOG;AACI,MAAM,+BAA+B,GAAG,CAAC,aAAqB,EAAW,EAAE;IAC9E,MAAM,UAAU,GAAG,IAAA,oBAAY,EAAC,8BAAsB,CAAE,CAAC,KAAK,CAAA;IAC9D,MAAM,WAAW,GAAG,IAAA,oBAAY,EAAC,aAAa,CAAC,EAAE,KAAK,CAAA;IACtD,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,EAAE,CAAC;QAC5D,OAAO,KAAK,CAAA;IAChB,CAAC;SAAM,CAAC;QACJ,sEAAsE;QACtE,OAAO,IAAI,CAAA;IACf,CAAC;AACL,CAAC,CAAA;AATY,QAAA,+BAA+B,mCAS3C;AAEM,MAAM,YAAY,GAAG,CAAC,OAAe,EAAgD,EAAE;IAC1F,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAChC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrB,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;QAC1C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAChC,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAA;QACjD,CAAC;IACL,CAAC;SAAM,CAAC;QACJ,OAAO,SAAS,CAAA;IACpB,CAAC;AACL,CAAC,CAAA;AAVY,QAAA,YAAY,gBAUxB"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import baseConfig from '../../eslint.config.mjs'
|
|
2
|
+
|
|
3
|
+
export default [
|
|
4
|
+
{
|
|
5
|
+
// TODO remove when https://github.com/streamr-dev/network/pull/2848 merged to main
|
|
6
|
+
ignores: [
|
|
7
|
+
'src/connection/webrtc/BrowserWebrtcConnection.ts',
|
|
8
|
+
'src/connection/websocket/BrowserWebsocketClientConnection.ts'
|
|
9
|
+
]
|
|
10
|
+
},
|
|
11
|
+
...baseConfig
|
|
12
|
+
]
|
package/jest.config.ts
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { Config } from '@jest/types'
|
|
2
|
+
import defaultConfig from '../../jest.config'
|
|
3
|
+
|
|
4
|
+
const config: Config.InitialOptions = {
|
|
5
|
+
...defaultConfig,
|
|
6
|
+
setupFilesAfterEnv: [
|
|
7
|
+
...defaultConfig.setupFilesAfterEnv,
|
|
8
|
+
'./test/utils/customMatchers.ts',
|
|
9
|
+
],
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export default config
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@streamr/dht",
|
|
3
|
-
"version": "102.0.0-beta.
|
|
3
|
+
"version": "102.0.0-beta.2",
|
|
4
4
|
"description": "Streamr Network DHT",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
"license": "STREAMR NETWORK OPEN SOURCE LICENSE",
|
|
13
13
|
"author": "Streamr Network AG <contact@streamr.network>",
|
|
14
14
|
"scripts": {
|
|
15
|
-
"
|
|
15
|
+
"prebuild": "./proto.sh",
|
|
16
16
|
"build": "tsc -b tsconfig.node.json",
|
|
17
17
|
"build-browser": "webpack --mode=development --progress",
|
|
18
18
|
"check": "tsc -p ./tsconfig.jest.json",
|
|
@@ -29,38 +29,37 @@
|
|
|
29
29
|
"@js-sdsl/ordered-map": "^4.4.2",
|
|
30
30
|
"@protobuf-ts/runtime": "^2.8.2",
|
|
31
31
|
"@protobuf-ts/runtime-rpc": "^2.8.2",
|
|
32
|
-
"@streamr/autocertifier-client": "102.0.0-beta.
|
|
33
|
-
"@streamr/cdn-location": "102.0.0-beta.
|
|
34
|
-
"@streamr/geoip-location": "102.0.0-beta.
|
|
35
|
-
"@streamr/proto-rpc": "102.0.0-beta.
|
|
36
|
-
"@streamr/utils": "102.0.0-beta.
|
|
32
|
+
"@streamr/autocertifier-client": "102.0.0-beta.2",
|
|
33
|
+
"@streamr/cdn-location": "102.0.0-beta.2",
|
|
34
|
+
"@streamr/geoip-location": "102.0.0-beta.2",
|
|
35
|
+
"@streamr/proto-rpc": "102.0.0-beta.2",
|
|
36
|
+
"@streamr/utils": "102.0.0-beta.2",
|
|
37
37
|
"eventemitter3": "^5.0.0",
|
|
38
38
|
"heap": "^0.2.6",
|
|
39
39
|
"ipaddr.js": "^2.0.1",
|
|
40
40
|
"k-bucket": "^5.1.0",
|
|
41
41
|
"lodash": "^4.17.21",
|
|
42
|
-
"lru-cache": "11.0.
|
|
42
|
+
"lru-cache": "^11.0.2",
|
|
43
43
|
"node-datachannel": "^0.10.1",
|
|
44
44
|
"querystring": "0.2.1",
|
|
45
|
-
"uuid": "^
|
|
45
|
+
"uuid": "^11.0.5",
|
|
46
46
|
"websocket": "^1.0.34",
|
|
47
47
|
"ws": "^8.18.0"
|
|
48
48
|
},
|
|
49
49
|
"devDependencies": {
|
|
50
50
|
"@streamr/browser-test-runner": "^0.0.1",
|
|
51
|
-
"@streamr/test-utils": "102.0.0-beta.
|
|
51
|
+
"@streamr/test-utils": "102.0.0-beta.2",
|
|
52
52
|
"@types/heap": "^0.2.34",
|
|
53
53
|
"@types/k-bucket": "^5.0.1",
|
|
54
|
-
"@types/lodash": "^4.17.
|
|
55
|
-
"@types/uuid": "^10.0.0",
|
|
54
|
+
"@types/lodash": "^4.17.14",
|
|
56
55
|
"@types/websocket": "^1.0.10",
|
|
57
|
-
"@types/ws": "^8.5.
|
|
56
|
+
"@types/ws": "^8.5.13",
|
|
58
57
|
"jest-leak-detector": "^27.3.1",
|
|
59
58
|
"jest-matcher-utils": "^29.7.0",
|
|
60
|
-
"ts-essentials": "^10.0.
|
|
59
|
+
"ts-essentials": "^10.0.4"
|
|
61
60
|
},
|
|
62
61
|
"optionalDependencies": {
|
|
63
|
-
"bufferutil": "^4.0.
|
|
64
|
-
"utf-8-validate": "^6.0.
|
|
62
|
+
"bufferutil": "^4.0.9",
|
|
63
|
+
"utf-8-validate": "^6.0.5"
|
|
65
64
|
}
|
|
66
65
|
}
|
package/protos/DhtRpc.proto
CHANGED
|
@@ -215,7 +215,7 @@ message ConnectivityResponse {
|
|
|
215
215
|
string natType = 2;
|
|
216
216
|
ConnectivityMethod websocket = 3;
|
|
217
217
|
uint32 ipAddress = 4;
|
|
218
|
-
string
|
|
218
|
+
string protocolVersion = 5;
|
|
219
219
|
optional double latitude = 6;
|
|
220
220
|
optional double longitude = 7;
|
|
221
221
|
}
|
|
@@ -223,19 +223,21 @@ message ConnectivityResponse {
|
|
|
223
223
|
message HandshakeRequest {
|
|
224
224
|
PeerDescriptor sourcePeerDescriptor = 1;
|
|
225
225
|
optional PeerDescriptor targetPeerDescriptor = 2;
|
|
226
|
-
string
|
|
226
|
+
string protocolVersion = 3;
|
|
227
|
+
string applicationVersion = 4;
|
|
227
228
|
}
|
|
228
229
|
|
|
229
230
|
message HandshakeResponse {
|
|
230
231
|
PeerDescriptor sourcePeerDescriptor = 1;
|
|
231
232
|
optional HandshakeError error = 2;
|
|
232
|
-
string
|
|
233
|
+
string protocolVersion = 3;
|
|
234
|
+
string applicationVersion = 4;
|
|
233
235
|
}
|
|
234
236
|
|
|
235
237
|
enum HandshakeError {
|
|
236
238
|
DUPLICATE_CONNECTION = 0;
|
|
237
239
|
INVALID_TARGET_PEER_DESCRIPTOR = 1;
|
|
238
|
-
|
|
240
|
+
UNSUPPORTED_PROTOCOL_VERSION = 2;
|
|
239
241
|
}
|
|
240
242
|
|
|
241
243
|
// Wraps all messages
|
package/.eslintignore
DELETED
package/.eslintrc
DELETED