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

bitcoindevkit / bdk / 23324465008
78%

Build:
DEFAULT BRANCH: master
Ran 20 Mar 2026 01:33AM UTC
Jobs 1
Files 28
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

20 Mar 2026 01:01AM UTC coverage: 78.142%. Remained the same
23324465008

push

github

oleonardolima
Merge bitcoindevkit/bdk#2104: fix(esplora): deduplicate missing txids in fetch_txs_with_outpoints

<a class=hub.com/bitcoindevkit/bdk/commit/<a class="double-link" href="https://git"><a class=hub.com/bitcoindevkit/bdk/commit/3b6b3ba710492056677349686568f2b2f6c23ee7">3b6b3ba71 fix(esplora): deduplicate missing txids in fetch_txs_with_outpoints (phrwlk)

Pull request description:

  ### Description

  Previously `fetch_txs_with_outpoints` collected spend txids into a Vec, so the same txid could be pushed multiple times when one transaction spent several input outpoints. This caused redundant `get_tx_info` calls to Esplora for the same transaction, wasting network and CPU without changing the resulting `TxUpdate`.

  Use `HashSet<Txid>` for `missing_txs` in both async and blocking `fetch_txs_with_outpoints,` so each txid is only requested once while keeping the observable behaviour of `SyncResponse` / `TxUpdate` unchanged.

  ### Changelog notice

  ```

  ### Changed
  - Use `HashSet` instead of `Vec` to track `missing_txs` in bdk_esplora, it deduplicates txids.

  ```

  ### Checklists

  #### All Submissions:

  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/blob/master/CONTRIBUTING.md)

  #### New Features:

  * [ ] I've added tests for the new feature
  * [ ] I've added docs for the new feature

  #### Bugfixes:

  * [ ] This pull request breaks the existing API
  * [ ] I've added tests to reproduce the issue which are now passing
  * [ ] I'm linking the issue being fixed by this PR

ACKs for top commit:
  oleonardolima:
    ACK 3b6b3ba710492056677349686568f2b2f6c23ee7
  luisschwab:
    ACK 3b6b3ba710492056677349686568f2b2f6c23ee7

Tree-SHA512: 9f1c48c85cd726e370fbb5a80cc4b4c66b9

376 of 510 branches covered (73.73%)

Branch coverage included in aggregate %.

2 of 4 new or added lines in 2 files covered. (50.0%)

4293 of 5465 relevant lines covered (78.55%)

3233.23 hits per line

New Missed Lines in Diff

Lines Coverage ∆ File
1
82.88
0.0% crates/esplora/src/async_ext.rs
1
79.26
0.0% crates/esplora/src/blocking_ext.rs
Jobs
ID Job ID Ran Files Coverage
1 23324465008.1 20 Mar 2026 01:33AM UTC 28
78.14
GitHub Action Run
Source Files on build 23324465008
  • Tree
  • List 28
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • 0f89edb6 on github
  • Prev Build on master (#23317734701)
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