All notable changes to mainline dht will be documented in this file.
4.2.0 - 2024-12-13
- Make MutableItem de/serializable (mikedilger)
4.1.0 - 2024-11-29
- Export
errors
module containingPutError
as a part of the response ofRpc::put
. Dht::find_node()
andAsyncDht::find_node()
to find the closest nodes to a certain target.Dht::info()
andAsyncDht::info()
some internal information about the node from one method.Info::dht_size_estimate
to get the ongoing dht size estimate resulting from watching results of all queries.Info::id
to get the Id of the node.measure_dht
example to estimate the DHT size.
- Removed all internal panic
#![deny(clippy::unwrap_used)]
. Testnet::new(size)
returns aResult<Testnet>
.Dht::local_addr()
andAsyncDht::local_addr()
replaced with::info()
.Dht::shutdown()
andAsyncDht::shutdown()
are now idempotent, and returns()
.Rpc::drop
usestracing::debug!()
to log dropping the Rpc.Id::as_bytes()
instead of exposing internalbytes
property.- Replace crate
Error
with more granular errors. - Replace Flume's
RecvError
withexpect()
message, since the sender should never be dropped to soon. DhtWasShutdown
error is a standalone error.InvalidIdSize
error is a standalone error.- Rename
DhtSettings
toSettings
- Rename
DhtServer
toDefaultServer
Dht::get_immutable()
andAsyncDht::get_immutable()
returnResult<Option<bytes::Bytes>, DhtWasShutdown>
Node
fields are now all private, withid()
andaddress()
getters.- Changed
Settings
to be a the Builder, and make fields private. - Replaced
Rpc::new()
withSettings::build_rpc()
. - Update the client version from
RS01
toRS04
- Removed
mainline::error::Error
andmainline::error::Result
.