• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

rust-bitcoin / rust-bitcoin / 10913079047
83%

Build:
DEFAULT BRANCH: master
Ran 18 Sep 2024 12:10AM UTC
Jobs 1
Files 99
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

18 Sep 2024 12:09AM UTC coverage: 82.801%. Remained the same
10913079047

push

github

apoelstra
Merge rust-bitcoin/rust-bitcoin#2850: Implement GetKey for Vec<Xpriv>

<a class=hub.com/rust-bitcoin/rust-bitcoin/commit/<a class="double-link" href="https://git"><a class=hub.com/rust-bitcoin/rust-bitcoin/commit/8ec3571d80e646e03b53d2eb46baaf8e9492879b">8ec3571d8<a href="https://github.com/rust-bitcoin/rust-bitcoin/commit/d9d12dafdd4f55912d890403f21cb47e3c1996fc"> Implement GetKey for Vec&lt;Xpriv&gt; (Nadav Ivgi)

Pull request description:

  It appears that the `BTreeSet&lt;Xpriv&gt;`/`HashSet&lt;Xpriv&gt;` sets currently implementing `GetKey` cannot actually be constructed, because `Xpriv` does not implement `Ord` nor `Hash`. (And that the rust-bitcoin code referencing these sets should not even compile? yet evidently it does :eyes: )

  This PR adds support for `Vec&lt;Xpriv&gt;` to enable signing with multiple `Xpriv`s, but does not address the issue with the existing sets.

  The added test case demonstrates the issue:

  ```rust
  error[E0277]: the trait bound `bip32::Xpriv: std::hash::Hash` is not satisfied
      --&gt; bitcoin/src/psbt/mod.rs:2301:24
       |
  2301 |         HashSet::new().insert(xpriv.clone());
       |                        ^^^^^^ the trait `std::hash::Hash` is not implemented for `bip32::Xpriv`
       |
  note: required by a bound in `std::collections::HashSet::<T, S>::insert`
      --> /rustc/<a class="double-link" href="https://github.com/rust-bitcoin/rust-bitcoin/commit/&lt;a class=&quot;double-link&quot; href=&quot;https://git">&lt;a class=</a>hub.com/rust-bitcoin/rust-bitcoin/commit/82e1608dfa6e0b5569232559e3d385fea5a93112">82e1608df</a>/library/std/src/collections/hash/set.rs:888:5

  error[E0277]: the trait bound `bip32::Xpriv: Ord` is not satisfied
      --> bitcoin/src/psbt/mod.rs:2302:25
       |
  2302 |         BTreeSet::new().insert(xpriv.clone());
       |                         ^^^^^^ the trait `Ord` is not implemented for `bip32::Xpriv`
       |
  note: required by a bound in `std::collections::BTreeSet::<T, A>::insert`
      --> /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/alloc/src/collections/btree/set.rs:899:5

  ```

ACKs for top commit:
  apoelstra:
    ACK 8ec3571d80e646e03b53d2eb46baaf8e9492879b successfully ran local tests
  tcharding:
    ACK 8ec3571d80e646e03b53d2eb46baaf8e9492879b

Tree-SHA512: aceb95f8e7fd4201459b57f0ce2fd16b75d

18930 of 22862 relevant lines covered (82.8%)

16321.4 hits per line

Jobs
ID Job ID Ran Files Coverage
1 10913079047.1 18 Sep 2024 12:10AM UTC 0
82.8
GitHub Action Run
Source Files on build 10913079047
Detailed source file information is not available for this build.
  • Back to Repo
  • Github Actions Build #10913079047
  • d9d12daf on github
  • Prev Build on master (#10912109637)
  • Next Build on master (#10923313896)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc