Commit 00efcde
committed
Merge #2029:
1311a2e refactor(chain)!: Change trust_predicate to accept FullTxOut (志宇)
3f9eec5 refactor(example): Reuse `CanonicalView` in filter iter example (志宇)
40790d0 docs(chain): Tighten `CanonicalView` documentation (志宇)
f444a8d refactor(chain)!: Rename `CanonicalViewTx` to `CanonicalTx` (志宇)
8ad138d docs(chain): Improve CanonicalView documentation (志宇)
beb16a1 feat(chain)!: Remove `CanonicalTx` (志宇)
54409bc test(chain): Add comprehensive tests for min_confirmations parameter (志宇)
4524945 feat(chain): Add min_confirmations parameter to CanonicalView::balance (志宇)
0a55710 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've added docs for the new feature
ACKs for top commit:
evanlinjin:
self-ACK 1311a2e
ValuedMammal:
ACK 1311a2e
oleonardolima:
ACK 1311a2e
Tree-SHA512: 520879ac5aba37ae53d6fa0465ee5920d65108208f82e9092fc6d391f9ce5741198c474fe49462e3bf6ed9f65f94f6019be0c0e02a0b19bcdb8398eb1c7ea3e0CanonicalView
File tree
19 files changed
+950
-703
lines changed- crates
- bitcoind_rpc
- examples
- tests
- chain
- benches
- src
- tests
- electrum/tests
- esplora/tests
- examples
- example_bitcoind_rpc_polling/src
- example_cli/src
- example_electrum/src
- example_esplora/src
19 files changed
+950
-703
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
68 | 68 | | |
69 | 69 | | |
70 | 70 | | |
71 | | - | |
72 | | - | |
73 | | - | |
74 | | - | |
75 | | - | |
76 | | - | |
77 | | - | |
78 | | - | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
79 | 76 | | |
80 | 77 | | |
81 | 78 | | |
| |||
85 | 82 | | |
86 | 83 | | |
87 | 84 | | |
88 | | - | |
89 | | - | |
90 | | - | |
91 | | - | |
92 | | - | |
93 | | - | |
94 | | - | |
95 | | - | |
96 | | - | |
97 | | - | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
98 | 88 | | |
99 | 89 | | |
100 | 90 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
310 | 310 | | |
311 | 311 | | |
312 | 312 | | |
313 | | - | |
314 | | - | |
315 | | - | |
316 | | - | |
317 | | - | |
318 | | - | |
319 | | - | |
| 313 | + | |
| 314 | + | |
| 315 | + | |
320 | 316 | | |
321 | 317 | | |
322 | 318 | | |
| |||
621 | 617 | | |
622 | 618 | | |
623 | 619 | | |
624 | | - | |
| 620 | + | |
| 621 | + | |
625 | 622 | | |
626 | 623 | | |
627 | 624 | | |
| |||
636 | 633 | | |
637 | 634 | | |
638 | 635 | | |
639 | | - | |
640 | | - | |
641 | | - | |
| 636 | + | |
| 637 | + | |
| 638 | + | |
642 | 639 | | |
643 | 640 | | |
644 | 641 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
95 | 95 | | |
96 | 96 | | |
97 | 97 | | |
98 | | - | |
| 98 | + | |
99 | 99 | | |
100 | 100 | | |
101 | 101 | | |
102 | 102 | | |
| 103 | + | |
103 | 104 | | |
104 | 105 | | |
105 | 106 | | |
106 | 107 | | |
107 | | - | |
| 108 | + | |
108 | 109 | | |
109 | 110 | | |
110 | 111 | | |
111 | | - | |
112 | 112 | | |
| 113 | + | |
113 | 114 | | |
114 | 115 | | |
115 | 116 | | |
116 | 117 | | |
117 | | - | |
| 118 | + | |
118 | 119 | | |
119 | 120 | | |
120 | 121 | | |
121 | | - | |
122 | 122 | | |
| 123 | + | |
123 | 124 | | |
124 | 125 | | |
125 | 126 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
84 | 84 | | |
85 | 85 | | |
86 | 86 | | |
87 | | - | |
88 | | - | |
89 | | - | |
90 | | - | |
91 | | - | |
92 | | - | |
93 | | - | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
94 | 90 | | |
95 | 91 | | |
96 | 92 | | |
| |||
0 commit comments