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
- 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
- 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
- Change the EncodedChunk UUID generation (aka RaptorqHeader)
- Change
raptorq
dependency from1.6
to2.0
- Change UDP sender to raise error if timeout`
0.6.1 - 2024-04-10
- Add
BucketConfig::min_peers
in configuration #135
- 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
- Add new facade function
new
to creatingRwLock
based on feature flag #94 - Add
NetworkId
in configuration #123
- Change
RwLock
API to support diagnostics feature flag #94 - Change network wire encoding to support
NetworkId
#123
- Add network blocklist implementation #117
0.4.1 - 2022-07-27
- Remove idle nodes during bucket mantainance #108
0.4.0 - 2022-07-06
PeerBuilder
in favor ofPeer::new()
0.3.0 - 2022-01-07
- 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
- 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
- Add
auto_propagate
flag to Peer #57 - Add optional
height
parameter tobroadcast
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
- Change
on_message
callback into a trait #63
- Fix build with
tonic
dependency #60
0.1.0 - 2021-10-29
- Kadcast Network protocol implementation
- RaptorQ as Forward Error Correction.
- Examples in
example
dir