Closed dr-orlovsky closed 1 year ago
All modified lines are covered by tests :white_check_mark:
Files | Coverage Δ | |
---|---|---|
consensus/src/block.rs | 20.0% <ø> (ø) |
|
consensus/src/coding.rs | 82.1% <ø> (ø) |
|
consensus/src/script.rs | 17.8% <ø> (ø) |
|
consensus/src/segwit.rs | 11.2% <ø> (ø) |
|
consensus/src/sigtypes.rs | 27.5% <ø> (ø) |
|
consensus/src/stl.rs | 96.2% <ø> (ø) |
|
consensus/src/taproot.rs | 34.2% <ø> (ø) |
|
consensus/src/tx.rs | 54.8% <ø> (ø) |
|
consensus/src/util.rs | 6.1% <ø> (ø) |
|
consensus/src/weights.rs | 3.2% <ø> (ø) |
:loudspeaker: Thoughts on this report? Let us know!.
Primitives library was originally created to present only those Bitcoin consensus-level data structures which were used in RGB Core.
However, work on wallet-level libraries had required implementing all other data types which may be found in blocks (i.e. part of the consensus layer) - as well as doing encoding for such structures (without it it won't be possible to prepare and publish a new transaction). This library was a natural place for putting this stuff - since once implemented it must never change unless bitcoin consensus rules change with a new soft fork - or a bug is discovered. These are the exact same conditions under which
BP Core
operates and ossifies, thus, now we havebp-primitives
working with all bitcoin consensus-level tasks (aside from validation), and it was quite natural to rename the library.Now, this
bp-consensus
crate is an alternative torust-bitcoin
consensus
module - but unlikerust-bitcoin
these part will maintain immutable and ossified API and are clearly separated from wallet parts (PSBTs, BIP32, addresses etc) which change and evolve all the time.CC @zoedberg @crisdut @cryptoquick