PackageTrack
Sign in Get early access

libp2p

Peer-to-peer networking library

0.56.0 18M downloads/mo #2214 most downloaded on crates.io libp2p/rust-libp2p

What this package is like to depend on

Last release 1 years ago

27 Jun 2025

Release timing varies

gaps range from 9 days to 8 months

Most releases are documented

notes for 87 of 98 stable releases

2 versions withdrawn

withdrawn after publishing

8 years old

104 releases · first in 2018

0 releases in the last 12 months

see the full history below

Release timeline

104 releases · Aug 2018 to Jun 2025
2019 2020 2021 2022 2023 2024 2025 2026
Release Pre-release Withdrawn

Releases

latest 60 of 104
  1. 0.56.0 27 Jun 2025
    Release notes
    • Remove async-std support. See PR 6074

    • Remove deprecated Transport::with_bandwidth_logging, SwarmBuilder::with_bandwidth_logging and TransportExt. See PR 5766.

    • Introduce libp2p-webrtc-websys behind webrtc-websys feature flag. See PR 5819.

    • Introduce libp2p-peer-store. See PR 5724.

    • Make the *-websys variants (libp2p-webrtc-websys, libp2p-websocket-websys, libp2p-webtransport-websys) only available on wasm32 target architecture. See PR 5891.

    • Remove TCP from the async-std swarm builder, as async-std support was removed from libp2p-tcp transport. See PR 5955

    • Remove QUIC from the async-std swarm builder, as async-std support was removed from libp2p-quic transport. See PR 5954

    • Remove DNS from the async-std swarm builder, as async-std support was removed from libp2p-dns transport. See PR 5959

    Open source →
  2. 0.55.0 15 Jan 2025
    Release notes
    • Raise MSRV to 1.83.0. See PR 5650.

    • Add with_connection_timeout on SwarmBuilder to allow configuration of the connection_timeout parameter. See PR 5575.

    • Deprecate void crate. See PR 5676.

    • Update default for idle-connection-timeout to 10s. See PR 4967.

    • Expose swarm builder phase errors. See PR 5726.

    • Deprecate ConnectionHandler::{InboundOpenInfo, OutboundOpenInfo} associated type.
      Previously, users could tag pending sub streams with custom data and retrieve the data after the substream has been negotiated. But substreams themselves are completely interchangeable, users should instead track additional data inside ConnectionHandler after negotiation.
      See PR 5242.

    <!-- Update to libp2p-core v0.43.0 -->

    Open source →
  3. 0.54.1 19 Aug 2024
    Release notes
    Open source →
  4. 0.54.0 09 Aug 2024
    Release notes
    • Update individual crates.

    • Raise MSRV to 1.73. See PR 5266.

    • Implement refactored Transport. See PR 4568.

    • Move address_translation from libp2p-core to libp2p-swarm and libp2p-identify. To now get address translation behaviour, i.e. discovery of extern address (candidates) based on connecting to other peers, one needs to use libp2p-identify now. This pertains to you if your nodes can be behind NATs and they aren't aware of their true external address. See PR 4568.

    • Use web-time instead of instant. See PR 5347.

    • Remove redundant async signature from builder methods. See PR 5468.

    Open source →
  5. 0.53.2 09 Dec 2023
    Release notes
    • Allow SwarmBuilder::with_bandwidth_metrics after SwarmBuilder::with_websocket. See PR 4937.
    Open source →
  6. 0.53.1 12 Nov 2023
    Release notes
    • Allow SwarmBuilder::with_quic_config to be called without with_tcp first. See PR 4821.
    • Introduce SwarmBuilder::with_dns_config. See PR 4808.
    Open source →
  7. 0.53.0 05 Nov 2023
    Release notes
    • Raise MSRV to 1.73. See PR 4692.
    • Remove deprecated libp2p-wasm-ext. Users should use libp2p-websocket-websys instead. See PR 4694.
    • Remove deprecated libp2p-deflate. See issue 4522 for details. See PR 4729.
    • Remove deprecated development_transport. Use libp2p::SwarmBuilder instead. See PR 4732.
    • Introduce SwarmBuilder::with_bandwidth_metrics exposing Prometheus bandwidth metrics per transport protocol stack and direction (in-/ outbound). Deprecate Transport::with_bandwidth_logging and SwarmBuilder::with_bandwidth_logging in favor of the new SwarmBuilder::with_bandwidth_metrics. See PR 4727.
    Open source →
  8. 0.52.4 18 Oct 2023
    Release notes
    • Introduce libp2p::websocket_websys module behind websocket-websys feature flag. This supersedes the existing libp2p::wasm_ext module which is now deprecated. See PR 3679.

    • Introduce a new libp2p::SwarmBuilder in favor of the now deprecated libp2p::swarm::SwarmBuilder. See libp2p::SwarmBuilder docs on how to use the new builder. Also see PR 4120.

    • Update libp2p-identity version to 0.2.6. Under the hood, we feature-flagged libp2p-identity's rand dependency but it is enabled by default when using libp2p. See PR 4349.

    Open source →
  9. 0.52.3 24 Aug 2023
    Release notes
    • Add libp2p-quic stable release.
    Open source →
  10. 0.52.2 11 Aug 2023
    Release notes
    • Include gossipsub when compiling for wasm. See PR 4217.

    • Add json feature which exposes request_response::json. See PR 4188.

    • Add support for UPnP via the IGD protocol. See PR 4156.

    • Add libp2p-memory-connection-limits providing memory usage based connection limit configurations. See PR 4281.

    Open source →
  11. 0.52.1 26 Jun 2023
    Release notes
    • Add libp2p-webtransport-websys providing WebTransport for WASM environments. See PR 4015.
    Open source →
  12. 0.52.0 20 Jun 2023
    Release notes
    • Raise MSRV to 1.65. See PR 3715.

    • Protocol names are now required to be valid UTF8 strings. We delete the ProtocolName trait from libp2p::core and replace it with a requirement for AsRef<str>. At the same time, we introduce StreamProtocol, a newtype in libp2p::swarm. This newtype enforces additional variants like a leading forward-slash. We encourage users to use StreamProtocol when implementing UpgradeInfo. See PR 3746.

    • Rename NetworkBehaviour::OutEvent to NetworkBehaviour::ToSwarm, ConnectionHandler::InEvent to ConnectionHandler::FromBehaviour, ConnectionHandler::OutEvent to ConnectionHandler::ToBehaviour. See PR 3848.

    • Remove deprecated mplex module. You can still depend on libp2p-mplex directly but we strongly encourage to migrate to yamux. This also removes mplex from the development_transport and tokio_development_transport functions. See PR 3920.

    • Remove libp2p-perf protocol. To use libp2p-perf one needs to import it directly. See PR 3990.

    • Remove libp2p-quic and libp2p-webrtc protocols. These are in alpha status and should be depended on directly. See PR 4041.

    Open source →
  13. 0.51.4 06 Dec 2023

    Nothing published for this version

  14. 0.51.3 12 Apr 2023
    Release notes
    • Deprecate the mplex feature. The recommended baseline stream multiplexer is yamux. See PR 3689.
    Open source →
  15. 0.51.2 29 Mar 2023
    Release notes
    • Introduce libp2p::connection_limits module. See PR 3386.

    • Deprecate the quic and webrtc feature. These two crates are only in alpha state. To properly communicate this to users, we want them to add the dependency directly which makes the alpha version visible. See PR 3580.

    • Introduce libp2p::allow_block_list module and deprecate libp2p::Swarm::ban_peer_id. See PR 3590.

    • Introduce libp2p::perf module. See PR 3693.

    Open source →
  16. 0.51.1 12 Mar 2023
    Release notes
    • Depend on libp2p-tls v0.1.0.

    • Introduce ed25519 feature. For backwards-compatibility, the ed25519 identity keys are still available without activating this feature. However, going forward, you should explicitly activate it to avoid compile errors going forward. See PR 3350.

    Open source →
  17. 0.51.0 24 Feb 2023
    Release notes
    Open source →
  18. 0.50.1 03 Mar 2023

    Nothing published for this version

  19. 0.50.0 25 Nov 2022
    Release notes

    This is a large release. After > 4 years, rust-libp2p ships with an (alpha) QUIC implementation. The necessary TLS logic is extracted into its own crate, and can thus be used detached from QUIC, e.g. on top of TCP as an alternative to Noise. In addition to these two transports, this release adds a third, namely WebRTC (browser-to-server). But that is definitely not it. See below for the many other changes packed into this release.

    Open source →
  20. 0.49.0 14 Oct 2022
    Release notes
    Open source →
  21. 0.48.0 07 Sep 2022
    Release notes Open source →
  22. 0.47.0 22 Aug 2022
    Release notes Open source →
  23. 0.46.1 05 Jul 2022
    Release notes
    Open source →
  24. 0.46.0 05 Jul 2022
    Release notes
    Open source →
  25. 0.45.1 09 Jun 2022
    Release notes
    Open source →
  26. 0.45.0 31 May 2022
    Release notes Open source →
  27. 0.44.0 04 Apr 2022
    Release notes
    Open source →
  28. 0.43.0 22 Feb 2022
    Release notes
    • Update individual crates.

    • Update to parking_lot v0.12.0. See PR 2463.

    • Drop support for gossipsub in the wasm32-unknown-unknown target (see PR 2506).

    Open source →
  29. 0.42.2 06 Feb 2022

    Nothing published for this version

  30. 0.42.1 02 Feb 2022
    Release notes
    • Update individual crates.
    Open source →
  31. 0.42.0 27 Jan 2022
    Release notes
    Open source →
  32. 0.41.2 07 Feb 2022

    Nothing published for this version

  33. 0.41.1 10 Jan 2022

    Nothing published for this version

  34. 0.41.0 16 Nov 2021
    Release notes
    • Update individual crates.
      • libp2p-floodsub
      • libp2p-gossipsub
      • libp2p-identify
      • libp2p-kad
      • libp2p-mdns
      • libp2p-metrics
      • libp2p-ping
      • libp2p-relay
      • libp2p-rendezvous
      • libp2p-request-response
      • libp2p-swarm-derive
      • libp2p-swarm
      • libp2p-websocket
    • Forward wasm-bindgen feature to futures-timer, instant, parking_lot, getrandom/js and rand/wasm-bindgen.
    Open source →
  35. 0.40.0 01 Nov 2021
    Release notes
    • Update individual crates.

      • libp2p-core
      • libp2p-deflate
      • libp2p-dns
      • libp2p-floodsub
      • libp2p-gossipsub
      • libp2p-identify
      • libp2p-kad
      • libp2p-mdns
      • libp2p-mplex
      • libp2p-noise
      • libp2p-ping
      • libp2p-plaintext
      • libp2p-relay
      • libp2p-request-response
      • libp2p-swarm
      • libp2p-tcp
      • libp2p-uds
      • libp2p-wasm-ext
      • libp2p-websocket
      • libp2p-yamux
    • Re-export the wasm-bindgen feature from parking_lot, so libp2p users can opt-in to that crate's Wasm support. See PR 2180.

    • Add libp2p-metrics.

    Open source →
  36. 0.40.0-rc.3 27 Oct 2021 pre-release

    Nothing published for this version

  37. 0.40.0-rc.2 15 Oct 2021 pre-release

    Nothing published for this version

  38. 0.40.0-rc.1 15 Oct 2021 pre-release

    Nothing published for this version

  39. 0.39.1 12 Jul 2021
    Release notes
    • Update individual crates.
      • libp2p-swarm-derive
    Open source →
  40. 0.39.0 12 Jul 2021 withdrawn
    Release notes
    • Update individual crates.
      • libp2p-core
      • libp2p-deflate
      • libp2p-dns
      • libp2p-floodsub
      • libp2p-gossipsub
      • libp2p-identify
      • libp2p-kad
      • libp2p-mdns
      • libp2p-mplex
      • libp2p-noise
      • libp2p-ping
      • libp2p-plaintext
      • libp2p-relay
      • libp2p-request-response
      • libp2p-swarm
      • libp2p-tcp
      • libp2p-uds
      • libp2p-wasm-ext
      • libp2p-websocket
      • libp2p-yamux
    Open source →
  41. 0.38.0 17 May 2021
    Release notes
    • Update individual crates.
      • libp2p-core
      • libp2p-gossipsub
      • libp2p-noise
      • libp2p-pnet
      • libp2p-wasm-ext
    Open source →
  42. 0.37.1 14 Apr 2021
    Release notes
    • Update individual crates.
      • libp2p-swarm-derive
    Open source →
  43. 0.37.0 13 Apr 2021 withdrawn
    Release notes
    • Update individual crates.

      • libp2p-core
      • libp2p-dns
      • libp2p-floodsub
      • libp2p-gossipsub
      • libp2p-kad
      • libp2p-mdns
      • libp2p-ping
      • libp2p-relay
      • libp2p-request-response
      • libp2p-swarm
      • libp2p-wasm-ext
      • libp2p-yamux
    • Drop support for wasm32-unknown-unknown in favor of wasm32-unknown-emscripten and wasm32-wasi PR 2038.

    Open source →
  44. 0.36.0 17 Mar 2021
    Release notes
    • Consolidate top-level utility functions for constructing development transports. There is now just development_transport() (available with default features) and tokio_development_transport() (available when the corresponding tokio features are enabled). Furthermore, these are now async fns. The minor variations that also included pnet support have been removed. PR 1927

    • Update libp2p crates.

    • Do not leak default features from libp2p crates. PR 1986.

    • Add libp2p-relay to libp2p facade crate.

    Open source →
  45. 0.35.1 17 Feb 2021
    Release notes
    • Update libp2p-yamux to latest patch version.
    Open source →
  46. 0.35.0 15 Feb 2021
    Release notes
    • Use libp2p-swarm-derive, the former libp2p-core-derive.

    • Update libp2p-deflate, libp2p-gossipsub, libp2p-mdns, libp2p-request-response, libp2p-swarm and libp2p-tcp.

    Open source →
  47. 0.34.0 12 Jan 2021
    Release notes
    • Update libp2p-core and all dependent crates.

    • The tcp-async-std feature is now tcp-async-io, still enabled by default.

    Open source →
  48. 0.33.0 18 Dec 2020
    Release notes
    • Update libp2p-core and all dependent crates.
    Open source →
  49. 0.32.2 10 Dec 2020
    Release notes
    • Update libp2p-websocket.
    Open source →
  50. 0.32.1 09 Dec 2020
    Release notes
    • Update minimum patch version of libp2p-websocket.
    Open source →
  51. 0.32.0 08 Dec 2020
    Release notes
    • Update libp2p-request-response.

    • Update to libp2p-mdns-0.26.

    • Update libp2p-websocket minimum patch version.

    Open source →
  52. 0.31.2 02 Dec 2020
    Release notes
    • Bump minimum libp2p-core patch version.
    Open source →
  53. 0.31.1 26 Nov 2020
    Release notes
    • Bump minimum libp2p-tcp patch version.
    Open source →
  54. 0.31.0 25 Nov 2020
    Release notes
    • Update multistream-select and all dependent crates.
    Open source →
  55. 0.30.1 11 Nov 2020
    Release notes
    • Update libp2p-plaintext.
    Open source →
  56. 0.30.0 09 Nov 2020
    Release notes
    • Update libp2p-mdns, libp2p-tcp and libp2p-uds as well as libp2p-core and all its dependers.
    Open source →
  57. 0.29.1 20 Oct 2020
    Release notes
    • Update libp2p-core.
    Open source →
  58. 0.29.0 16 Oct 2020
    Release notes
    • Update libp2p-core, libp2p-floodsub, libp2p-gossipsub, libp2p-mplex, libp2p-noise, libp2p-plaintext, libp2p-pnet, libp2p-request-response, libp2p-swarm, libp2p-tcp, libp2p-websocket and parity-multiaddr.
    Open source →
  59. 0.28.1 10 Sep 2020
    Release notes
    • Update to libp2p-core 0.22.1.
    Open source →
  60. 0.28.0 09 Sep 2020
    Release notes
    • Update libp2p-yamux to 0.25.0. Step 4 of 4 in a multi-release upgrade process. See the libp2p-yamux CHANGELOG for details.
    Open source →

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive