Matthias Beyer
ca8bcd8288
core: Expose peer_id::ParseError
( #3113 )
2022-11-15 11:58:42 +00:00
yojoe
368705a146
docs(core): Document byte format of PeerId
( #3084 )
...
PeerId data is more than just a multihash of the public key.
See discussion: https://github.com/libp2p/rust-libp2p/discussions/3079
2022-11-15 01:22:11 +00:00
Hannes
7daa0c1145
*: Remove lazy_static in favor of once_cell ( #3110 )
2022-11-14 04:24:52 +00:00
Elena Frank
8b378d56d3
deps: Update to multiaddr v0.16.0 ( #3117 )
2022-11-13 23:38:27 +01:00
Hannes
c32f03c317
*: Fix newly raised clippy warnings ( #3106 )
...
Fixed minor issues raised by clippy to improve correctness and readablitity.
2022-11-11 20:30:58 +00:00
João Oliveira
280c51ef83
*: Link to libp2p/specs in doc comments ( #3077 )
2022-11-04 10:32:41 +00:00
Thomas Eizinger
df659e5bcd
core/muxer: Remove deprecated functions ( #3031 )
2022-11-02 15:09:12 +00:00
dependabot[bot]
ee5c9b7202
build(deps): Update multiaddr requirement from 0.14.0 to 0.15.0 ( #3051 )
...
Updates the requirements on [multiaddr](https://github.com/multiformats/rust-multiaddr ) to permit the latest version.
- [Release notes](https://github.com/multiformats/rust-multiaddr/releases )
- [Changelog](https://github.com/multiformats/rust-multiaddr/blob/master/CHANGELOG.md )
- [Commits](https://github.com/multiformats/rust-multiaddr/compare/v0.14.0...v0.15.0 )
---
updated-dependencies:
- dependency-name: multiaddr
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-02 12:57:21 +00:00
Thomas Eizinger
71131e0622
*: Don't leak prost
dependency in error types ( #3058 )
...
With the current design, a major version bump of `prost` leaks into
all consumers of `prost-codec`.
2022-11-02 12:02:21 +00:00
Hannes
fcadc83aca
*: Use auto_doc_cfg
instead of doc(cfg)
attributes ( #2983 )
...
Co-authored-by: João Oliveira <hello@jxs.pt>
Co-authored-by: Thomas Eizinger <thomas@eizinger.io>
2022-10-24 13:00:20 +11:00
Max Inden
d530e5112c
*: Prepare v0.49.0 ( #2931 )
2022-10-14 15:30:16 +01:00
Thomas Eizinger
f711dd5ce0
core/muxer: Deprecate StreamMuxerExt::next_{inbound,outbound}
( #3002 )
2022-10-12 13:36:39 +01:00
Elena Frank
aba5ccbce3
core/transport: Improve docs for Transport::address_translation
( #2976 )
2022-10-09 21:53:17 +01:00
Thomas Eizinger
215a8e12f3
{core,muxers/mplex}: Fix bad version bump ( #2960 )
2022-10-04 12:04:42 +01:00
Thomas Eizinger
1b793242e6
.cargo: Run clippy
on ALL the source files ( #2949 )
2022-10-04 18:24:38 +11:00
Thomas Eizinger
f6bb846c36
*: Remove default features from all crates ( #2918 )
...
Remove default features. You need to enable required features
explicitly now. As a quick workaround, you may want to use the
new `full` feature which activates all features.
2022-09-29 16:32:22 +01:00
Friedel Ziegelmayer
c71115d055
misc/multistream-select/: Remove parallel dialing optimization ( #2934 )
...
This is to avoid the usage of the now optional `ls` command, and
stay compatible with go-multistream.
Closes #2925
2022-09-29 14:36:11 +01:00
futpib
bcff814b92
core/identity: Implement Hash
and Ord
for PublicKey ( #2915 )
...
Co-authored-by: Thomas Eizinger <thomas@eizinger.io>
2022-09-22 19:35:42 +02:00
Roman
e530118fb0
build(deps): Bump rand to 0.8 and quickcheck to 1 ( #2857 )
...
Co-authored-by: Thomas Eizinger <thomas@eizinger.io>
Co-authored-by: Max Inden <mail@max-inden.de>
2022-09-22 18:48:32 +10:00
Thomas Eizinger
45faefa36c
*: Unfiy how we depend on crates across the workspace ( #2886 )
2022-09-19 17:32:02 +10:00
Thomas Eizinger
2c739e9bdb
protocols/noise: Introduce NoiseAuthenticated::xx
constructor with X25519 DH key exchange ( #2887 )
...
Co-authored-by: Max Inden <mail@max-inden.de>
2022-09-16 11:41:35 +10:00
Roman
72bade1799
build(deps): Update env_logger to 0.9 and criterion to 0.4 ( #2896 )
2022-09-14 13:01:41 +10:00
Alexander Shishenko
c650dc19db
*: Replace _serde with dep:serde in Cargo.toml ( #2868 )
2022-09-08 18:30:43 +10:00
Max Inden
83c67954e9
*: Prepare v0.48.0 ( #2869 )
2022-09-07 09:44:51 +02:00
Thomas Eizinger
2eca38cca0
core/upgrade/: Add ReadyUpgrade
( #2855 )
2022-09-07 09:08:23 +02:00
Alexander Shishenko
8644c65a22
core/: Introduce rsa
feature flag to avoid ring
dependency ( #2860 )
...
- Introduce `rsa` feature flag to `libp2p-core`.
- Expose `rsa` feature in `libp2p`.
- Add `rsa` feature to `libp2p` `default`.
2022-09-07 08:16:22 +02:00
Divma
36a2773861
*: Update changelogs for prost dep update ( #2851 )
2022-08-30 10:03:54 +02:00
dependabot[bot]
d92cab8581
build(deps): Update p256 requirement from 0.10.0 to 0.11.0 ( #2636 )
...
* build(deps): Update p256 requirement from 0.10.0 to 0.11.0
Updates the requirements on [p256](https://github.com/RustCrypto/elliptic-curves ) to permit the latest version.
- [Release notes](https://github.com/RustCrypto/elliptic-curves/releases )
- [Commits](https://github.com/RustCrypto/elliptic-curves/commits/p256/v0.10.1 )
---
updated-dependencies:
- dependency-name: p256
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
* core/: Bump version and add changelog entry
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Max Inden <mail@max-inden.de>
2022-08-23 09:51:58 +02:00
Max Inden
4253080a43
*: Prepare v0.47.0 ( #2830 )
2022-08-22 05:14:04 +02:00
Elena Frank
8931860b2f
core/identity: Allow clippy::large-enum-variant on Keypair
( #2827 )
2022-08-19 05:06:55 +02:00
Max Inden
8dc0188a1d
swarm/src/connection: Test max_negotiating_inbound_streams ( #2785 )
...
Test that `HandlerWrapper` upholds the provided
`max_negotiating_inbound_streams` limit.
2022-08-16 10:15:31 +02:00
dependabot[bot]
6a9fa3d930
build(deps): Update prost requirement from 0.10 to 0.11 ( #2788 )
...
* build(deps): Update prost-build requirement from 0.10 to 0.11
Updates the requirements on [prost-build](https://github.com/tokio-rs/prost ) to permit the latest version.
- [Release notes](https://github.com/tokio-rs/prost/releases )
- [Commits](https://github.com/tokio-rs/prost/compare/v0.10.0...v0.11.0 )
---
updated-dependencies:
- dependency-name: prost-build
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
* build(deps): Update prost requirement from 0.10 to 0.11
Updates the requirements on [prost](https://github.com/tokio-rs/prost ) to permit the latest version.
- [Release notes](https://github.com/tokio-rs/prost/releases )
- [Commits](https://github.com/tokio-rs/prost/compare/v0.10.0...v0.11.0 )
---
updated-dependencies:
- dependency-name: prost
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-08-16 08:49:09 +02:00
Thomas Eizinger
cef505685c
core/muxing: Generalise StreamMuxer::poll_address_change
to poll
( #2797 )
...
This is to allow general-purpose background work to be performed
by implementations.
2022-08-16 04:50:17 +02:00
Elena Frank
06aaea67f3
*: Fix clippy::derive-partial-eq-without-eq
( #2818 )
2022-08-14 04:03:04 +02:00
Thomas Eizinger
028decec69
core/muxing: Have functions on StreamMuxer
take Pin<&mut Self>
( #2765 )
...
Co-authored-by: Elena Frank <elena.frank@protonmail.com>
Co-authored-by: Max Inden <mail@max-inden.de>
2022-08-03 23:12:11 +10:00
Thomas Eizinger
56c492cf41
core/muxing: Drop Sync
requirement for StreamMuxer
on StreamMuxerBox
( #2775 )
...
`StreamMuxerBox` is never shared across threads but owned by a single
connection. Restricting it to be `Sync` unnecessarily limits the design
space around the `StreamMuxer` trait and its implementations.
2022-07-27 08:23:07 +02:00
Elena Frank
ce963dfcaa
core: fix clippy::op-ref, clippy::needless-borrow ( #2770 )
2022-07-25 17:57:50 +02:00
Thomas Eizinger
0ec3bbccb2
core/muxing: Remove Unpin
requirement from StreamMuxer::Substream
( #2776 )
2022-07-25 16:49:22 +02:00
Thomas Eizinger
f85a9909ac
core/tests: Remove unnecessary util module ( #2764 )
2022-07-25 17:34:05 +10:00
Elena Frank
95713ab91c
core: fix PR number in changelog entry ( #2769 )
2022-07-23 19:48:52 +01:00
Thomas Eizinger
f15a3dc4e0
core/muxing: Drop Unpin
requirement from SubstreamBox
( #2762 )
...
We are already boxing the given object so we might as well pin to
to avoid the `Unpin` trait bound.
2022-07-22 11:40:27 +02:00
Thomas Eizinger
1a553db596
core/muxing: Flatten StreamMuxer
interface to poll_{inbound,outbound,address_change,close}
( #2724 )
...
Instead of having a mix of `poll_event`, `poll_outbound` and `poll_close`, we
flatten the entire interface of `StreamMuxer` into 4 individual functions:
- `poll_inbound`
- `poll_outbound`
- `poll_address_change`
- `poll_close`
This design is closer to the design of other async traits like `AsyncRead` and
`AsyncWrite`. It also allows us to delete the `StreamMuxerEvent`.
2022-07-18 05:20:11 +02:00
Max Inden
7df6bae520
*: Prepare v0.46.0 ( #2730 )
2022-07-05 13:09:58 +02:00
Elena Frank
62622a1bad
core/src/transport: Poll Transport directly, remove Transport::Listener ( #2652 )
...
Remove the concept of individual `Transport::Listener` streams from `Transport`.
Instead the `Transport` is polled directly via `Transport::poll`. The
`Transport` is now responsible for driving its listeners.
2022-07-04 04:16:57 +02:00
Thomas Eizinger
0f40e513cc
core/muxing: Replace Into<io::Error>
bound on StreamMuxer
with std::error::Error
( #2710 )
...
* core/muxing: Remove `Into<io::Error>` bound from `StreamMuxer::Error`
This allows us to preserve the type information of a muxer's concrete
error as long as possible. For `StreamMuxerBox`, we leverage `io::Error`'s
capability of wrapping any error that implements `Into<Box<dyn Error>>`.
* Use `?` in `Connection::poll`
* Use `?` in `muxing::boxed::Wrap`
* Use `futures::ready!` in `muxing::boxed::Wrap`
* Fill PR number into changelog
* Put `Error + Send + Sync` bounds directly on `StreamMuxer::Error`
* Move `Send + Sync` bounds to higher layers
* Use `map_inbound_stream` helper
* Update changelog to match new implementation
2022-06-24 08:26:49 +02:00
Thomas Eizinger
eb490c08e9
core/muxing: Force StreamMuxer::Substream
to implement Async{Read,Write}
( #2707 )
...
Co-authored-by: Max Inden <mail@max-inden.de>
2022-06-23 21:52:11 +10:00
Thomas Eizinger
3c120ef971
core/muxing: Introduce StreamMuxerEvent::map_inbound_stream
( #2691 )
...
Co-authored-by: Max Inden <mail@max-inden.de>
2022-06-16 05:33:32 +10:00
Thomas Eizinger
04f31cd501
core/muxing: Introduce boxed
module ( #2703 )
...
This is analogous to other sub-modules like `transport` within
`libp2p-core` and thus contributes to consistency within the code
base.
2022-06-15 17:25:31 +02:00
Thomas Eizinger
bd9834aab4
core/either: Use io::Result
type alias instead of renaming io::Error ( #2687 )
2022-06-03 17:22:01 +02:00
Max Inden
6e1e314872
*: Prepare v0.45.0 ( #2662 )
2022-05-31 13:12:53 +02:00