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

bitcoindevkit / bdk
79%
master: 79%

Build:
Build:
LAST BUILD BRANCH: index-spk-ref
DEFAULT BRANCH: master
Repo Added 27 Oct 2020 09:44PM UTC
Files 28
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

LAST BUILD ON BRANCH release/chain-0.23.x
branch: release/chain-0.23.x
CHANGE BRANCH
x
Reset
  • release/chain-0.23.x
  • 05-18-2025-smt-replenish
  • 1704_build_fee
  • 1705_mod
  • 2025-02-14-coinbase-utxos
  • add-first-seen
  • add_persist_test_utils
  • arm-ci
  • assume_not_canonical
  • bench/reindex-tx-graph
  • bgg
  • box_changeset
  • bugfix/i-1517-store-append-after-open-causes-overwrite
  • bump-bitcoin-0.32.4
  • bump/rusqlite-0.32
  • canonical-view
  • canonical-view-docs
  • canonical-view-extract-rbf
  • canonicalization_improvements
  • checkpointentry
  • chore/add-rustfmt
  • chore/bump-rust-version
  • chore/clippy
  • chore/fix_build_warnings
  • chore/optional-change-descriptor-on-example
  • chore/remove_wallet
  • ci-verify-build-without-workspace
  • ci/20250221
  • ci/add-secondary-msrv-build-test-job
  • ci/apply-zizmor-security-audit
  • ci/clippy
  • ci/fix-coverage-job
  • ci/fix-docs
  • ci/fix_msrv_esplora
  • ci/fix_nightly_docs
  • ci/msrv-base64ct
  • ci/pin-bzip2-sys-to-0.1.12
  • ci/pin-code-coverage-to-0.6.15
  • ci/pin-minreq
  • ci/pin-socket2-0.6.0-to-0.5.10
  • ci/publish-docs-job-fails-with-permission-denied
  • ci/replace-grcov-by-cargo-llvm-cov
  • ci/use-explicit-ubuntu-version
  • ci/zizmor
  • clippy
  • cmake_msrv
  • confirmation-policy
  • create-pull-request/update-rust-version
  • dependabot/github_actions/Swatinem/rust-cache-2.7.3
  • dependabot/github_actions/Swatinem/rust-cache-2.7.5
  • dependabot/github_actions/Swatinem/rust-cache-2.7.7
  • dependabot/github_actions/Swatinem/rust-cache-2.7.8
  • dependabot/github_actions/Swatinem/rust-cache-2.8.0
  • dependabot/github_actions/Swatinem/rust-cache-2.8.1
  • dependabot/github_actions/actions/checkout-4
  • dependabot/github_actions/actions/checkout-5
  • dependabot/github_actions/actions/download-artifact-4
  • dependabot/github_actions/actions/setup-python-5
  • dependabot/github_actions/actions/upload-artifact-4
  • dependabot/github_actions/crazy-max/ghaction-import-gpg-6
  • dependabot/github_actions/peter-evans/create-pull-request-7
  • dependabot/github_actions/tibdex/github-app-token-2
  • doc/adr
  • doc/update-readme
  • doc/wallet-changeset
  • docs/first_time_contribs
  • double_spend
  • editorconfig
  • electrum_anchor_fix
  • electrum_clarify
  • electrum_exploit_fixes
  • evicted_at
  • example/cli-build-psbt
  • example/cli-feerate
  • feat/add-check-for-network-consistency
  • feat/cancel-tx-wallet
  • feat/create-multipath
  • feat/filter-iter
  • feat/filter_iter_detects_reorgs
  • feat/justfile
  • feat/non_exhaustive_changesets
  • feat/plan
  • feat/replace-tx
  • feat/testnet4
  • feat/use-batch-transaction-get-merkle-api
  • feature/add-last-evicted-to-txnode
  • feature/allow_bdk_electrum_client_to_take_by_ref
  • feature/bip322-support
  • feature/mtp
  • feature/relevant_conflicts
  • feature/spk_cache
  • feature/tx-graph-get-last-evicted
  • feature/tx_update_is_empty
  • filter_iter
  • fix/1665
  • fix/FilterIter-may-not-handle-reorgs-properly
  • fix/bitcoind_rpc_mempool
  • fix/build-fee-bump-single-desc
  • fix/check-foreign-utxos-are-foreign
  • fix/checkpoint-drop-memory-leak
  • fix/ci-ring-0_17_13
  • fix/clippy-warnings
  • fix/disallow-unconfirmed-coinbase
  • fix/electrum_negative_height
  • fix/esplora-chain-update
  • fix/into-descriptor-key
  • fix/keychain_txout_apply_changeset
  • fix/merge-chains-docs
  • fix/no-debug-on-display-impls
  • fix/off-by-one-error-in-coinbase-coin-selection
  • fix/persistedwallet_send_sync
  • fix/wait_until_electrum_sees_block
  • fix/wallet-transactions-should-only-be-relevant
  • fix/wallet-transactions-test
  • fix_electrum_panics
  • generic_checkpoint
  • grcov_temp_fix
  • improve_safety_on_finalize_psbt
  • improve_triage
  • index-spk-ref
  • kwsantiago/1973-simplify-examples
  • master
  • mempool_evicted
  • merkle_batching
  • min_confirmations
  • miniscript_bump
  • missing_marker
  • msrv_flate2
  • msrv_once_cell
  • optional_data
  • owned-k
  • patch-1
  • persist_first_seen
  • pin_chain_version_for_wallet
  • pin_webpki
  • populate-anchor-cache
  • rayon_msrv
  • redb
  • refactor/canonical-iter-api
  • refactor/cleanup_create_tx
  • refactor/coin_selection_amounts
  • refactor/make-chainoracle-infallible
  • refactor/next-unused-address-rename-to-last-unused-address
  • refactor/remove-chain-oracle-dependency-from-canonical-iter
  • refactor/use-iterators-to-preselect-utxos
  • refactor/wallet-tests
  • refs/tags/before_1380
  • refs/tags/bitcoind_rpc-0.18.0
  • refs/tags/bitcoind_rpc-0.21.0
  • refs/tags/bitcoind_rpc-0.22.0
  • refs/tags/chain-0.23.1
  • refs/tags/chain-0.23.2
  • refs/tags/core-0.6.1
  • refs/tags/core-0.6.2
  • refs/tags/electrum-0.21.0
  • refs/tags/electrum-0.23.1
  • refs/tags/electrum-0.23.2
  • refs/tags/esplora-0.22.1
  • refs/tags/file_store-0.19.0
  • refs/tags/file_store-0.21.1
  • refs/tags/file_store-0.22.0
  • refs/tags/testenv-0.13.1
  • refs/tags/v1.0.0-alpha.10
  • refs/tags/v1.0.0-alpha.11
  • refs/tags/v1.0.0-alpha.12
  • refs/tags/v1.0.0-alpha.13
  • refs/tags/v1.0.0-alpha.7
  • refs/tags/v1.0.0-alpha.8
  • refs/tags/v1.0.0-alpha.9
  • refs/tags/v1.0.0-beta.1
  • refs/tags/v1.0.0-beta.2
  • refs/tags/v1.0.0-beta.3
  • refs/tags/v1.0.0-beta.4
  • refs/tags/v1.0.0-beta.5
  • refs/tags/v1.0.0-beta.6
  • refs/tags/wallet-1.1.0
  • refs/tags/wallet-1.2.0
  • release/0.23.2
  • release/bdk-chain-0.23.1
  • release/bump-crates-version
  • release/bump_dev_1.0.0
  • release/bump_dev_1.0.0_beta.6
  • release/chain-0.23.2
  • release/wallet-1.1
  • release/wallet-1.2.0
  • release_0_23_0
  • release_chain_0_22_0
  • remove-indexed-tx-graph
  • sanitize_derivation_index_in_apply_changeset
  • serde-sync-response
  • socket2-msrv
  • socket2_msrv
  • superimposed_canonicalization
  • test-arm-runner
  • test-excluded-bound
  • test/add-canonical-iter-topological-order-tests
  • test/merge
  • test/move-txtemplate-to-testenv
  • test_electrum_fee_calculation
  • test_timelock_descriptors
  • time_core_msrv
  • tracing-core
  • tracing_feature
  • tx-builder-2-16
  • tx-graph-from-changeset
  • tx_builder_default_version
  • tx_update_cleanup
  • update-dependencies-1797

29 Sep 2025 01:41AM UTC coverage: 78.657% (-0.7%) from 79.35%
18087963416

push

github

oleonardolima
Merge bitcoindevkit/bdk#2029: `CanonicalView`

1311a2ed0 refactor(chain)!: Change trust_predicate to accept FullTxOut (志宇)
3f9eec54e refactor(example): Reuse `CanonicalView` in filter iter example (志宇)
40790d006 docs(chain): Tighten `CanonicalView` documentation (志宇)
f444a8de3 refactor(chain)!: Rename `CanonicalViewTx` to `CanonicalTx` (志宇)
8ad138d02 docs(chain): Improve CanonicalView documentation (志宇)
beb16a146 feat(chain)!: Remove `CanonicalTx` (志宇)
54409bc4a test(chain): Add comprehensive tests for min_confirmations parameter (志宇)
45249457a feat(chain): Add min_confirmations parameter to CanonicalView::balance (志宇)
0a55710ea feat(chain)!: Introduce `CanonicalView` and migrate API (志宇)

Pull request description:

  ### Description

  `CanonicalView` allows us to canonicalize upfront, reducing our API surface and improving performance by reducing canonicalizations we need to do.

  This is also the first step to achieving many of our goals.

  * Event notifications.
  * Intent tracker.
  * Getting rid of `CanonicalUnspents` structure in `bdk_tx`.

  ### Changelog notice

  ```md
  Added
  - Introduce `CanonicalView` which allows us to canonicalize once upfront.
  - Added `TxGraph::canonical_view` which constructs a `CanonicalView`.

  Changed
  - `TxGraph` methods which require canonicalization now have `CanonicalView` equivalents.

  Removed
  - `TxGraph` methods which take in a fallible `ChainOracle` implementations are now removed.

  ```

  ### Checklists

  #### All Submissions:

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

  #### New Features:

  * [x] I've added tests for the new feature
  * [x] I'v... (continued)

378 of 512 branches covered (73.83%)

Branch coverage included in aggregate %.

212 of 241 new or added lines in 3 files covered. (87.97%)

26 existing lines in 3 files now uncovered.

4203 of 5312 relevant lines covered (79.12%)

3237.7 hits per line

Relevant lines Covered
Build:
Build:
5312 RELEVANT LINES 4203 COVERED LINES
3237.7 HITS PER LINE
Source Files on release/chain-0.23.x
  • Tree
  • List 28
  • Changed 4
  • Source Changed 0
  • Coverage Changed 4
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
18087963416 release/chain-0.23.x Merge bitcoindevkit/bdk#2029: `CanonicalView` 1311a2ed0 refactor(chain)!: Change trust_predicate to accept FullTxOut (志宇) 3f9eec54e refactor(example): Reuse `CanonicalView` in filter i... push 29 Sep 2025 06:32AM UTC oleonardolima github
78.66
See All Builds (3904)
  • Repo on GitHub
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

© 2025 Coveralls, Inc