- feat: Add reconnect option to address book. PR 356
- fix: remove expect when session failed to get next block.
- chore: bump rust-version to 1.83.
- feat: Add
Ipfs::send_response
and use request id in request stream. PR 348
- fix: perform correct condition check when enabling request-response behaviour.
- chore: add
Debug
derive toRequestResponseConfig
. - chore: update thiserror dep.
- feat: Add Executor trait and impl for tokio and wasm-bindgen-futures.
- refactor: return
ConnectionId
when establishing connection.
- feat: Add request-response functionality. PR 339
- refactor: provide topic in pubsub event. If a topic filter is supplied, the topic will be excluded from the event. PR 337
- feat: Reimplement ConnectionEvents and PeerConnectionEvents stream via
Ipfs::{connection_events, peer_connection_events}
. PR 320
- fix: enable "wasm-bindgen" feature for
instant
when building wasm32 target.
- chore: Cleanup Keystore logic and implementation. PR 222
- feat: Add {Into}AddPeerOpt. PR 226
- refactor: Simplify bitswap WantSession. PR 234
- chore: Use default handler in bitswap behaviour. PR 235
- feat: Add AddPeerOpt::{set_keepalive, keepalive, can_keep_alive). PR 240
- feat: Add IntoStreamProtocol, replacing StreamProtocolRef. PR 244
- feat: Add
UninitializedIpfs::set_connection_limits
and change behaviour order. PR 246 - refactor: Remove redundant async signature. PR 247
- refactor: Add
Serialize
for {Ipfs, IpldDag)::put_dag. PR 249 - feat: Add
Ipfs::{dht_get_providers,dht_provide)
, supportingRecordKey
directly. PR 250 - refactor: Remove sessions and redundant code. PR 255
- refactor: Move from libipld to ipld-core. PR 257
- chore: Use
Bytes
when creating or usingBlock
within bitswap. PR 264 - refactor: Reference
Block
inBlockStore::put_block
. PR 272 - feat: Passthrough timeout to WantSession::new. PR 265
- chore: Update libp2p to 0.54. PR 289
- chore: Change IpfsOptions visibility, remove UninitializedIpfs::{empty, with_opt}. PR 294
- refactor: Support multiple certificates for wss. PR 295
- refactor: Remove redundant static lifetime. PR 301
- refactor: Remove optional error from
UnixfsStatus
. - refactor: Remove sled and redb datastore and dependency. PR 304
- chore: Replace tokio-stream
StreamMap
with pollable-mapStreamMap
. PR 306 - chore: Provide
BitswapMessage
instead ofbitswap_pb::Message
. PR 308 - refactor: bump msrv to 1.80
- refactor: Add custom error for ipns, added
Borrow<Cid>
,Borrow<IpfsPath>
andInto<IpfsPath>
to different function signatures. PR 309 - refactor: deprecate
{BlockStore, DataStore}::open
- feat: Add RepoGetBlock and RepoGetBlocks.
- chore: Put libp2p-webrtc-websys behind feature.
- feat: Add Ipfs::{add,remove}_external_address.
- chore: Pin getrandom to 0.2.14 due to libc 0.2.154 being yanked.
- chore: Use simple_x509 for certificate generation. PR 219
- feat: Use tls along side noise. PR 212
- feat: Add webtransport support for wasm target. PR 220
- fix: Remove aws-lc-rs feature.
- chore: Enable feature in rcgen.
- feat: Add placeholder function for future wrtc deterministic certs. PR XXX
- fix: Log warning if request isnt cancelled. PR 204
- chore: Decrease quic timeout. PR 206
- feat: Add fields to add external certificate and keypair. PR 207
- fix: Use web-time
Instant
inplace ofstd::time::Instant
.
- fix: prevent overflow for relay duration by capping to u32::MAX. PR 198
- chore: Add peers to specific defined sessions instead of sending the entire wantlist. PR 189
- feat: Add an optional max length to read from the file via UnixfsCat. PR 190
- feat: Add
full
toBitswapMessage
to indicate if message is full. PR 191
- fix: Use rt import path when using beetle bitswap feature.
- feat: Add in-memory transport.
- feat: Add options to disable dns transport.
- refactor: Spawn local task for idb operation instead of using channels. PR 182
- fix: Improve performance by collecting the pinned blocks then compare.
- feat: Add logic to FsDataStore for K/V storage. PR 183
- feat: Implemented basic idb datastore. PR 185
- feat: Add RepoInsertPin::provider and RepoInsertPin::providers. PR 180
- chore: Add RelayConfig::unbounded. PR 181
- fix: Timeout when fetching initial block
- fix: Check for relay when storing address based on connection. PR 170
- chore: Add conversions for references
- chore: Remove
Result<T>
from Repo::recursive_collections. - chore: Split requests into their own sessiosn. PR 172
- chore: Optimize bitswap sessions to reduce messages and memory footprint. PR 173
- chore: Use futures-timeout in-place of tokio::time::timeout. PR 175
- chore: Update Cargo.toml to gate non-wasm dependencies. PR 176
- chore: Reenable websocket support and add support for secured websockets.
- feat: Implmenets webrtc transport and add a new feature. PR 177
- refactor: Remove async-broadcast and stream clones. PR 174
- refactor: Add wasm support. PR 178
- fix: Send a wantlist of missing blocks.
- fix: Use peer wantlist when notifying peers of blocks and misc cleanup
- chore: Send cancel request on error or timeout
- fix: Emit event if no peers dont have a specific block.
- feat: Implement basic bitswap ledger for tracking wantlist and requests. PR 169
- chore: Add logging to bitswap protocol and additional checks.
- feat: Implemented Ipfs::fetch.
- feat: Implemented basic bitswap protocol internally. PR 156
- chore: Feature gate sled and redb datastores. PR 162
- refactor: Revamp Repo and BlockStore API. PR 163
- refactor: Remove deprecated yamux fields.
- fix: Check the files of each block directly for Repo::get_total_size. PR 140
- feat: Add set_local to Unixfs* functions
- feat: Add DagGet::set_local and RepoInsertPin::set_local
- fix: Export
Entry
for UnixfsLs
- refactor: Removed unixfs free functions and use Unixfs* directly. PR 136
- feat: Add implementation for
libp2p-stream
. PR 135 - refactor: Serialize dag internally, remove redundant dependencies and code and minor optimizations. PR 134
- chore: Cancel gc task when ipfs drops. PR 133
- chore: Reduce allocation when initializing Repo and misc cleanup. PR 132
- refactor: Use
Bytes
apart of unixfs operations. PR 131 - refactor: Remove option and use configuration directly. PR 129
- refactor: Remove option around chunker and use conversion for option arguments.
- chore: Switch from libp2p-nat to libp2p-upnp. PR 128
- feat: Add libp2p-bitswap and feature gate both implementation. PR 126
- feat: Add
Repo::pin
,Repo::remove_pin
and expanded options PR 122 - chore: Update
rust-ipns
PR 121
- chore: Add timeout in transport config for quic
max_idle_timeout
- feat: Implements garbage collector. PR 120
- refactor: Revise peerbook and move connect/disconnect operations to main task PR 119
- chore: Deprecate UninitalizedIpfs::empty and UninitalizedIpfs::with_opt for UnitializedIpfs::new PR 118
- feat: Implement redb datastore backend PR 117
- chore: Implement conversion for IpfsPath
- chore: Update libp2p to 0.53 PR 116
- feat: Implement Repo::get_blocks PR 113
- feat: Allow recursive removal of blocks PR 114
- chore: Ignore deprecation warnings PR 112
- feat: Implement custom future for unixfs and dag functions PR 111
- chore: Update libp2p to 0.52.4 PR 110
- refactor: Disable primary protocols by default PR 109
- refactor: Move repo logic into a single task PR 108
- feat: Implement timeout while resolving blocks PR 106
- chore: Updated libp2p-relay-manager
- chore: Add json and cbor feature
- chore: Use new method over deprecated and internal behaviours PR 104
- fix: Set dns resolver as a field, and fix resolved path PR 103
- chore: Remove experimental feature flag
- feat: Implemented relay manager PR 96
- feat: Implement idle connections timeout PR 98
- chore: Add UninitializedIpfs::set_listening_addrs and minor changes
- chore: Add peer to dht when discovered over mdns
- fix: Dont close connections on ping error PR 95
- chore: Uncomment and update relay configuration PR 94
- chore: Minor Optimizations PR 93
- refactor: Make
Repo
independent PR 92 - feat: Basic record key/prefix validator and basic ipns publisher/resolver PR 88
- chore: Update dependencies PR 91
- chore: Update libp2p to 0.52 PR 76
- chore: Add
UninitializedIpfs::listen_as_external_addr
to use listened addresses as external addresses PR 90
- refactor: Update libipld and switch to using quick-protobuf PR 87
- fix: Add Sync + Send to custom transport signature
- feat: Support custom transport PR 84
- chore: Implement functions to add session to bitswap PR 83
- refactor: Use channels instead of Subscription PR 82
- feat: Ability to add custom behaviour PR 81
- feat: Implement Ipfs::connection_events PR 80
- chore: Remove the initial notify and add Ipfs::listener_addresses and Ipfs::external_addresses PR 79
- fix: Properly emit pubsub event of a given topic PR 77
- refactor: Confirm event from swarm when disconnecting from peer PR 75
- feat: Implement Keystore PR 74
- feat: Added Ipfs::remove_peer and Ipfs::remove_peer_address PR 73
- feat: Implements MultiaddrExt and remove wrapper PR 72
- feat: Basic AddressBook implementation PR 71
- feat: Added Ipfs::pubsub_events to receive subscribe and unsubscribe events to a subscribed topic PR 70
- feat: Implement RepoProvider PR 69
- refactor: Switch bitswap implementation PR 66
- fix: Return events from gossipsub stream PR 68
- chore: Update transport and configuration
- fix: Remove item from want list PR 64
- chore: Impl sled datastore, split stores into own modules PR 63
- feat: Added AddOption::wrap PR 62
- chore: Update configuration and behaviour cleanup PR 60
- chore: Update libp2p to 0.51.3 PR 61
- chore: Downgrade libp2p-gossipsub (temporarily)
- chore: Remove condition that prevents storing rtt PR 58
- chore: Reduce allocation in bitswap and pubsub PR 59
- chore: Update libp2p to 0.51.2 and add message_id_fn
- chore: Lock libp2p to 0.51.1
- chore: Reexport transport items
- fix: Use peer_connections for peers function PR 54
- chore(repo): Added field to only check locally PR 55
- refactor: Remove Column from DataStore PR 56
- feat: Add IpfsUnixfs [PR: 57]
- chore: Wait on identify before returning connection PR 47
- feat(repo): Allow custom repo store PR 46
- chore: Make kademlia optional PR 45
- chore: Make mplex optional PR 51
- refactor: Provide peers when obtaining blocks PR 52
- refactor: Remove Keypair from IpfsOptions PR 53
- refactor: Remove SwarmApi PR 50
- chore: Cleanup deprecation PR 44
- fix: Change condition when attempting to clear out cache
- fix: Export KadInserts
- chore: Reenable relay configuration
- refactor: Use async-broadcast for pubsub stream PR 39
- chore: Minor Config for Pubsub PR 38
- chore: Update to libp2p 0.51.0 PR 31 This also re-enables quic-v1 that was disabled due to versioning issues after the release of 0.51.0
- refactor/transport: Simplify TransportConfig and added additional options PR 32
- feat: basic PeerBook implementation PR 34
- refactor(repo): Remove RepoTypes and IpfsTypes PR 35
- chore: Disable quic-v1 until 0.51 update
- fix/: Add debug derive to FDLimit
- chore/: Add small delay before processing events PR 29
- refactor/opt: Expanded UninitializedIpfs functionality PR 21
- feat/upnp: Use libp2p-nat for handling port forwarding PR 23
- refactor/task: Move swarm and events into a task PR 25
- chore/: Remove async from event handling functions PR 27
- refactor/subscription: Use channels instead of subscription PR 28
- fix: Poll receiving oneshot channel directly PR 20
- See commit history