Skip to content

Commit

Permalink
Release 8.0.0
Browse files Browse the repository at this point in the history
  • Loading branch information
sanket1729 committed Sep 19, 2022
1 parent 8fcbeb1 commit 6f3c967
Show file tree
Hide file tree
Showing 2 changed files with 34 additions and 2 deletions.
32 changes: 32 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,35 @@
# 8.0.0 - Sept 18, 2022

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

# 7.0.0 - April 20, 2022

- Fixed miniscript type system bug. This is a security vulnerability and users are strongly encouraged to upgrade.
Expand Down
4 changes: 2 additions & 2 deletions Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
[package]
name = "miniscript"
version = "7.0.0"
version = "8.0.0"
authors = ["Andrew Poelstra <apoelstra@wpsoftware.net>, Sanket Kanjalkar <sanket1729@gmail.com>"]
license = "CC0-1.0"
homepage = "https://github.com/rust-bitcoin/rust-miniscript/"
repository = "https://github.com/rust-bitcoin/rust-miniscript/"
description = "Miniscript: a subset of Bitcoin Script designed for analysis"
keywords = [ "crypto", "bitcoin"]
keywords = [ "crypto", "bitcoin", "miniscript", "script" ]
readme = "README.md"
edition = "2018"

Expand Down

0 comments on commit 6f3c967

Please sign in to comment.