Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(deps): update libp2p to 0.50.0 [fixes NET-332] #1419

Merged
merged 9 commits into from
Jan 27, 2023
Merged

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Jan 21, 2023

Mend Renovate

This PR contains the following updates:

Package Type Update Change
libp2p workspace.dependencies minor 0.48.0 -> 0.50.0
libp2p-core workspace.dependencies minor 0.36.0 -> 0.38.0
libp2p-metrics workspace.dependencies minor 0.9.0 -> 0.11.0
libp2p-noise workspace.dependencies minor 0.39.0 -> 0.41.0
libp2p-swarm workspace.dependencies minor 0.39.0 -> 0.41.1
prometheus-client workspace.dependencies minor 0.18.0 -> 0.19.0

Release Notes

libp2p/rust-libp2p

v0.50.0

Compare Source

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.

v0.49.0

Compare Source

prometheus/client_rust

v0.19.0

Compare Source

This is a large release including multiple breaking changes. Major user-facing
improvement of this release is support for the OpenMetrics Protobuf format.

Upgrade guide:
  • Don't box before registering.

      registry.register(
          "my_metric",
          "This is my metric",
    -      Box::new(my_metric.clone()),
    +      my_metric.clone(),
      );
  • Gauge uses i64 instead of u64.

      my_gauge
    -     .set(42u64);
    +     .set(42i64);
  • Derive EncodeLabelSet for struct and EncodeLabelValue for enum instead of just Encode for all and require Debug.

    - #[derive(Clone, Hash, PartialEq, Eq, Encode)]
    + #[derive(Clone, Hash, PartialEq, Eq, EncodeLabelSet, Debug)]
      struct Labels {
          path: String,
          method: Method,
          some_number: u64,
      }
    
    - #[derive(Clone, Hash, PartialEq, Eq, Encode)]
    + #[derive(Clone, Hash, PartialEq, Eq, EncodeLabelValue, Debug)]
      enum Method {
          Get,
          #[allow(dead_code)]
          Put,
      }
  • Encode as utf-8 and not as [u8].

    - let mut buffer = vec![];
    + let mut buffer = String::new();
      encode(&mut buffer, &registry).unwrap();

For details on each of these, see changelog entries below.

Added
  • Added support for the OpenMetrics protobuf format. See PR 83.
  • Added a remove method to Family to allow the removal of a specified label
    set from a family. See PR 85.
  • Added a clear method to Family to allow the removal of all label sets
    from a family. See PR 85.
  • Impl TypedMetric for CounterWithExemplar and HistogramWithExemplar, so that they can be used with Family. See PR 96.
Changed
  • Always use dynamic dispatch on Registry, i.e. remove generic type parameter M from Registry. See PR 105.
  • Refactor encoding. See PR 105.
    • Introducing separate traits to encode
      • value (e.g. EncodeCounterValue)
      • label set (EncodeLabelSet), derivable for structs via prometheus-client-derive-encode
      • label (EncodeLabel)
      • label key (EncodeLabelKey)
      • label value (EncodeLabelValue), derivable for enums via prometheus-client-derive-encode
    • Encode as UTF-8 strings, not bytes. I.e. use std::fmt::Write instead of std::io::Write.
  • Use signed integers for Gauge for compliance with OpenMetrics protobuf
    format. See PR 105.

v0.18.1

Compare Source

Fixed
  • Fix race condition in Family::get_or_create. See PR 102.

Configuration

📅 Schedule: Branch creation - "every weekend" (UTC), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate. View repository job log here.

BEGIN_COMMIT_OVERRIDE
fix(deps): update libp2p to 0.50.0 [fixes NET-232] #1419
END_COMMIT_OVERRIDE

@CLAassistant
Copy link

CLAassistant commented Jan 25, 2023

CLA assistant check
All committers have signed the CLA.

@CLAassistant
Copy link

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

@renovate
Copy link
Contributor Author

renovate bot commented Jan 25, 2023

Edited/Blocked Notification

Renovate will not automatically rebase this PR, because it does not recognize the last commit author and assumes somebody else may have edited the PR.
You can manually request rebase by checking the rebase/retry box above.

Warning: custom changes will be lost.

@folex folex changed the title chore(deps): update libp2p chore(deps): update libp2p to 0.50.0 Jan 26, 2023
@gurinderu gurinderu force-pushed the renovate/libp2p branch 3 times, most recently from 5bb9517 to 813f76c Compare January 26, 2023 14:08
@folex folex changed the title chore(deps): update libp2p to 0.50.0 chore(deps): update libp2p to 0.50.0 [fixes NET-332] Jan 27, 2023
@linear
Copy link

linear bot commented Jan 27, 2023

@gurinderu gurinderu enabled auto-merge (squash) January 27, 2023 14:15
@gurinderu gurinderu merged commit 9c3eda8 into master Jan 27, 2023
@gurinderu gurinderu deleted the renovate/libp2p branch January 27, 2023 14:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants