-
Wolfgang Welz authored
*
✨ GetNextCandidate selection added *🐛 Recompile salt.proto *♻️ Refactor peer IDs completely *🐛 Recompile proto sources *🚧 WIP *👌 renamed to sort *🚧 Return requested peers on request *✨ Kepp track how ofter a managed peer was verified *🔧 sort adapted to the new peer *🚧 Query verified peers for new peers *🚧 WIP *✅ Add manager tests *🍱 Add peering messages to protobuf *🎨 Make Salt methods consistent with Peer *✨ Handle peering messages *🚧 WIP *🐛 Add To filed to PeersRequest *✅ Add PeersRequest test *⚡ Adding PeersRequest benchmark *🎨 Move mpeer and helper functions to own file *🐛 Bump peer only once on reverification *🚧 WIP *🐛 *🚧 WIP *🐛 Increase buffer to prevent deadlocks *⚡ Remove unnecessary lock *✅ Add peering request test *✅ Make tests deterministic by triggering reverify *🚧 WIP *🔒 fixing concurrency issues *✅ testManager improved *🐛 Don't send PeeringResponse for invalid salt *🚧 WIP *🚧 WIP *📝 removed commented code *🚧 WIP *🚧 WIP * Neighbourhood manager (#11) *✨ GetNextCandidate selection added *🔒 fixing concurrency issues *✅ testManager improved *📝 removed commented code *🚧 WIP *🚧 WIP *🚧 WIP *🚧 WIP *✔️ Make TestAdd pass in neighborhood_test `Add` should do nothing if the neighborhood list is full. *✅ Improve TestSrvVerifyBoot *⬆️ Upgrade to go 1.13 *➖ Use testify instead of magiconair/properties *🚧 *🚧 WIP *🚧 WIP *🚧 WIP *🚧 WIP * Simulation (#14) *✨ clear rejection filter after refreshing the public salt *✨ clean rejection filter *✅ Add mpeer test *🎨 gofmt test *🎨 Remove ineffactual assignments *🔨 Trigger panic when index is out of bound in deletePeer *✅ Add selection test *✅ Add TestGetFurtherest and TestGetPeerIndex *✨ both salt updated at the same time and neighborhood dropped *🎨 Add node peering history for simulation *🚧 WIP *✨ added sim visualization *🔥 removed root handler *📝 added README *📝 updated README *➖ removed unused dependencies *🎨 Tidy go.mod *🚧 Work in progress *🚧 WIP *🚧 WIP *🚧 WIP *💄 improved start button *🚧 WIP *✨ added keyboard support for start *🚧 WIP *🚧 WIP *🚧 WIP *🚧 WIP *🚧 WIP *🚧 WIP *✨ added input parameters *📝 README updated *💄 gif updated *💄 figure updated *📝 updated *💄 updated gif * removed simulation metrics *📝 updated *📝 updated *♻️ Extract server from discovery and peering *🐛 Use golang/protobuf * Update README.md *♻️ Rename PeersRequest to DiscoveryRequest *✏️ Fixing typos *🎨 Move unused function to tests *♻️ The selection protocol depends on the discovery *✅ Make tests more robust when using -race *🔊 Improve logging *🎨 Remove unnecessary arguments *🐛 Fix data races *🐛 added timeout for simulated network *🎨 added loop to animation *♻️ rename neighborhood to selection *✨ adds initial salt and fixes simulation end *📝 visualizer enabled by default *✨ new parameter dropAll and improved python script *📝 updated README *📝 updated README *🐛 fix salt initialization *📝 added blogpost link *📝 Add badges to README *👷 Add Travis CI for tests *🚨 Correct formating *👷 Running golangci on Travis *🚨 Ignore return value of 'logger.Sync' *🚨 Remove unused functions *📝 Add link to license *🎨 Move simnetwork to transport *🎨 Use the complete network protocol in simulations *♻️ Do not export selection/manager *🔥 Remove gRPC transport layer *✅ Add UDP connection transport test *🚧 Implement the peer DB using Goshimmer database *➕ Use the local GoShimmer version *✨ Add support for a persistent database *✨ Persist private key of local peer in database *🐛 Set TTL for bootstrap peers *🚧 Use GoShimmer events *✨ Store the supported services in the local peer *📌 Use most current GoShimmer git version as a dep *➕ Switch to hive.go event package *🎨 Use correct module iotaledger/autopeering-sim *🐛 Provide dummy service in autopeering simulation *✨ adds service support in the selection *✨ adds peer discovered events *✨ adds GetIncomingNeighbors and GetOutgoingNeighbors *🐛 fixes out of bound error in splitNodeKey *✨ adds public IP support *🐛 fixes localhost *🐛 fixes localhost parsing *🔧 changes selection loop to 1s *🔊 switches from fmt.Println to log.Debug *🔧 increases maxKnown to 1000 and always triggers discovered peer *✨ adds PeerDeleted event *🚧 moves PeerDeleted event into deletePeer *✨ adds config paramters for the peer discovery *✨ adds config parameters to neighbor selection *✨ enable/disable inbound/outbound selection *💡 Improve Godoc comments *✨ modifies disabled outbound selection *🐛 fixes bug with disabling the selection *➖ removes getMyIP() from server *🔇 removes some debugging logs *🚧 Introduce services - Each peer now comes with a set of services - Local peer is a proper peer - Services are exchanged during Pong and are available for all verified peers *🐛 fixes GetVerifiedPeer *✨ adds gossip key to the service *🔇 removes debugging logs *✅ Add test for GetVerifiedPeer *🐛 Fix main *🎨 Add localNetwork to Protocol *🐛 Add new but verified peers to the manager *🔧 changes configurable parameters *🐛 fixes DiscoveryRequest field sequence *🍱 Regenerate proto files *🎨 Cleanup parameters *🐛 Fix potential race condition *🔇 Reduce logging verbosity *✅ Add test for selection+discover *✨ Return net.Addr in Transport *🐛 Remove inbound/outbound switches completely *🔊 Improve logging *🔊 Fix peerdb logs *🐛 Fix peer updating *✅ Make TestProtFull more robust *🎨 Make queryInterval a parameter *🔊 Improve loggind during querying *🐛 Trigger PeerDiscovered only for active peers *🎨 Cleanup protocol tests *✅ Add discovery test on protocol level *🎨 Rename maxVerified to maxManaged *🔧 Increase default query interval *🎨 Improve discover benchmarks *✅ Fix manager tests *🎨 Do not use bugged assert.Eventually *🚨 Fix linter warnings in server *🚨 Remove unused parameters *🎨 Make transport work on slices of bytes *✏️ Fix typo in comments *🚨 Fix linter warnings *🎨 UpdateService accepts two strings *✅ Add test that services are received in discover *✨ adds required services *🎨 Handle closed connections consistently *🎨 Code cleanup *🐛 fixes DropPeer *🎨 improves debug messages *🔊 Log errors during reverification *🔊 Log packet size * refactor: remove unused files * refactor: use internal autopeering package Co-authored-by:Angelo Capossele <angelocapossele@gmail.com> Co-authored-by:
jkrvivian <jkrvivian@gmail.com>
Wolfgang Welz authored*
✨ GetNextCandidate selection added *🐛 Recompile salt.proto *♻️ Refactor peer IDs completely *🐛 Recompile proto sources *🚧 WIP *👌 renamed to sort *🚧 Return requested peers on request *✨ Kepp track how ofter a managed peer was verified *🔧 sort adapted to the new peer *🚧 Query verified peers for new peers *🚧 WIP *✅ Add manager tests *🍱 Add peering messages to protobuf *🎨 Make Salt methods consistent with Peer *✨ Handle peering messages *🚧 WIP *🐛 Add To filed to PeersRequest *✅ Add PeersRequest test *⚡ Adding PeersRequest benchmark *🎨 Move mpeer and helper functions to own file *🐛 Bump peer only once on reverification *🚧 WIP *🐛 *🚧 WIP *🐛 Increase buffer to prevent deadlocks *⚡ Remove unnecessary lock *✅ Add peering request test *✅ Make tests deterministic by triggering reverify *🚧 WIP *🔒 fixing concurrency issues *✅ testManager improved *🐛 Don't send PeeringResponse for invalid salt *🚧 WIP *🚧 WIP *📝 removed commented code *🚧 WIP *🚧 WIP * Neighbourhood manager (#11) *✨ GetNextCandidate selection added *🔒 fixing concurrency issues *✅ testManager improved *📝 removed commented code *🚧 WIP *🚧 WIP *🚧 WIP *🚧 WIP *✔️ Make TestAdd pass in neighborhood_test `Add` should do nothing if the neighborhood list is full. *✅ Improve TestSrvVerifyBoot *⬆️ Upgrade to go 1.13 *➖ Use testify instead of magiconair/properties *🚧 *🚧 WIP *🚧 WIP *🚧 WIP *🚧 WIP * Simulation (#14) *✨ clear rejection filter after refreshing the public salt *✨ clean rejection filter *✅ Add mpeer test *🎨 gofmt test *🎨 Remove ineffactual assignments *🔨 Trigger panic when index is out of bound in deletePeer *✅ Add selection test *✅ Add TestGetFurtherest and TestGetPeerIndex *✨ both salt updated at the same time and neighborhood dropped *🎨 Add node peering history for simulation *🚧 WIP *✨ added sim visualization *🔥 removed root handler *📝 added README *📝 updated README *➖ removed unused dependencies *🎨 Tidy go.mod *🚧 Work in progress *🚧 WIP *🚧 WIP *🚧 WIP *💄 improved start button *🚧 WIP *✨ added keyboard support for start *🚧 WIP *🚧 WIP *🚧 WIP *🚧 WIP *🚧 WIP *🚧 WIP *✨ added input parameters *📝 README updated *💄 gif updated *💄 figure updated *📝 updated *💄 updated gif * removed simulation metrics *📝 updated *📝 updated *♻️ Extract server from discovery and peering *🐛 Use golang/protobuf * Update README.md *♻️ Rename PeersRequest to DiscoveryRequest *✏️ Fixing typos *🎨 Move unused function to tests *♻️ The selection protocol depends on the discovery *✅ Make tests more robust when using -race *🔊 Improve logging *🎨 Remove unnecessary arguments *🐛 Fix data races *🐛 added timeout for simulated network *🎨 added loop to animation *♻️ rename neighborhood to selection *✨ adds initial salt and fixes simulation end *📝 visualizer enabled by default *✨ new parameter dropAll and improved python script *📝 updated README *📝 updated README *🐛 fix salt initialization *📝 added blogpost link *📝 Add badges to README *👷 Add Travis CI for tests *🚨 Correct formating *👷 Running golangci on Travis *🚨 Ignore return value of 'logger.Sync' *🚨 Remove unused functions *📝 Add link to license *🎨 Move simnetwork to transport *🎨 Use the complete network protocol in simulations *♻️ Do not export selection/manager *🔥 Remove gRPC transport layer *✅ Add UDP connection transport test *🚧 Implement the peer DB using Goshimmer database *➕ Use the local GoShimmer version *✨ Add support for a persistent database *✨ Persist private key of local peer in database *🐛 Set TTL for bootstrap peers *🚧 Use GoShimmer events *✨ Store the supported services in the local peer *📌 Use most current GoShimmer git version as a dep *➕ Switch to hive.go event package *🎨 Use correct module iotaledger/autopeering-sim *🐛 Provide dummy service in autopeering simulation *✨ adds service support in the selection *✨ adds peer discovered events *✨ adds GetIncomingNeighbors and GetOutgoingNeighbors *🐛 fixes out of bound error in splitNodeKey *✨ adds public IP support *🐛 fixes localhost *🐛 fixes localhost parsing *🔧 changes selection loop to 1s *🔊 switches from fmt.Println to log.Debug *🔧 increases maxKnown to 1000 and always triggers discovered peer *✨ adds PeerDeleted event *🚧 moves PeerDeleted event into deletePeer *✨ adds config paramters for the peer discovery *✨ adds config parameters to neighbor selection *✨ enable/disable inbound/outbound selection *💡 Improve Godoc comments *✨ modifies disabled outbound selection *🐛 fixes bug with disabling the selection *➖ removes getMyIP() from server *🔇 removes some debugging logs *🚧 Introduce services - Each peer now comes with a set of services - Local peer is a proper peer - Services are exchanged during Pong and are available for all verified peers *🐛 fixes GetVerifiedPeer *✨ adds gossip key to the service *🔇 removes debugging logs *✅ Add test for GetVerifiedPeer *🐛 Fix main *🎨 Add localNetwork to Protocol *🐛 Add new but verified peers to the manager *🔧 changes configurable parameters *🐛 fixes DiscoveryRequest field sequence *🍱 Regenerate proto files *🎨 Cleanup parameters *🐛 Fix potential race condition *🔇 Reduce logging verbosity *✅ Add test for selection+discover *✨ Return net.Addr in Transport *🐛 Remove inbound/outbound switches completely *🔊 Improve logging *🔊 Fix peerdb logs *🐛 Fix peer updating *✅ Make TestProtFull more robust *🎨 Make queryInterval a parameter *🔊 Improve loggind during querying *🐛 Trigger PeerDiscovered only for active peers *🎨 Cleanup protocol tests *✅ Add discovery test on protocol level *🎨 Rename maxVerified to maxManaged *🔧 Increase default query interval *🎨 Improve discover benchmarks *✅ Fix manager tests *🎨 Do not use bugged assert.Eventually *🚨 Fix linter warnings in server *🚨 Remove unused parameters *🎨 Make transport work on slices of bytes *✏️ Fix typo in comments *🚨 Fix linter warnings *🎨 UpdateService accepts two strings *✅ Add test that services are received in discover *✨ adds required services *🎨 Handle closed connections consistently *🎨 Code cleanup *🐛 fixes DropPeer *🎨 improves debug messages *🔊 Log errors during reverification *🔊 Log packet size * refactor: remove unused files * refactor: use internal autopeering package Co-authored-by:Angelo Capossele <angelocapossele@gmail.com> Co-authored-by:
jkrvivian <jkrvivian@gmail.com>