Skip to content

Latest commit

 

History

History
183 lines (134 loc) · 6.15 KB

CHANGELOG.md

File metadata and controls

183 lines (134 loc) · 6.15 KB

Changelog

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

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

0.7.0 - 2024-10-21

Added

  • Add Peer::to_route_table API
  • Add Peer:send_to_peers API
  • Add max_udp_len configuration parameter
  • Add range checks to MTU (between 1296 and 8192)
  • Add network version to handshake messages
  • Add Ray-ID to MessageInfo for message tracking
  • Add warning when discarding incomplete messages
  • Add tracing when broadcasting to an eclipsed network

Fixed

  • Fix raptorQ cache default config
  • Fix ObjectTransmissionInformation deserialization
  • Fix duplicate processing for messages with different RaptorQ configurations
  • Fix idle nodes removal on maintainance
  • Fix find_new_nodes to query the proper buckets

Changed

  • Change the EncodedChunk UUID generation (aka RaptorqHeader)
  • Change raptorq dependency from 1.6 to 2.0
  • Change UDP sender to raise error if timeout`

0.6.1 - 2024-04-10

Added

  • Add BucketConfig::min_peers in configuration #135

Changed

  • Change 'need_bootstrappers' to have dinamically threshold #135
  • Change BinaryID::from_nonce to return result #136
  • Change maintainer to ping nodes while removal #138

0.6.0 - 2023-11-01

Added

  • Add new facade function new to creating RwLock based on feature flag #94
  • Add NetworkId in configuration #123

Changed

  • Change RwLock API to support diagnostics feature flag #94
  • Change network wire encoding to support NetworkId #123

[0.5.0] - 2023-05-17

Added

  • Add network blocklist implementation #117

Changed

  • Change Peer::new to return a Result #115
  • Change blake2 dependency from 0.9 to 0.10 #115

0.4.1 - 2022-07-27

Added

  • Remove idle nodes during bucket mantainance #108

Fixed

  • Use provided nonce instead of regenerate it #110
  • Network bootstrap after being disconnected #112

0.4.0 - 2022-07-06

Added

  • Add kadcast::Config #96
  • Add Peer::alive_nodes(amount) to return random alive socket_addr #103

Removed

  • PeerBuilder in favor of Peer::new()

Fixed

  • Stalled peer bootstrap #97 #99
  • Dupemap cache expiring #101

0.3.0 - 2022-01-07

Added

  • Add network transport configuration #72 #76
  • Add recursive NetworkDiscovery configuration #78
  • Add internal channel capacity configuration #78
  • Add configurable FEC redundancy #82
  • Add configurable UDP send interval #83
  • Add UDP network tweak configuration [#86]
  • Add dedicated tokio task to handle and decode chunks #87
  • Add logs to pending RwLock #92

Fixed

  • Deadlock in RWLock.write() #80
  • Preserve propagation in some edge-corner cases
  • Messages from buckets full are correctly handled
  • Empty payload NodesMessage decoding #90

0.2.0 - 2021-12-16

Added

  • Add auto_propagate flag to Peer #57
  • Add optional height parameter to broadcast method #57
  • Add send method to public API #58
  • Add metadata to on_message callback #59
  • Add listen_address parameter #69
  • Add the auto prune of expired items in RaptorQ cache #68

Changed

  • Change on_message callback into a trait #63

Fixed

  • Fix build with tonic dependency #60

0.1.0 - 2021-10-29

Added

  • Kadcast Network protocol implementation
  • RaptorQ as Forward Error Correction.
  • Examples in example dir