-
Notifications
You must be signed in to change notification settings - Fork 4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Decentralized Signalling #618
Commits on Dec 4, 2023
-
feat:
NodeGraph
refactored with:1. `NodeGraph.getOldestNode` is replaced with `NodeGraph.getBucket` with additional optional`limit` parameter - update all tests 2. `NodeGraph.setNode` now respects the `NodeGraph.nodeBucketLimit` and will throw `ErrorNodeGraphBucketLimit` if it goes over the limit when a new node is being set. 3. The `NodeGraph.nodeBucketLimit` is no longer hardcoded, it can be set during creation/construction. 4. Removed debug logs from `NodeGraph` as these shouldn't be needed after behaviour is verified. 5. Added `lastUpdated` parameter to `NodeGraph.setNode`, allowing one to pass down last updated time from a higher context, and the ability to get rid of sleeps by manually setting the time. It defaults to `utils.getUnixtime()`. 6. Removed `utils.sleep` usage in `NodeGraph.test.ts` and now all tests execute much faster.
Configuration menu - View commit details
-
Copy full SHA for f6f45f5 - Browse repository at this point
Copy the full SHA f6f45f5View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6f9d7d8 - Browse repository at this point
Copy the full SHA 6f9d7d8View commit details -
feat: refactored
NodeConnectionManager
[ci skip]
Configuration menu - View commit details
-
Copy full SHA for 03cd4af - Browse repository at this point
Copy the full SHA 03cd4afView commit details -
Configuration menu - View commit details
-
Copy full SHA for df580c7 - Browse repository at this point
Copy the full SHA df580c7View commit details -
Configuration menu - View commit details
-
Copy full SHA for 274ba42 - Browse repository at this point
Copy the full SHA 274ba42View commit details -
Configuration menu - View commit details
-
Copy full SHA for be196d6 - Browse repository at this point
Copy the full SHA be196d6View commit details -
Configuration menu - View commit details
-
Copy full SHA for f88e281 - Browse repository at this point
Copy the full SHA f88e281View commit details -
small name and commentary updates to `NodeGraph` [ci skip]
Configuration menu - View commit details
-
Copy full SHA for 62a123e - Browse repository at this point
Copy the full SHA 62a123eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 82c058e - Browse repository at this point
Copy the full SHA 82c058eView commit details -
feat: implementing
findNode
logicThis includes creating a `connectionsQueue` utility class for coordinating rate limits and shared queues between the direct connection loop and the signalled connection loop. The two loops run concurrently while sharing found data between each other. When the connection is found, any pending connections are cancelled and awaited for clean up. [ci skip]
Configuration menu - View commit details
-
Copy full SHA for 21df5d7 - Browse repository at this point
Copy the full SHA 21df5d7View commit details -
Configuration menu - View commit details
-
Copy full SHA for ff41815 - Browse repository at this point
Copy the full SHA ff41815View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7c54aa1 - Browse repository at this point
Copy the full SHA 7c54aa1View commit details -
fix: using a shorter
local
timeout for each connection in the `find……Node` loop Previously it used the timeout provided for the whole `findNode` operations. This means that a failing connection would take up the whole timeout. [ci skip]
Configuration menu - View commit details
-
Copy full SHA for c55c39c - Browse repository at this point
Copy the full SHA c55c39cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 81cc0b8 - Browse repository at this point
Copy the full SHA 81cc0b8View commit details -
feat: timeout time for idle connection scales with node closeness
closest nodes timeout after 2 hours, furthest after 1 min. [ci skip]
Configuration menu - View commit details
-
Copy full SHA for 2d058d7 - Browse repository at this point
Copy the full SHA 2d058d7View commit details -
feat: connections are now periodically re-established
[ci skip] wip: fixing delay names [ci skip]
Configuration menu - View commit details
-
Copy full SHA for cf5741f - Browse repository at this point
Copy the full SHA cf5741fView commit details -
feat: re-implemented
MDNS
intoNodeManager
Also added some basic multi-connection logic to `NodeConnectionManager` [ci skip]
Configuration menu - View commit details
-
Copy full SHA for ebe6377 - Browse repository at this point
Copy the full SHA ebe6377View commit details -
Configuration menu - View commit details
-
Copy full SHA for b0772be - Browse repository at this point
Copy the full SHA b0772beView commit details -
Configuration menu - View commit details
-
Copy full SHA for 37ef800 - Browse repository at this point
Copy the full SHA 37ef800View commit details