2618 Commits

Author SHA1 Message Date
arsenron
23d7d1a247
feat(kad): implement common traits on RoutingUpdate
A few weeks ago when I was debugging my wrong setup with kademlia, I could not conveniently debug `RoutingUpdate` after adding an address to the DHT. It would be nice to have a few derivable traits on a public enum.

Pull-Request: #4270.
2023-07-31 14:23:45 +00:00
Darius Clark
8ff2cf3a37
fix(relay): export RateLimiter type
The `rate-limiter` module  was not made publicly available. This change exports the `RateLimiter` trait defined within that module which allows users to define their own rate limiters. To make common usecases easy, we also provide a set of constructor functions for common rate limiters.

Resolves #3741.

Pull-Request: #3742.
2023-07-31 13:58:20 +00:00
Max Inden
3af3d5d23a
chore(quic): prepare v0.9.0-alpha
Pull-Request: #4262.
2023-07-31 11:11:57 +00:00
dependabot[bot]
856d85f9b6
deps: bump webpki-roots from 0.24.0 to 0.25.1
Pull-Request: #4272.
2023-07-31 10:41:14 +00:00
dependabot[bot]
d566f45ae2
deps: bump syn from 2.0.27 to 2.0.28
Pull-Request: #4273.
2023-07-31 09:17:09 +00:00
dependabot[bot]
55f05aa6c8
deps: bump serde from 1.0.178 to 1.0.179
Pull-Request: #4271.
2023-07-31 09:00:23 +00:00
João Oliveira
ceccb8e9c0
chore: fix clippy
Pull-Request: #4267.
2023-07-31 05:53:53 +00:00
Max Inden
5499333ff3
fix(identity): use test fixture for ed25519
Use test fixture from https://github.com/libp2p/specs/pull/537/ for ed25519 roundtrip test.

Pull-Request: #4228.
2023-07-29 19:56:11 +00:00
Max Inden
6d3015a4aa
docs(readme): add safe network to notable users
Pull-Request: #4264.
2023-07-28 20:41:46 +00:00
Max Inden
fbfe0836a8
docs(readme): add Mina project as notable user
Pull-Request: #4263.
2023-07-28 14:07:00 +00:00
Max Inden
1ebff97de7
docs(readme): rename iroh to beetle
Pull-Request: #4265.
2023-07-28 12:01:15 +00:00
Thomas Eizinger
6121f23800
docs: add maintainer handbook
This short document describes certain maintainer knowledge that IMO is good to have and should likely make on-boarding a bit easier too.

Pull-Request: #4220.
2023-07-28 11:12:56 +00:00
Roman
4e1fa9b8b8
refactor(quic): rewrite quic using quinn
Rewrite quic using quinn instead of quinn-proto. libp2p-quic::endpoint::Driver is eliminated (and that hard quinn-proto machinery). Also:
- ECN bits are handled
- Support Generic Send Offload (GSO)

Pull-Request: #3454.
2023-07-28 10:22:03 +00:00
Max Inden
f10f1a274a
chore: prepare identity v0.2.2 and swarm v0.43.2
Pull-Request: #4256.
2023-07-26 13:59:01 +00:00
Age Manning
53df98298a
fix(connection-limits): correct connection tracking
The connection limit behaviour was not taking into account connection errors. Also, it was using the behaviour events to indicate established connections which is not always going to be the case because other behaviours can deny the connections (thanks @divagant-martian).

Closes #4249

Pull-Request: #4250.
2023-07-26 13:36:14 +00:00
Divma
da743ec486
fix(swarm): display cause of denied listen error
The display of `ListenError` could be more helpful. The inner `cause` already implements `Error` which in turn requires `Display`. This is then just a matter of using said impl requirement to get an useful display

Pull-Request: #4232.
2023-07-24 19:52:51 +00:00
Max Inden
7f2ef013a8
feat(identity): implement from_protobuf_encoding for RSA keys
Add support for reading a libp2p RSA keypair from a Protobuf.

Pull-Request: #4193.
2023-07-24 19:03:04 +00:00
Benno
cf3cff147c
fix(kad): prevent simultaneous dials to peer
By default, dialing is prevented when already connected. `kad` already checks this manually before doing dials. By changing the condition from `Disconnected` to `NotDialing`, we prevent simultaneous dials to a peer.

Pull-Request: #4224.
2023-07-24 17:06:48 +00:00
dependabot[bot]
3f0fef2823
deps: bump asynchronous-codec from 0.6.1 to 0.6.2
Pull-Request: #4244.
2023-07-24 16:51:08 +00:00
dependabot[bot]
cfa879396c
deps: bump tempfile from 3.6.0 to 3.7.0
Pull-Request: #4247.
2023-07-24 16:35:29 +00:00
dependabot[bot]
b52c3ac317
deps: bump serde from 1.0.171 to 1.0.175
Pull-Request: #4246.
2023-07-24 16:19:48 +00:00
dependabot[bot]
12c98dca35
deps: bump either from 1.8.1 to 1.9.0
Pull-Request: #4243.
2023-07-24 16:02:14 +00:00
dependabot[bot]
521eea2d01
deps: bump thiserror from 1.0.43 to 1.0.44
Pull-Request: #4242.
2023-07-24 15:46:36 +00:00
dependabot[bot]
458fb7b15b
deps: bump tower-http from 0.4.1 to 0.4.3
Pull-Request: #4240.
2023-07-24 15:31:08 +00:00
dependabot[bot]
9546dd44d5
deps: bump async-trait from 0.1.71 to 0.1.72
Pull-Request: #4239.
2023-07-24 15:14:58 +00:00
dependabot[bot]
f97ff9f514
deps: bump num-traits from 0.2.15 to 0.2.16
Pull-Request: #4238.
2023-07-24 12:17:02 +00:00
dependabot[bot]
9bfa964147
deps: bump rmp-serde from 1.1.1 to 1.1.2
Pull-Request: #4237.
2023-07-24 11:50:11 +00:00
dependabot[bot]
136acf05b0
deps: bump quote from 1.0.31 to 1.0.32
Pull-Request: #4236.
2023-07-24 09:46:58 +00:00
dependabot[bot]
293128dd13
deps: bump syn from 2.0.26 to 2.0.27
Pull-Request: #4235.
2023-07-24 08:32:27 +00:00
Zeeshan Lakhani
52cf26f530
refactor(request-reponse): replace serde_cbor with cbor4ii
As per `RUSTSEC-2021-0127`, serde_cbor is unmaintained.

Fixes #4182.
Related: https://github.com/rustsec/advisory-db/pull/1114.

Pull-Request: #4187.
2023-07-20 13:18:36 +00:00
Dave
b18c77e21c
chore(libp2p): expose json feature from request-response
`cbor` feature was exposed in `libp2p` but not `json`.

Pull-Request: #4188.
2023-07-20 08:44:32 +00:00
Darius Clark
f0b1b122e6
feat(relay): add functions to Limit to access its data
Currently, `Limit` is supplied to many of relay client events, however there is no way to access the fields. This PR adds functions to allow access to the data from those fields.

Pull-Request: #4162.
2023-07-20 08:06:33 +00:00
Onur
660fadba35
chore(gossipsub): include in libp2p meta crate when compiling for wasm
Since https://github.com/libp2p/rust-libp2p/pull/3973, gossipsub now fully supports wasm targets. It functions properly when added as a dependency on its own. However, when trying to use it under libp2p by activating a feature, it's not possible and the compiler will raise an error like `unresolved import libp2p::gossipsub`. This pull request enables the use of gossipsub for wasm targets when it's activated as a feature of the libp2p dependency.

Pull-Request: #4217.
2023-07-20 07:48:21 +00:00
dependabot[bot]
1acf4a5e17
deps: bump actions/upload-pages-artifact from 1.0.9 to 2.0.0
Pull-Request: #4183.
2023-07-19 13:56:45 +00:00
dependabot[bot]
6ac15bdb98
deps: bump lru from 0.10.1 to 0.11.0
Pull-Request: #4198.
2023-07-19 13:41:32 +00:00
Thomas Eizinger
a10733f8a4
chore: update Rust version for clippy check to 1.71
We also need to prepend the `clippy::allow` with an `unknown_lints` lint because clippy 1.71 does not (yet) know about this new lint.

Pull-Request: #4219.
2023-07-19 13:25:58 +00:00
dependabot[bot]
132688961f
deps: bump clap from 4.3.11 to 4.3.12
Pull-Request: #4206.
2023-07-19 13:10:14 +00:00
dependabot[bot]
e4d6d193a4
deps: bump sec1 from 0.7.2 to 0.7.3
Pull-Request: #4207.
2023-07-19 12:53:22 +00:00
dependabot[bot]
8c0c9cc90b
deps: bump anyhow from 1.0.71 to 1.0.72
Pull-Request: #4205.
2023-07-19 12:37:34 +00:00
dependabot[bot]
130955748e
deps: bump quote from 1.0.29 to 1.0.31
Pull-Request: #4204.
2023-07-19 12:21:53 +00:00
dependabot[bot]
0f0506e08a
deps: bump axum from 0.6.18 to 0.6.19
Pull-Request: #4203.
2023-07-19 12:06:09 +00:00
dependabot[bot]
bc866417e6
deps: bump syn from 2.0.25 to 2.0.26
Pull-Request: #4202.
2023-07-19 11:49:33 +00:00
dependabot[bot]
a49ad7785c
deps: bump proc-macro2 from 1.0.63 to 1.0.66
Pull-Request: #4200.
2023-07-19 11:34:09 +00:00
dependabot[bot]
42be5b5d16
deps: bump serde from 1.0.168 to 1.0.171
Pull-Request: #4199.
2023-07-19 11:18:10 +00:00
dependabot[bot]
c70f3245dc
deps: bump prometheus-client from 0.21.1 to 0.21.2
Pull-Request: #4173.
2023-07-19 11:01:53 +00:00
Thomas Eizinger
237f37abae
ci: automatically merge PRs of semver-compatible updates
We receive a lot of PRs from dependabot for version updates to our lockfile and Cargo.toml. Whilst it is nice that those are explicit, they require quite some work from maintainers. Often, these PRs only get queued to be merged when a maintainer is next active on a repository which is also likely at a time they want to merge other PRs.

We don't want to automatically merge all updates that are coming in because they might be breaking changes for us if they are exposed in our public API. We solve this by only merging updates that are in a semver-compatible range:

- For major >= 1 updates, only approve them if they have the same major version.
- For major == 0 updates, only approve them if they have the same minor version.

We also add a rule to automatically queue PRs from dependabot with an approval. This avoids us having to approve AND apply the `send-it` label.

Resolves #4186.
Pull-Request: #4210.
2023-07-19 12:45:23 +02:00
Thomas Eizinger
d3b4714730
chore: apply suggestions from clippy beta (1.72)
Pull-Request: #4211.
2023-07-18 08:45:26 +00:00
dependabot[bot]
efdba39f83
deps: bump thiserror from 1.0.40 to 1.0.43
Pull-Request: #4174.
2023-07-17 08:45:14 +00:00
Benno
30024f38d4
fix: clippy useless_conversion and useless_vec
Pull-Request: #4190.
2023-07-16 03:31:37 +00:00
Dmitry
a3efb40892
fix(examples/kv-store): set kademlia mode to Server
Pull-Request: #4195.
2023-07-16 02:08:34 +00:00