|
| 1 | +# 8.0.0 - Sept 18, 2022 |
| 2 | + |
| 3 | +This release includes several new features, bug fixes, and breaking changes. Below is the highlight of major changes in |
| 4 | +this release |
| 5 | +- Remove the `DescriptorTrait` (286)[https://github.com/rust-bitcoin/rust-miniscript/pull/286]. All the methods are |
| 6 | +now available under the Descriptor API without requiring to import the trait. |
| 7 | +- Add `no-std` support thanks to (PR)[https://github.com/rust-bitcoin/rust-miniscript/pull/277] |
| 8 | +- Added a Taproot descriptor Compiler support. The API now allows compiling policies to taproot descriptors |
| 9 | +that optimize privacy as well as spending costs at the same time. See (291)[https://github.com/rust-bitcoin/rust-miniscript/pull/291] |
| 10 | +for proof. (Policy::compile_to_descriptor)[https://github.com/rust-bitcoin/rust-miniscript/pull/352] allows directly |
| 11 | +to compile a policy to the given descriptor. |
| 12 | +- Add PsbtInputExt::update_with_descriptor API. See (PR)[https://github.com/rust-bitcoin/rust-miniscript/pull/339] |
| 13 | +- Reworked the TranslatePk APIs. Add a Translator trait to cleanly allow downstream users |
| 14 | +without dealing with APIs that accept function pointers. Also provides `translate_assoc_clone` and `translate_assoc_fail` |
| 15 | +macros for helping in writing code. |
| 16 | +- Updated MiniscriptKey trait to accept associated types for Sha256, Hash256, Ripemd160 and |
| 17 | +Hash160. This allows users to write abstract miniscripts hashes as "sha256(H)" |
| 18 | +instead of specifying the entire hash in the string. |
| 19 | +that updates the psbt with descriptor bip32 paths. |
| 20 | +- The project now uses edition 2018 |
| 21 | +- Re-name (`as_public`)[https://github.com/rust-bitcoin/rust-miniscript/pull/377] APIs -> `to_public` |
| 22 | +- Add the `DerivedDescriptorKey` type for specifying DescriptorKeys without wildcards. Several APIs that required derived keys |
| 23 | +now use this type instead of `DescriptorPublicKey` |
| 24 | +- Significantly improve the timelock code with new rust-bitcoin APIs. (PR)[https://github.com/rust-bitcoin/rust-miniscript/pull/414] |
| 25 | +- rust-miniscript minor implementation detail: `PkH` fragment now has `Pk` generic instead of `Pk::Hash`. This only concerns users |
| 26 | +that operate with `MiniscriptKey = bitcoin::PublicKey` or users that use custom implementation of `MiniscriptKey`. Users that use |
| 27 | +`DescriptorPublicKey` need not be concerned. |
| 28 | +To elaborate, "pkh(<20-byte-hex>)" is no longer parsed by the `MiniscriptKey = bitcoin::PublicKey`. This is consistent |
| 29 | +with the descriptor spec as defined. Parsing from `bitcoin::Script` for pkh<20-byte-hex> is still supported, but the library |
| 30 | +would not analyze them. These raw descriptors are still in spec discussions. Rust-miniscript will support them once they are completely specified. |
| 31 | + |
1 | 32 | # 7.0.0 - April 20, 2022
|
2 | 33 |
|
3 | 34 | - Fixed miniscript type system bug. This is a security vulnerability and users are strongly encouraged to upgrade.
|
|
0 commit comments