Skip to content

Latest commit

 

History

History
122 lines (78 loc) · 4.96 KB

CHANGELOG.md

File metadata and controls

122 lines (78 loc) · 4.96 KB

Changelog

All notable changes to this module will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[Unreleased]

[0.0.0.18] - 2023-01-11

  • Add a lock to the mempool to avoid parallel messages which has caused the node to crash in the past

[0.0.0.17] - 2023-01-10

  • Updated module constructor to accept a bus and not a runtimeMgr anymore
  • Registering module with the bus via RegisterModule method
  • Updated tests and mocks accordingly
  • Sorting validatorIds in testRainTreeCalls

[0.0.0.16] - 2023-01-09

  • Added missing Close() call to persistenceReadContext

[0.0.0.15] - 2023-01-03

  • Refactored AddrBookProvider to support multiple implementations
  • Added CurrentHeightProvider
  • Dependency injection of the aforementioned provider into the module creation (used by the debug-client)
  • Updated implementation to use the providers
  • Updated tests and mocks

[0.0.0.14] - 2023-01-03

  • ActorsToAddrBook now skips actors that are not validators since they don't have a serviceUrl generic parameter

[0.0.0.13] - 2022-12-21

  • Updated to use the new centralized config and genesis handling
  • Updated to use the new Actor struct under coreTypes
  • Updated tests and mocks
  • Added missing max_mempool_count in config (it was causing P2P instabilities in LocalNet)

[0.0.0.12] - 2022-12-16

  • ValidatorMapToAddrBook renamed to ActorToAddrBook
  • ValidatorToNetworkPeer renamed to ActorToNetworkPeer

[0.0.0.11] - 2022-12-15

  • Bugfix for [#401]
  • Fixed typo in 'peers_manager.go'

[0.0.0.10] - 2022-12-14

  • mempool cap is now configurable via P2PConfig. Tests implement the mock accordingly.
  • Introduced the concept of a addrbookProvider that abstracts the fetching and the mapping from Actor to NetworkPeer
  • Temporary hack to allow access to the addrBook to the debug client (will be removed in an upcoming PR already in the works for issues #203 and #331)
  • Transport related functions are now in the transport package
  • Updated tests to source the addrBook from the addrbookProvider and therefore Persistence
  • Updated Raintree network constructur with dependency injection
  • Updated stdNetwork constructur with dependency injection
  • Improved documentation for the peersManager

[0.0.0.9] - 2022-12-04

  • Raintree mempool cannot grow unbounded anymore. It's now bounded by a constant limit and when new nonces are inserted the oldest ones are removed.
  • Raintree is now capable of fetching the address book for a previous height and to instantiate an ephemeral peersManager with it.

[0.0.0.8] - 2022-11-14

  • Removed topic from messaging

[0.0.0.7] - 2022-10-24

[0.0.0.6] - 2022-10-20

  • Add a telemetry send event within the context RainTree network module that is triggered during network writes
  • Change the RainTree testing framework counting method to simulate real reads/writes from the network
  • Improve documentation related to the RainTree testing framework & how the counters are computed

[0.0.0.5] - 2022-10-12

#235 Config and genesis handling

  • Updated to use RuntimeMgr
  • Updated tests and mocks
  • Removed some cross-module dependencies

[0.0.0.4] - 2022-10-06

  • Don't ignore the exit code of m.Run() in the unit tests

[0.0.0.3] - 2022-09-15

[TECHDEBT] AddrBook management optimization and refactoring #246

  • Added peersManager and target in order to abstract away and eliminate redundant computations
  • Refactored debug logging in getTarget to print first and second target on the same line
  • Refactored AddPeerToAddrBook to use an event-driven approach in order to leverage sorted data structures
  • Added RemovePeerToAddrBook making use of the same pattern
  • Improved performance of AddPeerToAddrBook and RemovePeerToAddrBook by making the implementations O(n)
  • Updated stdnetwork to use a map instead of a slice

[0.0.0.2] - 2022-08-25

Encapsulate structures previously in shared #163

  • Ensured proto structures implement shared interfaces
  • P2PConfig uses shared interfaces in order to accept MockP2PConfig in test_artifacts
  • Moved connection_type to bool for simplicity (need to figure out how to do Enums without sharing the structure)

[0.0.0.1] - 2022-07-26

  • Deprecated old p2p for pre2p raintree

[0.0.0.0] - 2022-06-16

  • RainTree first iteration in Pre2P module (no cleanup or redundancy)