@streamr/dht 101.1.2 → 102.0.0-beta.1
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/package.json +17 -18
- package/dist/src/connection/Connection.d.ts +1 -1
- package/dist/src/connection/ConnectionLockRpcLocal.d.ts +5 -3
- package/dist/src/connection/ConnectionLockRpcLocal.js +9 -3
- package/dist/src/connection/ConnectionLockRpcLocal.js.map +1 -1
- package/dist/src/connection/ConnectionLockRpcRemote.d.ts +3 -2
- package/dist/src/connection/ConnectionLockRpcRemote.js +14 -3
- package/dist/src/connection/ConnectionLockRpcRemote.js.map +1 -1
- package/dist/src/connection/ConnectionLockStates.d.ts +5 -0
- package/dist/src/connection/ConnectionLockStates.js +14 -0
- package/dist/src/connection/ConnectionLockStates.js.map +1 -1
- package/dist/src/connection/ConnectionManager.d.ts +8 -1
- package/dist/src/connection/ConnectionManager.js +96 -32
- package/dist/src/connection/ConnectionManager.js.map +1 -1
- package/dist/src/connection/ConnectionsView.d.ts +1 -1
- package/dist/src/connection/ConnectorFacade.d.ts +1 -1
- package/dist/src/connection/Handshaker.d.ts +2 -2
- package/dist/src/connection/Handshaker.js +11 -7
- package/dist/src/connection/Handshaker.js.map +1 -1
- package/dist/src/connection/ManagedConnection.d.ts +7 -1
- package/dist/src/connection/ManagedConnection.js +41 -8
- package/dist/src/connection/ManagedConnection.js.map +1 -1
- package/dist/src/connection/PendingConnection.d.ts +1 -1
- package/dist/src/connection/connectivityChecker.d.ts +1 -1
- package/dist/src/connection/connectivityChecker.js +22 -11
- package/dist/src/connection/connectivityChecker.js.map +1 -1
- package/dist/src/connection/connectivityRequestHandler.js +4 -4
- package/dist/src/connection/connectivityRequestHandler.js.map +1 -1
- package/dist/src/connection/simulator/Simulator.d.ts +1 -1
- package/dist/src/connection/simulator/Simulator.js +5 -4
- package/dist/src/connection/simulator/Simulator.js.map +1 -1
- package/dist/src/connection/simulator/SimulatorConnection.d.ts +1 -1
- package/dist/src/connection/simulator/SimulatorConnection.js +9 -9
- package/dist/src/connection/simulator/SimulatorConnection.js.map +1 -1
- package/dist/src/connection/simulator/SimulatorConnector.d.ts +1 -1
- package/dist/src/connection/simulator/SimulatorConnector.js +4 -4
- package/dist/src/connection/simulator/SimulatorConnector.js.map +1 -1
- package/dist/src/connection/simulator/SimulatorTransport.d.ts +1 -1
- package/dist/src/connection/simulator/SimulatorTransport.js +2 -1
- package/dist/src/connection/simulator/SimulatorTransport.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.d.ts +2 -1
- package/dist/src/connection/webrtc/NodeWebrtcConnection.js +13 -8
- package/dist/src/connection/webrtc/NodeWebrtcConnection.js.map +1 -1
- package/dist/src/connection/webrtc/WebrtcConnector.d.ts +2 -1
- package/dist/src/connection/webrtc/WebrtcConnector.js +28 -17
- package/dist/src/connection/webrtc/WebrtcConnector.js.map +1 -1
- package/dist/src/connection/webrtc/WebrtcConnectorRpcLocal.d.ts +3 -3
- package/dist/src/connection/webrtc/WebrtcConnectorRpcLocal.js +4 -4
- package/dist/src/connection/webrtc/WebrtcConnectorRpcLocal.js.map +1 -1
- package/dist/src/connection/webrtc/WebrtcConnectorRpcRemote.d.ts +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 -1
- package/dist/src/connection/websocket/WebsocketClientConnector.d.ts +1 -1
- package/dist/src/connection/websocket/WebsocketClientConnector.js +3 -3
- package/dist/src/connection/websocket/WebsocketClientConnector.js.map +1 -1
- package/dist/src/connection/websocket/WebsocketClientConnectorRpcLocal.d.ts +3 -4
- package/dist/src/connection/websocket/WebsocketClientConnectorRpcLocal.js +1 -1
- package/dist/src/connection/websocket/WebsocketClientConnectorRpcLocal.js.map +1 -1
- package/dist/src/connection/websocket/WebsocketClientConnectorRpcRemote.d.ts +1 -1
- package/dist/src/connection/websocket/WebsocketClientConnectorRpcRemote.js +1 -1
- package/dist/src/connection/websocket/WebsocketClientConnectorRpcRemote.js.map +1 -1
- package/dist/src/connection/websocket/WebsocketServerConnection.d.ts +0 -1
- package/dist/src/connection/websocket/WebsocketServerConnector.d.ts +1 -1
- package/dist/src/connection/websocket/WebsocketServerConnector.js +34 -24
- package/dist/src/connection/websocket/WebsocketServerConnector.js.map +1 -1
- package/dist/src/dht/DhtNode.d.ts +5 -2
- package/dist/src/dht/DhtNode.js +20 -8
- package/dist/src/dht/DhtNode.js.map +1 -1
- package/dist/src/dht/DhtNodeRpcLocal.d.ts +4 -4
- package/dist/src/dht/DhtNodeRpcLocal.js +3 -3
- package/dist/src/dht/DhtNodeRpcLocal.js.map +1 -1
- package/dist/src/dht/DhtNodeRpcRemote.d.ts +2 -2
- package/dist/src/dht/DhtNodeRpcRemote.js +3 -3
- package/dist/src/dht/DhtNodeRpcRemote.js.map +1 -1
- package/dist/src/dht/ExternalApiRpcLocal.d.ts +3 -3
- package/dist/src/dht/ExternalApiRpcLocal.js +3 -3
- package/dist/src/dht/ExternalApiRpcLocal.js.map +1 -1
- package/dist/src/dht/ExternalApiRpcRemote.d.ts +3 -3
- package/dist/src/dht/ExternalApiRpcRemote.js +2 -2
- package/dist/src/dht/ExternalApiRpcRemote.js.map +1 -1
- package/dist/src/dht/PeerManager.d.ts +3 -2
- package/dist/src/dht/PeerManager.js +12 -11
- package/dist/src/dht/PeerManager.js.map +1 -1
- package/dist/src/dht/contact/Contact.d.ts +1 -1
- package/dist/src/dht/contact/Contact.js +1 -1
- package/dist/src/dht/contact/Contact.js.map +1 -1
- package/dist/src/dht/contact/RingContactList.d.ts +1 -1
- package/dist/src/dht/contact/RingContactList.js +1 -1
- package/dist/src/dht/contact/RingContactList.js.map +1 -1
- package/dist/src/dht/contact/RpcRemote.d.ts +1 -1
- package/dist/src/dht/contact/SortedContactList.js +2 -2
- package/dist/src/dht/contact/SortedContactList.js.map +1 -1
- package/dist/src/dht/contact/ringIdentifiers.d.ts +1 -1
- package/dist/src/dht/discovery/DiscoverySession.d.ts +1 -2
- package/dist/src/dht/discovery/DiscoverySession.js +3 -3
- package/dist/src/dht/discovery/DiscoverySession.js.map +1 -1
- package/dist/src/dht/discovery/PeerDiscovery.d.ts +1 -2
- package/dist/src/dht/discovery/PeerDiscovery.js +7 -7
- package/dist/src/dht/discovery/PeerDiscovery.js.map +1 -1
- package/dist/src/dht/discovery/RingDiscoverySession.d.ts +0 -1
- package/dist/src/dht/discovery/RingDiscoverySession.js +1 -1
- package/dist/src/dht/discovery/RingDiscoverySession.js.map +1 -1
- package/dist/src/dht/recursive-operation/RecursiveOperationManager.d.ts +3 -3
- package/dist/src/dht/recursive-operation/RecursiveOperationManager.js +8 -8
- package/dist/src/dht/recursive-operation/RecursiveOperationManager.js.map +1 -1
- package/dist/src/dht/recursive-operation/RecursiveOperationRpcLocal.d.ts +2 -2
- package/dist/src/dht/recursive-operation/RecursiveOperationRpcLocal.js +2 -2
- package/dist/src/dht/recursive-operation/RecursiveOperationRpcLocal.js.map +1 -1
- package/dist/src/dht/recursive-operation/RecursiveOperationRpcRemote.d.ts +2 -2
- package/dist/src/dht/recursive-operation/RecursiveOperationRpcRemote.js +3 -3
- package/dist/src/dht/recursive-operation/RecursiveOperationRpcRemote.js.map +1 -1
- package/dist/src/dht/recursive-operation/RecursiveOperationSession.d.ts +1 -1
- package/dist/src/dht/recursive-operation/RecursiveOperationSession.js +7 -7
- package/dist/src/dht/recursive-operation/RecursiveOperationSession.js.map +1 -1
- package/dist/src/dht/recursive-operation/RecursiveOperationSessionRpcLocal.d.ts +3 -3
- package/dist/src/dht/recursive-operation/RecursiveOperationSessionRpcLocal.js +1 -1
- package/dist/src/dht/recursive-operation/RecursiveOperationSessionRpcLocal.js.map +1 -1
- package/dist/src/dht/recursive-operation/RecursiveOperationSessionRpcRemote.d.ts +2 -2
- package/dist/src/dht/routing/DuplicateDetector.js.map +1 -1
- package/dist/src/dht/routing/Router.d.ts +4 -1
- package/dist/src/dht/routing/Router.js +17 -9
- package/dist/src/dht/routing/Router.js.map +1 -1
- package/dist/src/dht/routing/RouterRpcLocal.d.ts +2 -2
- package/dist/src/dht/routing/RouterRpcLocal.js +5 -5
- package/dist/src/dht/routing/RouterRpcLocal.js.map +1 -1
- package/dist/src/dht/routing/RouterRpcRemote.d.ts +2 -2
- package/dist/src/dht/routing/RouterRpcRemote.js +7 -7
- package/dist/src/dht/routing/RouterRpcRemote.js.map +1 -1
- package/dist/src/dht/routing/RoutingSession.d.ts +1 -1
- package/dist/src/dht/routing/RoutingSession.js +7 -8
- package/dist/src/dht/routing/RoutingSession.js.map +1 -1
- package/dist/src/dht/routing/RoutingTablesCache.d.ts +1 -1
- package/dist/src/dht/routing/getPreviousPeer.d.ts +1 -1
- package/dist/src/dht/store/LocalDataStore.d.ts +1 -1
- package/dist/src/dht/store/LocalDataStore.js +3 -3
- package/dist/src/dht/store/LocalDataStore.js.map +1 -1
- package/dist/src/dht/store/StoreManager.d.ts +3 -3
- package/dist/src/dht/store/StoreManager.js +8 -8
- package/dist/src/dht/store/StoreManager.js.map +1 -1
- package/dist/src/dht/store/StoreRpcLocal.d.ts +4 -4
- package/dist/src/dht/store/StoreRpcLocal.js +4 -4
- package/dist/src/dht/store/StoreRpcLocal.js.map +1 -1
- package/dist/src/dht/store/StoreRpcRemote.d.ts +3 -3
- package/dist/src/dht/store/StoreRpcRemote.js +7 -4
- package/dist/src/dht/store/StoreRpcRemote.js.map +1 -1
- package/dist/src/exports.d.ts +2 -2
- package/dist/src/exports.js +6 -6
- package/dist/src/exports.js.map +1 -1
- package/dist/src/helpers/AddressTools.js +2 -3
- package/dist/src/helpers/AddressTools.js.map +1 -1
- package/dist/src/helpers/Connectivity.d.ts +1 -1
- package/dist/src/helpers/Connectivity.js +1 -1
- package/dist/src/helpers/Connectivity.js.map +1 -1
- package/dist/src/helpers/createPeerDescriptor.d.ts +1 -1
- package/dist/src/helpers/createPeerDescriptor.js +2 -2
- package/dist/src/helpers/createPeerDescriptor.js.map +1 -1
- package/dist/src/helpers/createPeerDescriptorSignaturePayload.d.ts +1 -1
- package/dist/src/helpers/createPeerDescriptorSignaturePayload.js +1 -1
- package/dist/src/helpers/createPeerDescriptorSignaturePayload.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 +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/dist/src/identifiers.d.ts +5 -5
- package/dist/src/identifiers.js +11 -11
- package/dist/src/identifiers.js.map +1 -1
- package/dist/src/rpc-protocol/DhtCallContext.d.ts +1 -1
- package/dist/src/rpc-protocol/DhtRpcOptions.d.ts +1 -1
- package/dist/src/transport/ITransport.d.ts +2 -1
- package/dist/src/transport/ListeningRpcCommunicator.d.ts +2 -1
- package/dist/src/transport/ListeningRpcCommunicator.js +13 -4
- package/dist/src/transport/ListeningRpcCommunicator.js.map +1 -1
- package/dist/src/transport/RoutingRpcCommunicator.d.ts +1 -1
- package/eslint.config.mjs +12 -0
- package/jest.config.ts +12 -0
- package/package.json +17 -18
- package/proto.sh +2 -3
- package/protos/DhtRpc.proto +11 -4
- package/src/connection/Connection.ts +1 -1
- package/src/connection/ConnectionLockRpcLocal.ts +16 -7
- package/src/connection/ConnectionLockRpcRemote.ts +18 -6
- package/src/connection/ConnectionLockStates.ts +18 -0
- package/src/connection/ConnectionManager.ts +93 -27
- package/src/connection/ConnectionsView.ts +1 -1
- package/src/connection/ConnectorFacade.ts +1 -1
- package/src/connection/Handshaker.ts +18 -14
- package/src/connection/ManagedConnection.ts +28 -3
- package/src/connection/PendingConnection.ts +1 -1
- package/src/connection/connectivityChecker.ts +6 -5
- package/src/connection/connectivityRequestHandler.ts +4 -4
- package/src/connection/simulator/Simulator.ts +8 -7
- package/src/connection/simulator/SimulatorConnection.ts +10 -10
- package/src/connection/simulator/SimulatorConnector.ts +5 -5
- package/src/connection/simulator/SimulatorTransport.ts +3 -2
- package/src/connection/simulator/pings.ts +1 -1
- package/src/connection/webrtc/BrowserWebrtcConnection.ts +10 -1
- package/src/connection/webrtc/NodeWebrtcConnection.ts +15 -11
- package/src/connection/webrtc/WebrtcConnector.ts +13 -11
- package/src/connection/webrtc/WebrtcConnectorRpcLocal.ts +8 -8
- package/src/connection/webrtc/WebrtcConnectorRpcRemote.ts +2 -2
- package/src/connection/websocket/WebsocketClientConnector.ts +5 -5
- package/src/connection/websocket/WebsocketClientConnectorRpcLocal.ts +5 -5
- package/src/connection/websocket/WebsocketClientConnectorRpcRemote.ts +4 -4
- package/src/connection/websocket/WebsocketServerConnector.ts +24 -20
- package/src/dht/DhtNode.ts +29 -11
- package/src/dht/DhtNodeRpcLocal.ts +8 -8
- package/src/dht/DhtNodeRpcRemote.ts +5 -5
- package/src/dht/ExternalApiRpcLocal.ts +8 -8
- package/src/dht/ExternalApiRpcRemote.ts +6 -6
- package/src/dht/PeerManager.ts +16 -14
- package/src/dht/contact/Contact.ts +3 -3
- package/src/dht/contact/RingContactList.ts +3 -3
- package/src/dht/contact/RpcRemote.ts +1 -1
- package/src/dht/contact/SortedContactList.ts +3 -3
- package/src/dht/contact/ringIdentifiers.ts +1 -1
- package/src/dht/discovery/DiscoverySession.ts +5 -5
- package/src/dht/discovery/PeerDiscovery.ts +12 -12
- package/src/dht/discovery/RingDiscoverySession.ts +3 -3
- package/src/dht/recursive-operation/RecursiveOperationManager.ts +10 -10
- package/src/dht/recursive-operation/RecursiveOperationRpcLocal.ts +4 -4
- package/src/dht/recursive-operation/RecursiveOperationRpcRemote.ts +6 -6
- package/src/dht/recursive-operation/RecursiveOperationSession.ts +8 -8
- package/src/dht/recursive-operation/RecursiveOperationSessionRpcLocal.ts +5 -5
- package/src/dht/recursive-operation/RecursiveOperationSessionRpcRemote.ts +2 -2
- package/src/dht/routing/DuplicateDetector.ts +1 -1
- package/src/dht/routing/Router.ts +19 -10
- package/src/dht/routing/RouterRpcLocal.ts +7 -7
- package/src/dht/routing/RouterRpcRemote.ts +9 -9
- package/src/dht/routing/RoutingSession.ts +9 -10
- package/src/dht/routing/RoutingTablesCache.ts +1 -1
- package/src/dht/routing/getPreviousPeer.ts +1 -1
- package/src/dht/store/LocalDataStore.ts +5 -5
- package/src/dht/store/StoreManager.ts +13 -13
- package/src/dht/store/StoreRpcLocal.ts +9 -9
- package/src/dht/store/StoreRpcRemote.ts +10 -7
- package/src/exports.ts +5 -5
- package/src/helpers/Connectivity.ts +1 -1
- package/src/helpers/createPeerDescriptor.ts +3 -3
- package/src/helpers/createPeerDescriptorSignaturePayload.ts +1 -1
- package/src/helpers/protoClasses.ts +2 -2
- package/src/helpers/version.ts +2 -2
- package/src/identifiers.ts +7 -7
- package/src/rpc-protocol/DhtCallContext.ts +1 -1
- package/src/rpc-protocol/DhtRpcOptions.ts +1 -1
- package/src/transport/ITransport.ts +2 -1
- package/src/transport/ListeningRpcCommunicator.ts +14 -6
- package/src/transport/RoutingRpcCommunicator.ts +2 -2
- package/test/benchmark/Find.test.ts +9 -9
- package/test/benchmark/KademliaCorrectness.test.ts +7 -7
- package/test/benchmark/RingCorrectness.test.ts +8 -8
- package/test/benchmark/SortedContactListBenchmark.test.ts +10 -10
- package/test/benchmark/hybrid-network-simulation/RingContactList.test.ts +3 -3
- package/test/end-to-end/Layer0Webrtc-Layer1.test.ts +6 -6
- package/test/end-to-end/Layer0Webrtc.test.ts +6 -6
- package/test/end-to-end/RecoveryFromFailedAutoCertification.test.ts +1 -1
- package/test/end-to-end/WebsocketConnectionRequest.test.ts +3 -3
- package/test/end-to-end/memory-leak.test.ts +6 -6
- package/test/integration/ConnectionLocking.test.ts +48 -37
- package/test/integration/ConnectionManager.test.ts +62 -6
- package/test/integration/ConnectivityChecking.test.ts +3 -2
- package/test/integration/DhtJoinPeerDiscovery.test.ts +2 -2
- package/test/integration/DhtNode.test.ts +6 -6
- package/test/integration/DhtNodeExternalAPI.test.ts +7 -7
- package/test/integration/DhtNodeRpcRemote.test.ts +9 -9
- package/test/integration/DhtRpc.test.ts +12 -13
- package/test/integration/Find.test.ts +5 -5
- package/test/integration/GeoIpConnectivityChecking.test.ts +8 -7
- package/test/integration/Layer1-scale.test.ts +3 -3
- package/test/integration/Mock-Layer1-Layer0.test.ts +6 -6
- package/test/integration/MultipleEntryPointJoining.test.ts +1 -1
- package/test/integration/ReplicateData.test.ts +10 -11
- package/test/integration/RouteMessage.test.ts +13 -13
- package/test/integration/RouterRpcRemote.test.ts +7 -7
- package/test/integration/SimultaneousConnections.test.ts +14 -13
- package/test/integration/Store.test.ts +9 -9
- package/test/integration/StoreAndDelete.test.ts +10 -10
- package/test/integration/StoreOnDhtWithThreeNodes.test.ts +10 -10
- package/test/integration/StoreOnDhtWithTwoNodes.test.ts +10 -10
- package/test/integration/StoreRpcRemote.test.ts +11 -11
- package/test/integration/WebrtcConnectionManagement.test.ts +4 -31
- package/test/integration/WebrtcConnectorRpc.test.ts +14 -14
- package/test/integration/Websocket.test.ts +0 -2
- package/test/integration/WebsocketClientConnectorRpc.test.ts +8 -8
- package/test/integration/WebsocketConnectionManagement.test.ts +11 -12
- package/test/integration/{rpc-connections-over-webrpc.test.ts → rpc-connections-over-webrtc.test.ts} +12 -46
- package/test/unit/AutoCertifierClientFacade.test.ts +6 -6
- package/test/unit/ConnectionManager.test.ts +4 -3
- package/test/unit/ConnectivityHelpers.test.ts +1 -1
- package/test/unit/DiscoverySession.test.ts +6 -6
- package/test/unit/Handshaker.test.ts +2 -2
- package/test/unit/ListeningRpcCommunicator.test.ts +52 -0
- package/test/unit/LocalDataStore.test.ts +21 -21
- package/test/unit/PeerManager.test.ts +15 -15
- package/test/unit/PendingConnection.test.ts +1 -1
- package/test/unit/ProtobufMessage.test.ts +1 -1
- package/test/unit/RandomContactList.test.ts +2 -2
- package/test/unit/RecursiveOperationManager.test.ts +3 -3
- package/test/unit/RecursiveOperationSession.test.ts +6 -6
- package/test/unit/Router.test.ts +6 -6
- package/test/unit/RoutingSession.test.ts +13 -6
- package/test/unit/SortedContactList.test.ts +8 -8
- package/test/unit/StoreManager.test.ts +12 -12
- package/test/unit/StoreRpcLocal.test.ts +9 -9
- package/test/unit/WebrtcConnection.test.ts +29 -0
- package/test/unit/WebsocketClientConnector.test.ts +1 -1
- package/test/unit/WebsocketServerConnector.test.ts +1 -1
- package/test/unit/connectivityRequestHandler.test.ts +6 -6
- package/test/unit/createPeerDescriptor.test.ts +4 -4
- package/test/unit/customMatchers.test.ts +18 -0
- package/test/unit/getClosestNodes.test.ts +5 -5
- package/test/unit/version.test.ts +9 -9
- package/test/utils/FakeConnectorFacade.ts +1 -1
- package/test/utils/FakeTransport.ts +12 -9
- package/test/utils/customMatchers.ts +9 -9
- package/test/utils/mock/MockConnectionsView.ts +1 -1
- package/test/utils/mock/MockRouter.ts +5 -1
- package/test/utils/mock/MockTransport.ts +6 -1
- package/test/utils/mock/mockDataEntry.ts +6 -6
- package/test/utils/topology.ts +3 -4
- package/test/utils/utils.ts +11 -11
- package/tsconfig.jest.json +2 -1
- package/tsconfig.node.json +1 -0
- package/.eslintignore +0 -5
- package/.eslintrc +0 -3
- package/dist/src/proto/google/protobuf/any.d.ts +0 -173
- package/dist/src/proto/google/protobuf/any.js +0 -155
- package/dist/src/proto/google/protobuf/any.js.map +0 -1
- package/dist/src/proto/google/protobuf/empty.d.ts +0 -32
- package/dist/src/proto/google/protobuf/empty.js +0 -32
- package/dist/src/proto/google/protobuf/empty.js.map +0 -1
- package/dist/src/proto/google/protobuf/timestamp.d.ts +0 -149
- package/dist/src/proto/google/protobuf/timestamp.js +0 -136
- package/dist/src/proto/google/protobuf/timestamp.js.map +0 -1
- package/dist/src/proto/packages/dht/protos/DhtRpc.client.d.ts +0 -352
- package/dist/src/proto/packages/dht/protos/DhtRpc.client.js +0 -278
- package/dist/src/proto/packages/dht/protos/DhtRpc.client.js.map +0 -1
- package/dist/src/proto/packages/dht/protos/DhtRpc.d.ts +0 -975
- package/dist/src/proto/packages/dht/protos/DhtRpc.js +0 -661
- package/dist/src/proto/packages/dht/protos/DhtRpc.js.map +0 -1
- package/dist/src/proto/packages/dht/protos/DhtRpc.server.d.ts +0 -157
- package/dist/src/proto/packages/dht/protos/DhtRpc.server.js +0 -3
- package/dist/src/proto/packages/dht/protos/DhtRpc.server.js.map +0 -1
- package/dist/src/proto/packages/proto-rpc/protos/ProtoRpc.d.ts +0 -87
- package/dist/src/proto/packages/proto-rpc/protos/ProtoRpc.js +0 -66
- package/dist/src/proto/packages/proto-rpc/protos/ProtoRpc.js.map +0 -1
- package/dist/src/proto/tests.d.ts +0 -39
- package/dist/src/proto/tests.js +0 -34
- package/dist/src/proto/tests.js.map +0 -1
- package/jest.config.js +0 -5
- package/src/proto/google/protobuf/any.ts +0 -319
- package/src/proto/google/protobuf/empty.ts +0 -82
- package/src/proto/google/protobuf/timestamp.ts +0 -281
- package/src/proto/packages/dht/protos/DhtRpc.client.ts +0 -407
- package/src/proto/packages/dht/protos/DhtRpc.server.ts +0 -160
- package/src/proto/packages/dht/protos/DhtRpc.ts +0 -1244
- package/src/proto/packages/proto-rpc/protos/ProtoRpc.ts +0 -108
- package/src/proto/tests.ts +0 -52
- package/test/benchmark/any.test.ts +0 -28
- /package/{src/types/glogal.d.ts → test/types/global.d.ts} +0 -0
|
@@ -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,
|
|
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,2 +1,2 @@
|
|
|
1
|
-
import { PeerDescriptor, RouteMessageWrapper } from '
|
|
1
|
+
import { PeerDescriptor, RouteMessageWrapper } from '../../../generated/packages/dht/protos/DhtRpc';
|
|
2
2
|
export declare const getPreviousPeer: (routeMessage: RouteMessageWrapper) => PeerDescriptor | undefined;
|
|
@@ -13,8 +13,8 @@ class LocalDataStore {
|
|
|
13
13
|
// DhtAddress of the creator of the data
|
|
14
14
|
store = new Map();
|
|
15
15
|
storeEntry(dataEntry) {
|
|
16
|
-
const key = (0, identifiers_1.
|
|
17
|
-
const creatorNodeId = (0, identifiers_1.
|
|
16
|
+
const key = (0, identifiers_1.toDhtAddress)(dataEntry.key);
|
|
17
|
+
const creatorNodeId = (0, identifiers_1.toDhtAddress)(dataEntry.creator);
|
|
18
18
|
if (!this.store.has(key)) {
|
|
19
19
|
this.store.set(key, new utils_1.MapWithTtl((e) => Math.min(e.ttl, this.maxTtl)));
|
|
20
20
|
}
|
|
@@ -32,7 +32,7 @@ class LocalDataStore {
|
|
|
32
32
|
}
|
|
33
33
|
markAsDeleted(key, creator) {
|
|
34
34
|
const item = this.store.get(key);
|
|
35
|
-
if (
|
|
35
|
+
if (!item?.has(creator)) {
|
|
36
36
|
return false;
|
|
37
37
|
}
|
|
38
38
|
const storedEntry = item.get(creator);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LocalDataStore.js","sourceRoot":"","sources":["../../../../src/dht/store/LocalDataStore.ts"],"names":[],"mappings":";;;AACA,
|
|
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,EAAE,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YACtB,OAAO,KAAK,CAAA;QAChB,CAAC;QACD,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;QACrC,WAAY,CAAC,OAAO,GAAG,IAAI,CAAA;QAC3B,OAAO,IAAI,CAAA;IACf,CAAC;IAEK,CAAE,MAAM,CAAC,GAAgB;QAC3B,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACpB,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;YAC/B,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;gBACpB,KAAK,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,CAAA;YACvB,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC;gBAClC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAA;YACrB,CAAC;QACL,CAAC;IACL,CAAC;IAEM,IAAI;QACP,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAA;IAC5B,CAAC;IAEM,oBAAoB,CAAC,GAAe;QACvC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACnC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAA;QACtB,CAAC,CAAC,CAAA;IACN,CAAC;IAEM,WAAW,CAAC,GAAe,EAAE,OAAmB;QACnD,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,CAAA;QACrD,IAAI,WAAW,EAAE,CAAC;YACd,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,CAAA;YACpC,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC;gBACpC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;YAC1B,CAAC;QACL,CAAC;IACL,CAAC;IAEM,KAAK;QACR,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAA;QAC5C,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAA;IACtB,CAAC;CACJ;AA/ED,wCA+EC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { DhtAddress } from '../../identifiers';
|
|
2
|
-
import { Any } from '
|
|
3
|
-
import { PeerDescriptor } from '
|
|
2
|
+
import { Any } from '../../../generated/google/protobuf/any';
|
|
3
|
+
import { PeerDescriptor } from '../../../generated/packages/dht/protos/DhtRpc';
|
|
4
4
|
import { RoutingRpcCommunicator } from '../../transport/RoutingRpcCommunicator';
|
|
5
5
|
import { ServiceID } from '../../types/ServiceID';
|
|
6
6
|
import { RecursiveOperationManager } from '../recursive-operation/RecursiveOperationManager';
|
|
@@ -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 {
|
|
@@ -3,8 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.StoreManager = void 0;
|
|
4
4
|
const utils_1 = require("@streamr/utils");
|
|
5
5
|
const identifiers_1 = require("../../identifiers");
|
|
6
|
-
const timestamp_1 = require("
|
|
7
|
-
const DhtRpc_1 = require("
|
|
6
|
+
const timestamp_1 = require("../../../generated/google/protobuf/timestamp");
|
|
7
|
+
const DhtRpc_1 = require("../../../generated/packages/dht/protos/DhtRpc");
|
|
8
8
|
const getClosestNodes_1 = require("../contact/getClosestNodes");
|
|
9
9
|
const StoreRpcLocal_1 = require("./StoreRpcLocal");
|
|
10
10
|
const logger = new utils_1.Logger(module);
|
|
@@ -48,7 +48,7 @@ class StoreManager {
|
|
|
48
48
|
async replicateDataToContact(dataEntry, contact) {
|
|
49
49
|
const rpcRemote = this.options.createRpcRemote(contact);
|
|
50
50
|
try {
|
|
51
|
-
await rpcRemote.replicateData({ entry: dataEntry });
|
|
51
|
+
await rpcRemote.replicateData({ entry: dataEntry }, true);
|
|
52
52
|
}
|
|
53
53
|
catch (e) {
|
|
54
54
|
logger.trace('replicateData() threw an exception ' + e);
|
|
@@ -62,8 +62,8 @@ class StoreManager {
|
|
|
62
62
|
const ttl = this.options.highestTtl; // ToDo: make TTL decrease according to some nice curve
|
|
63
63
|
const createdAt = timestamp_1.Timestamp.now();
|
|
64
64
|
for (let i = 0; i < closestNodes.length && successfulNodes.length < this.options.redundancyFactor; i++) {
|
|
65
|
-
const keyRaw = (0, identifiers_1.
|
|
66
|
-
const creatorRaw = (0, identifiers_1.
|
|
65
|
+
const keyRaw = (0, identifiers_1.toDhtAddressRaw)(key);
|
|
66
|
+
const creatorRaw = (0, identifiers_1.toDhtAddressRaw)(creator);
|
|
67
67
|
if ((0, identifiers_1.areEqualPeerDescriptors)(this.options.localPeerDescriptor, closestNodes[i])) {
|
|
68
68
|
this.options.localDataStore.storeEntry({
|
|
69
69
|
key: keyRaw,
|
|
@@ -99,12 +99,12 @@ class StoreManager {
|
|
|
99
99
|
async replicateDataToClosestNodes() {
|
|
100
100
|
const dataEntries = Array.from(this.options.localDataStore.values());
|
|
101
101
|
await Promise.all(dataEntries.map(async (dataEntry) => {
|
|
102
|
-
const dataKey = (0, identifiers_1.
|
|
102
|
+
const dataKey = (0, identifiers_1.toDhtAddress)(dataEntry.key);
|
|
103
103
|
const neighbors = (0, getClosestNodes_1.getClosestNodes)(dataKey, this.options.getNeighbors(), { maxCount: this.options.redundancyFactor });
|
|
104
104
|
await Promise.all(neighbors.map(async (neighbor) => {
|
|
105
105
|
const rpcRemote = this.options.createRpcRemote(neighbor);
|
|
106
106
|
try {
|
|
107
|
-
await rpcRemote.replicateData({ entry: dataEntry });
|
|
107
|
+
await rpcRemote.replicateData({ entry: dataEntry }, false);
|
|
108
108
|
}
|
|
109
109
|
catch (err) {
|
|
110
110
|
logger.trace('Failed to replicate data in replicateDataToClosestNodes', { err });
|
|
@@ -115,7 +115,7 @@ class StoreManager {
|
|
|
115
115
|
getStorers(dataKey, excludedNode) {
|
|
116
116
|
return (0, getClosestNodes_1.getClosestNodes)(dataKey, [...this.options.getNeighbors(), this.options.localPeerDescriptor], {
|
|
117
117
|
maxCount: this.options.redundancyFactor,
|
|
118
|
-
excludedNodeIds: excludedNode !== undefined ? new Set([(0, identifiers_1.
|
|
118
|
+
excludedNodeIds: excludedNode !== undefined ? new Set([(0, identifiers_1.toNodeId)(excludedNode)]) : undefined
|
|
119
119
|
});
|
|
120
120
|
}
|
|
121
121
|
async destroy() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StoreManager.js","sourceRoot":"","sources":["../../../../src/dht/store/StoreManager.ts"],"names":[],"mappings":";;;AACA,0CAAuC;AACvC,mDAM0B;AAE1B,
|
|
1
|
+
{"version":3,"file":"StoreManager.js","sourceRoot":"","sources":["../../../../src/dht/store/StoreManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { ServerCallContext } from '@protobuf-ts/runtime-rpc';
|
|
2
|
-
import { Empty } from '
|
|
3
|
-
import { DataEntry, PeerDescriptor, ReplicateDataRequest, StoreDataRequest, StoreDataResponse } from '
|
|
4
|
-
import { IStoreRpc } from '
|
|
2
|
+
import { Empty } from '../../../generated/google/protobuf/empty';
|
|
3
|
+
import { DataEntry, PeerDescriptor, ReplicateDataRequest, StoreDataRequest, StoreDataResponse } from '../../../generated/packages/dht/protos/DhtRpc';
|
|
4
|
+
import { IStoreRpc } from '../../../generated/packages/dht/protos/DhtRpc.server';
|
|
5
5
|
import { LocalDataStore } from './LocalDataStore';
|
|
6
6
|
import { DhtAddress } from '../../identifiers';
|
|
7
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;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.StoreRpcLocal = void 0;
|
|
4
4
|
const utils_1 = require("@streamr/utils");
|
|
5
|
-
const timestamp_1 = require("
|
|
5
|
+
const timestamp_1 = require("../../../generated/google/protobuf/timestamp");
|
|
6
6
|
const identifiers_1 = require("../../identifiers");
|
|
7
7
|
const logger = new utils_1.Logger(module);
|
|
8
8
|
class StoreRpcLocal {
|
|
@@ -12,7 +12,7 @@ class StoreRpcLocal {
|
|
|
12
12
|
}
|
|
13
13
|
async storeData(request) {
|
|
14
14
|
logger.trace('storeData()');
|
|
15
|
-
const key = (0, identifiers_1.
|
|
15
|
+
const key = (0, identifiers_1.toDhtAddress)(request.key);
|
|
16
16
|
const isLocalNodeStorer = this.isLocalNodeStorer(key);
|
|
17
17
|
this.options.localDataStore.storeEntry({
|
|
18
18
|
key: request.key,
|
|
@@ -36,7 +36,7 @@ class StoreRpcLocal {
|
|
|
36
36
|
if (wasStored) {
|
|
37
37
|
this.replicateDataToNeighbors(context.incomingSourceDescriptor, request.entry);
|
|
38
38
|
}
|
|
39
|
-
const key = (0, identifiers_1.
|
|
39
|
+
const key = (0, identifiers_1.toDhtAddress)(dataEntry.key);
|
|
40
40
|
if (!this.isLocalNodeStorer(key)) {
|
|
41
41
|
this.options.localDataStore.setAllEntriesAsStale(key);
|
|
42
42
|
}
|
|
@@ -47,7 +47,7 @@ class StoreRpcLocal {
|
|
|
47
47
|
return this.options.getStorers(dataKey).some((p) => (0, identifiers_1.areEqualPeerDescriptors)(p, this.options.localPeerDescriptor));
|
|
48
48
|
}
|
|
49
49
|
replicateDataToNeighbors(requestor, dataEntry) {
|
|
50
|
-
const dataKey = (0, identifiers_1.
|
|
50
|
+
const dataKey = (0, identifiers_1.toDhtAddress)(dataEntry.key);
|
|
51
51
|
const storers = this.options.getStorers(dataKey);
|
|
52
52
|
const isLocalNodePrimaryStorer = (0, identifiers_1.areEqualPeerDescriptors)(storers[0], this.options.localPeerDescriptor);
|
|
53
53
|
// If we are the closest to the data, get storageRedundancyFactor - 1 nearest node to the data, and
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StoreRpcLocal.js","sourceRoot":"","sources":["../../../../src/dht/store/StoreRpcLocal.ts"],"names":[],"mappings":";;;AACA,0CAA2D;AAE3D,
|
|
1
|
+
{"version":3,"file":"StoreRpcLocal.js","sourceRoot":"","sources":["../../../../src/dht/store/StoreRpcLocal.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { ReplicateDataRequest, StoreDataRequest } from '
|
|
2
|
-
import { StoreRpcClient } from '
|
|
1
|
+
import { ReplicateDataRequest, StoreDataRequest } from '../../../generated/packages/dht/protos/DhtRpc';
|
|
2
|
+
import { StoreRpcClient } from '../../../generated/packages/dht/protos/DhtRpc.client';
|
|
3
3
|
import { RpcRemote } from '../contact/RpcRemote';
|
|
4
4
|
export declare class StoreRpcRemote extends RpcRemote<StoreRpcClient> {
|
|
5
5
|
storeData(request: StoreDataRequest): Promise<void>;
|
|
6
|
-
replicateData(request: ReplicateDataRequest): Promise<void>;
|
|
6
|
+
replicateData(request: ReplicateDataRequest, connect: boolean): Promise<void>;
|
|
7
7
|
}
|
|
@@ -10,14 +10,17 @@ class StoreRpcRemote extends RpcRemote_1.RpcRemote {
|
|
|
10
10
|
await this.getClient().storeData(request, options);
|
|
11
11
|
}
|
|
12
12
|
catch (err) {
|
|
13
|
-
const to = (0, identifiers_1.
|
|
14
|
-
const from = (0, identifiers_1.
|
|
13
|
+
const to = (0, identifiers_1.toNodeId)(this.getPeerDescriptor());
|
|
14
|
+
const from = (0, identifiers_1.toNodeId)(this.getLocalPeerDescriptor());
|
|
15
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
15
16
|
throw new Error(`Could not store data to ${to} from ${from} ${err}`);
|
|
16
17
|
}
|
|
17
18
|
}
|
|
18
|
-
async replicateData(request) {
|
|
19
|
+
async replicateData(request, connect) {
|
|
19
20
|
const options = this.formDhtRpcOptions({
|
|
20
|
-
timeout: RpcRemote_1.EXISTING_CONNECTION_TIMEOUT
|
|
21
|
+
timeout: RpcRemote_1.EXISTING_CONNECTION_TIMEOUT,
|
|
22
|
+
notification: true,
|
|
23
|
+
connect
|
|
21
24
|
});
|
|
22
25
|
return this.getClient().replicateData(request, options);
|
|
23
26
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StoreRpcRemote.js","sourceRoot":"","sources":["../../../../src/dht/store/StoreRpcRemote.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"StoreRpcRemote.js","sourceRoot":"","sources":["../../../../src/dht/store/StoreRpcRemote.ts"],"names":[],"mappings":";;;AAAA,mDAA4C;AAM5C,oDAA6E;AAE7E,MAAa,cAAe,SAAQ,qBAAyB;IAEzD,KAAK,CAAC,SAAS,CAAC,OAAyB;QACrC,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAA;QACxC,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QACtD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,MAAM,EAAE,GAAG,IAAA,sBAAQ,EAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAA;YAC7C,MAAM,IAAI,GAAG,IAAA,sBAAQ,EAAC,IAAI,CAAC,sBAAsB,EAAE,CAAC,CAAA;YACpD,4EAA4E;YAC5E,MAAM,IAAI,KAAK,CAAC,2BAA2B,EAAE,SAAS,IAAI,IAAI,GAAG,EAAE,CAAC,CAAA;QACxE,CAAC;IACL,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,OAA6B,EAAE,OAAgB;QAC/D,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC;YACnC,OAAO,EAAE,uCAA2B;YACpC,YAAY,EAAE,IAAI;YAClB,OAAO;SACV,CAAC,CAAA;QACF,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC,aAAa,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;IAC3D,CAAC;CAEJ;AAvBD,wCAuBC"}
|
package/dist/src/exports.d.ts
CHANGED
|
@@ -4,7 +4,7 @@ export { RoutingRpcCommunicator } from './transport/RoutingRpcCommunicator';
|
|
|
4
4
|
export { Simulator, LatencyType } from './connection/simulator/Simulator';
|
|
5
5
|
export { SimulatorTransport } from './connection/simulator/SimulatorTransport';
|
|
6
6
|
export { getRandomRegion, getRegionDelayMatrix } from './connection/simulator/pings';
|
|
7
|
-
export { PeerDescriptor, Message, NodeType, DataEntry } from '
|
|
7
|
+
export { PeerDescriptor, Message, NodeType, DataEntry } from '../generated/packages/dht/protos/DhtRpc';
|
|
8
8
|
export { ITransport, TransportEvents } from './transport/ITransport';
|
|
9
9
|
export { ConnectionManager, ConnectionLocker, PortRange, TlsCertificate } from './connection/ConnectionManager';
|
|
10
10
|
export { ConnectionsView } from './connection/ConnectionsView';
|
|
@@ -22,4 +22,4 @@ export { ConnectionType } from './connection/IConnection';
|
|
|
22
22
|
export { ServiceID } from './types/ServiceID';
|
|
23
23
|
export { RingContacts } from './dht/contact/RingContactList';
|
|
24
24
|
export { createOutgoingHandshaker } from './connection/Handshaker';
|
|
25
|
-
export { DhtAddress, DhtAddressRaw,
|
|
25
|
+
export { DhtAddress, DhtAddressRaw, toDhtAddress, toDhtAddressRaw, randomDhtAddress, areEqualPeerDescriptors, toNodeId } from './identifiers';
|
package/dist/src/exports.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.toNodeId = exports.areEqualPeerDescriptors = exports.randomDhtAddress = exports.toDhtAddressRaw = exports.toDhtAddress = exports.createOutgoingHandshaker = exports.ConnectionType = exports.PendingConnection = exports.ManagedConnection = exports.WebsocketClientConnection = exports.DhtCallContext = exports.EXISTING_CONNECTION_TIMEOUT = exports.RpcRemote = exports.DefaultConnectorFacade = exports.ConnectionManager = exports.DataEntry = exports.NodeType = exports.Message = exports.PeerDescriptor = exports.getRegionDelayMatrix = exports.getRandomRegion = exports.SimulatorTransport = exports.LatencyType = exports.Simulator = exports.RoutingRpcCommunicator = exports.ListeningRpcCommunicator = exports.DhtNode = void 0;
|
|
4
4
|
var DhtNode_1 = require("./dht/DhtNode");
|
|
5
5
|
Object.defineProperty(exports, "DhtNode", { enumerable: true, get: function () { return DhtNode_1.DhtNode; } });
|
|
6
6
|
var ListeningRpcCommunicator_1 = require("./transport/ListeningRpcCommunicator");
|
|
@@ -15,7 +15,7 @@ Object.defineProperty(exports, "SimulatorTransport", { enumerable: true, get: fu
|
|
|
15
15
|
var pings_1 = require("./connection/simulator/pings");
|
|
16
16
|
Object.defineProperty(exports, "getRandomRegion", { enumerable: true, get: function () { return pings_1.getRandomRegion; } });
|
|
17
17
|
Object.defineProperty(exports, "getRegionDelayMatrix", { enumerable: true, get: function () { return pings_1.getRegionDelayMatrix; } });
|
|
18
|
-
var DhtRpc_1 = require("
|
|
18
|
+
var DhtRpc_1 = require("../generated/packages/dht/protos/DhtRpc");
|
|
19
19
|
Object.defineProperty(exports, "PeerDescriptor", { enumerable: true, get: function () { return DhtRpc_1.PeerDescriptor; } });
|
|
20
20
|
Object.defineProperty(exports, "Message", { enumerable: true, get: function () { return DhtRpc_1.Message; } });
|
|
21
21
|
Object.defineProperty(exports, "NodeType", { enumerable: true, get: function () { return DhtRpc_1.NodeType; } });
|
|
@@ -40,9 +40,9 @@ Object.defineProperty(exports, "ConnectionType", { enumerable: true, get: functi
|
|
|
40
40
|
var Handshaker_1 = require("./connection/Handshaker");
|
|
41
41
|
Object.defineProperty(exports, "createOutgoingHandshaker", { enumerable: true, get: function () { return Handshaker_1.createOutgoingHandshaker; } });
|
|
42
42
|
var identifiers_1 = require("./identifiers");
|
|
43
|
-
Object.defineProperty(exports, "
|
|
44
|
-
Object.defineProperty(exports, "
|
|
45
|
-
Object.defineProperty(exports, "
|
|
43
|
+
Object.defineProperty(exports, "toDhtAddress", { enumerable: true, get: function () { return identifiers_1.toDhtAddress; } });
|
|
44
|
+
Object.defineProperty(exports, "toDhtAddressRaw", { enumerable: true, get: function () { return identifiers_1.toDhtAddressRaw; } });
|
|
45
|
+
Object.defineProperty(exports, "randomDhtAddress", { enumerable: true, get: function () { return identifiers_1.randomDhtAddress; } });
|
|
46
46
|
Object.defineProperty(exports, "areEqualPeerDescriptors", { enumerable: true, get: function () { return identifiers_1.areEqualPeerDescriptors; } });
|
|
47
|
-
Object.defineProperty(exports, "
|
|
47
|
+
Object.defineProperty(exports, "toNodeId", { enumerable: true, get: function () { return identifiers_1.toNodeId; } });
|
|
48
48
|
//# sourceMappingURL=exports.js.map
|
package/dist/src/exports.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exports.js","sourceRoot":"","sources":["../../src/exports.ts"],"names":[],"mappings":";;;AAAA,yCAAsE;AAA7D,kGAAA,OAAO,OAAA;AAChB,iFAA+E;AAAtE,oIAAA,wBAAwB,OAAA;AACjC,6EAA2E;AAAlE,gIAAA,sBAAsB,OAAA;AAC/B,8DAAyE;AAAhE,sGAAA,SAAS,OAAA;AAAE,wGAAA,WAAW,OAAA;AAC/B,gFAA8E;AAArE,wHAAA,kBAAkB,OAAA;AAC3B,sDAAoF;AAA3E,wGAAA,eAAe,OAAA;AAAE,6GAAA,oBAAoB,OAAA;AAC9C,
|
|
1
|
+
{"version":3,"file":"exports.js","sourceRoot":"","sources":["../../src/exports.ts"],"names":[],"mappings":";;;AAAA,yCAAsE;AAA7D,kGAAA,OAAO,OAAA;AAChB,iFAA+E;AAAtE,oIAAA,wBAAwB,OAAA;AACjC,6EAA2E;AAAlE,gIAAA,sBAAsB,OAAA;AAC/B,8DAAyE;AAAhE,sGAAA,SAAS,OAAA;AAAE,wGAAA,WAAW,OAAA;AAC/B,gFAA8E;AAArE,wHAAA,kBAAkB,OAAA;AAC3B,sDAAoF;AAA3E,wGAAA,eAAe,OAAA;AAAE,6GAAA,oBAAoB,OAAA;AAC9C,kEAAsG;AAA7F,wGAAA,cAAc,OAAA;AAAE,iGAAA,OAAO,OAAA;AAAE,kGAAA,QAAQ,OAAA;AAAE,mGAAA,SAAS,OAAA;AAErD,oEAA+G;AAAtG,sHAAA,iBAAiB,OAAA;AAG1B,gEAAqE;AAA5D,yHAAA,sBAAsB,OAAA;AAE/B,qDAAgF;AAAvE,sGAAA,SAAS,OAAA;AAAE,wHAAA,2BAA2B,OAAA;AAE/C,gEAA8D;AAArD,gHAAA,cAAc,OAAA;AACvB,sGAAgG;AAAvF,0IAAA,yBAAyB,OAAA;AAClC,oEAAkE;AAAzD,sHAAA,iBAAiB,OAAA;AAC1B,oEAAkE;AAAzD,sHAAA,iBAAiB,OAAA;AAE1B,wDAAyD;AAAhD,6GAAA,cAAc,OAAA;AAGvB,sDAAkE;AAAzD,sHAAA,wBAAwB,OAAA;AACjC,6CAQsB;AALlB,2GAAA,YAAY,OAAA;AACZ,8GAAA,eAAe,OAAA;AACf,+GAAA,gBAAgB,OAAA;AAChB,sHAAA,uBAAuB,OAAA;AACvB,uGAAA,QAAQ,OAAA"}
|
|
@@ -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,4 +1,4 @@
|
|
|
1
1
|
import { ConnectionType } from '../connection/IConnection';
|
|
2
|
-
import { ConnectivityMethod, PeerDescriptor } from '
|
|
2
|
+
import { ConnectivityMethod, PeerDescriptor } from '../../generated/packages/dht/protos/DhtRpc';
|
|
3
3
|
export declare const canOpenConnectionFromBrowser: (websocketServer: ConnectivityMethod) => boolean;
|
|
4
4
|
export declare const expectedConnectionType: (localPeerDescriptor: PeerDescriptor, remotePeerDescriptor: PeerDescriptor) => ConnectionType;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.expectedConnectionType = exports.canOpenConnectionFromBrowser = void 0;
|
|
4
4
|
const IConnection_1 = require("../connection/IConnection");
|
|
5
|
-
const DhtRpc_1 = require("
|
|
5
|
+
const DhtRpc_1 = require("../../generated/packages/dht/protos/DhtRpc");
|
|
6
6
|
const AddressTools_1 = require("./AddressTools");
|
|
7
7
|
const canOpenConnectionFromBrowser = (websocketServer) => {
|
|
8
8
|
const hasPrivateAddress = ((websocketServer.host === 'localhost') || (0, AddressTools_1.isPrivateIPv4)(websocketServer.host));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Connectivity.js","sourceRoot":"","sources":["../../../src/helpers/Connectivity.ts"],"names":[],"mappings":";;;AAAA,2DAA0D;AAC1D,
|
|
1
|
+
{"version":3,"file":"Connectivity.js","sourceRoot":"","sources":["../../../src/helpers/Connectivity.ts"],"names":[],"mappings":";;;AAAA,2DAA0D;AAC1D,uEAAyG;AACzG,iDAA8C;AAEvC,MAAM,4BAA4B,GAAG,CAAC,eAAmC,EAAW,EAAE;IACzF,MAAM,iBAAiB,GAAG,CAAC,CAAC,eAAe,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI,IAAA,4BAAa,EAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAA;IACzG,OAAO,eAAe,CAAC,GAAG,IAAI,iBAAiB,CAAA;AACnD,CAAC,CAAA;AAHY,QAAA,4BAA4B,gCAGxC;AAEM,MAAM,sBAAsB,GAAG,CAAC,mBAAmC,EAAE,oBAAoC,EAAkB,EAAE;IAChI,IAAI,oBAAoB,CAAC,SAAS;WAC3B,CAAC,mBAAmB,CAAC,IAAI,KAAK,iBAAQ,CAAC,OAAO,IAAI,IAAA,oCAA4B,EAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;QACrH,OAAO,4BAAc,CAAC,gBAAgB,CAAA;IAC1C,CAAC;SAAM,IAAI,mBAAmB,CAAC,SAAS;WACjC,CAAC,oBAAoB,CAAC,IAAI,KAAK,iBAAQ,CAAC,OAAO,IAAI,IAAA,oCAA4B,EAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;QACrH,OAAO,4BAAc,CAAC,gBAAgB,CAAA;IAC1C,CAAC;IACD,OAAO,4BAAc,CAAC,MAAM,CAAA;AAChC,CAAC,CAAA;AATY,QAAA,sBAAsB,0BASlC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { DhtAddress } from '../identifiers';
|
|
2
|
-
import { ConnectivityResponse, PeerDescriptor } from '
|
|
2
|
+
import { ConnectivityResponse, PeerDescriptor } from '../../generated/packages/dht/protos/DhtRpc';
|
|
3
3
|
export declare const createPeerDescriptor: (connectivityResponse: ConnectivityResponse, region: number, nodeId?: DhtAddress) => PeerDescriptor;
|
|
@@ -9,7 +9,7 @@ const crypto_1 = __importDefault(require("crypto"));
|
|
|
9
9
|
const isBrowserEnvironment_1 = require("../helpers/browser/isBrowserEnvironment");
|
|
10
10
|
const createPeerDescriptorSignaturePayload_1 = require("../helpers/createPeerDescriptorSignaturePayload");
|
|
11
11
|
const identifiers_1 = require("../identifiers");
|
|
12
|
-
const DhtRpc_1 = require("
|
|
12
|
+
const DhtRpc_1 = require("../../generated/packages/dht/protos/DhtRpc");
|
|
13
13
|
const calculateNodeIdRaw = (ipAddress, privateKey) => {
|
|
14
14
|
// nodeId is calculated as
|
|
15
15
|
// concatenate(
|
|
@@ -31,7 +31,7 @@ const createPeerDescriptor = (connectivityResponse, region, nodeId) => {
|
|
|
31
31
|
const publicKey = crypto_1.default.randomBytes(20); // TODO calculate publicKey from privateKey
|
|
32
32
|
let nodeIdRaw;
|
|
33
33
|
if (nodeId !== undefined) {
|
|
34
|
-
nodeIdRaw = (0, identifiers_1.
|
|
34
|
+
nodeIdRaw = (0, identifiers_1.toDhtAddressRaw)(nodeId);
|
|
35
35
|
}
|
|
36
36
|
else {
|
|
37
37
|
nodeIdRaw = calculateNodeIdRaw(connectivityResponse.ipAddress, privateKey);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createPeerDescriptor.js","sourceRoot":"","sources":["../../../src/helpers/createPeerDescriptor.ts"],"names":[],"mappings":";;;;;;AAAA,0CAGuB;AACvB,oDAA2B;AAC3B,kFAA8E;AAC9E,0GAAsG;AACtG,
|
|
1
|
+
{"version":3,"file":"createPeerDescriptor.js","sourceRoot":"","sources":["../../../src/helpers/createPeerDescriptor.ts"],"names":[],"mappings":";;;;;;AAAA,0CAGuB;AACvB,oDAA2B;AAC3B,kFAA8E;AAC9E,0GAAsG;AACtG,gDAA2E;AAC3E,uEAImD;AAEnD,MAAM,kBAAkB,GAAG,CAAC,SAAiB,EAAE,UAAsB,EAAiB,EAAE;IACpF,2BAA2B;IAC3B,eAAe;IACf,iDAAiD;IACjD,8CAA8C;IAC9C,IAAI;IACJ,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAClC,UAAU,CAAC,aAAa,CAAC,SAAS,CAAC,CAAA;IACnC,MAAM,MAAM,GAAG,IAAA,YAAI,EAAC,UAAU,CAAC,CAAA;IAC/B,MAAM,SAAS,GAAG,IAAA,uBAAe,EAAC,UAAU,EAAE,UAAU,CAAC,CAAA;IACzD,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC;QAC5B,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,GAAG,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC;QAClD,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC;KAC7D,CAAC,CAAA;IACF,OAAO,SAAS,CAAA;AACpB,CAAC,CAAA;AAEM,MAAM,oBAAoB,GAAG,CAAC,oBAA0C,EAAE,MAAc,EAAE,MAAmB,EAAkB,EAAE;IACpI,MAAM,UAAU,GAAG,gBAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA;IACzC,MAAM,SAAS,GAAG,gBAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA,CAAE,2CAA2C;IACrF,IAAI,SAAwB,CAAA;IAC5B,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACvB,SAAS,GAAG,IAAA,6BAAe,EAAC,MAAM,CAAC,CAAA;IACvC,CAAC;SAAM,CAAC;QACJ,SAAS,GAAG,kBAAkB,CAAC,oBAAoB,CAAC,SAAS,EAAE,UAAU,CAAC,CAAA;IAC9E,CAAC;IACD,MAAM,GAAG,GAAmB;QACxB,MAAM,EAAE,SAAS;QACjB,IAAI,EAAE,IAAA,2CAAoB,GAAE,CAAC,CAAC,CAAC,iBAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,iBAAQ,CAAC,MAAM;QACjE,SAAS,EAAE,oBAAoB,CAAC,SAAS;QACzC,MAAM;QACN,SAAS;KACZ,CAAA;IACD,IAAI,oBAAoB,CAAC,SAAS,EAAE,CAAC;QACjC,GAAG,CAAC,SAAS,GAAG;YACZ,IAAI,EAAE,oBAAoB,CAAC,SAAS,CAAC,IAAI;YACzC,IAAI,EAAE,oBAAoB,CAAC,SAAS,CAAC,IAAI;YACzC,GAAG,EAAE,oBAAoB,CAAC,SAAS,CAAC,GAAG;SAC1C,CAAA;IACL,CAAC;IACD,GAAG,CAAC,SAAS,GAAG,IAAA,uBAAe,EAAC,IAAA,2EAAoC,EAAC,GAAG,CAAC,EAAE,UAAU,CAAC,CAAA;IACtF,OAAO,GAAG,CAAA;AACd,CAAC,CAAA;AAzBY,QAAA,oBAAoB,wBAyBhC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { PeerDescriptor } from '
|
|
1
|
+
import { PeerDescriptor } from '../../generated/packages/dht/protos/DhtRpc';
|
|
2
2
|
export declare const createPeerDescriptorSignaturePayload: (peerDescriptor: PeerDescriptor) => Uint8Array;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.createPeerDescriptorSignaturePayload = void 0;
|
|
4
|
-
const DhtRpc_1 = require("
|
|
4
|
+
const DhtRpc_1 = require("../../generated/packages/dht/protos/DhtRpc");
|
|
5
5
|
function convertUnsignedIntegerToBuffer(number) {
|
|
6
6
|
const buffer = Buffer.alloc(4);
|
|
7
7
|
buffer.writeUInt32BE(number);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createPeerDescriptorSignaturePayload.js","sourceRoot":"","sources":["../../../src/helpers/createPeerDescriptorSignaturePayload.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"createPeerDescriptorSignaturePayload.js","sourceRoot":"","sources":["../../../src/helpers/createPeerDescriptorSignaturePayload.ts"],"names":[],"mappings":";;;AAAA,uEAA+F;AAE/F,SAAS,8BAA8B,CAAC,MAAc;IAClD,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAC9B,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,CAAA;IAC5B,OAAO,MAAM,CAAA;AACjB,CAAC;AAEM,MAAM,oCAAoC,GAAG,CAAC,cAA8B,EAAc,EAAE;IAC/F,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAClC,MAAM,OAAO,GAAG;QACZ,cAAc,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,8BAA8B,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC;QAC3G,SAAS;QACT,cAAc,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,2BAAkB,CAAC,QAAQ,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC;QACtG,SAAS;QACT,cAAc,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,2BAAkB,CAAC,QAAQ,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC;QACtG,SAAS;QACT,cAAc,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,2BAAkB,CAAC,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC;QAClH,SAAS;QACT,cAAc,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,8BAA8B,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC;QAC/G,SAAS;QACT,cAAc,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,8BAA8B,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC;QACrH,SAAS;QACT,cAAc,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC;KACrG,CAAA;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;AACjC,CAAC,CAAA;AAlBY,QAAA,oCAAoC,wCAkBhD"}
|
|
@@ -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,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.protoClasses = void 0;
|
|
4
|
-
const DhtRpc_1 = require("
|
|
4
|
+
const DhtRpc_1 = require("../../generated/packages/dht/protos/DhtRpc");
|
|
5
5
|
exports.protoClasses = [
|
|
6
6
|
DhtRpc_1.ClosestPeersRequest,
|
|
7
7
|
DhtRpc_1.ClosestPeersResponse,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protoClasses.js","sourceRoot":"","sources":["../../../src/helpers/protoClasses.ts"],"names":[],"mappings":";;;AACA,
|
|
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) {
|