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

bitcoindevkit / bdk / 19637002298 / 1
80%
master: 79%

Build:
Build:
LAST BUILD BRANCH: feature/bitcoind_rpc_emit_header
DEFAULT BRANCH: master
Ran 24 Nov 2025 02:07PM UTC
Files 27
Run time 1s
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

24 Nov 2025 02:02PM UTC coverage: 79.726% (+0.3%) from 79.414%
19637002298.1

push

github

ValuedMammal
Merge bitcoindevkit/bdk#2027: feat(chain): add new `list_ordered_canonical_txs` method

12c107637 feat(chain): introduce new `list_ordered_canonical_txs` (Leonardo Lima)
f34117b78 test(chain): add `test_list_ordered_canonical_txs` (Leonardo Lima)
a201be0b9 chore(test): rename `txid_to_name` to proper `tx_name_to_txid` (Leonardo Lima)
6cf720e48 chore(docs): fix typo in docs (Leonardo Lima)

Pull request description:

  ### Description

  It introduces a new method for topological ordering canonical transactions, `list_ordered_canonical_txs`. It now ensures the dependency-based transaction processing, guaranteeing that parent transactions always appears before their children transaction.

  The existing `list_canonical_txs` and `try_list_canonical_txs` methods have been deprecated in favor of the new ordered version.

  ### Notes to the reviewers

  "[...] For those reviewing, and wondering why we don't have a fallible try version of this method, it's because we don't have a fallible ChainOracle implementation - we will get rid of ChainOracle trait soon anyway."

  This PR is intended for a point release so that bdk_wallet 2.x users can get a topologically sorted list of transactions (we need a point release on bdk_wallet 2.x as well).

  It might be useful to take a look at the new test scenarios that I've added, it shows some specific scenarios where the current implementation and output of `canonical_txs` didn't output the transactions in topological order.

  Let me know if you think the TopologicalIter algorithm and/or API could be improved.

  ### Changelog notice
  ```
  #### Added
  - New `list_ordered_canonical_txs` method to `TxGraph` that returns canonical transactions in topological order, ensuring parent transactions always appear before their children

  #### Deprecated
  - `list_canonical_txs` method - use `list_orde... (continued)

389 of 526 branches covered (73.95%)

Branch coverage included in aggregate %.

4326 of 5388 relevant lines covered (80.29%)

2283.44 hits per line

Source Files on job 19637002298.1
  • Tree
  • List 27
  • Changed 2
  • Source Changed 0
  • Coverage Changed 2
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Build 19637002298
  • 1a77475f on github
  • Prev Job for on release/chain-0.23.x (#19590399930.1)
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