Skip to content

Latest commit

 

History

History
78 lines (63 loc) · 3.3 KB

CHANGELOG.md

File metadata and controls

78 lines (63 loc) · 3.3 KB

7.0.0 - April 20, 2022

  • Fixed miniscript type system bug. This is a security vulnerability and users are strongly encouraged to upgrade. See this (link)[https://github.com/rust-bitcoin/rust-miniscript/pull/349/commits/db97c39afa4053c2c3917f04392f6e24964b3972] for details.
  • Support for tr descriptors with miniscript leaves and multi_a fragment
  • Changes to MiniscriptKey and ToPublicKey traits for x-only keys support
  • Add PsbtExt trait for psbt operations
    • Psbt::update_desc adds information from a descriptor to a psbt. This figures out the type of the descriptor and adds corresponding redeem script/witness script and tap tree information
  • Add derived_descriptor API to Descriptor so that users no longer need to use translate APIs. See examples/xpub_descriptor for usage
  • Update DescriptorTrait: script_code and explicit_script can now fail because of taproot descriptors
  • Add PreTaprootDescriptor and PreTaprootDescriptorTrait to support non-failing versions of script_code and explicit_script for non taproot descriptors
  • Overhaul the interpreter API to provide simpler APIs iter(prevouts) and iter_assume_sig() so that it no longer takes a closure input.
  • Add interpreter support for taproot transactions.
  • Works with rust-bitcoin 0.28.0

6.0.1 - Aug 5, 2021

  • The lift method on a Miniscript node was fixed. It would previously mix up the X and Y argument of an andor fragment.

6.0.0 - Jul 29, 2021

  • bump rust-bitcoin to 0.27
  • several bugfixes

5.0.0 - Jan 14, 2021

  • Remove PkCtx from the API
  • Move descriptors into their own types, with an enum containing all of them
  • Move descriptor functionality into a trait
  • Remove FromStr bound from MiniscriptKeyand MiniscriptKey::Hash
  • Various DescriptorPublicKey improvements
  • Allow hardened paths in DescriptorPublicKey, remove direct ToPublicKey implementation
  • Change Option to Result in all APIs
  • bump rust-bitcoin to 0.26

4.0.0 - Nov 23, 2020

  • Add support for parsing secret keys
  • Add sortedmulti descriptor
  • Added standardness and other sanity checks
  • Cleaned up Error type and return values of most of the API
  • Overhauled satisfied_constraints module into a new Iterpreter API

3.0.0 - Oct 13, 2020

  • Bump MSRV to 1.29

2.0.0 - Oct 1, 2020

  • Changes to the miniscript type system to detect an invalid combination of heightlocks and timelocks
    • Lift miniscripts can now fail. Earlier it always succeeded and gave the resulting Semantic Policy
    • Compiler will not compile policies that contain at least one unspendable path
  • Added support for Descriptor PublicKeys(xpub)
  • Added a generic psbt finalizer and extractor
  • Updated Satisfaction API for checking time/height before setting satisfaction
  • Added a policy entailment API for more miniscript semantic analysis

1.0.0 - July 6, 2020

  • Added the following aliases to miniscript for ease of operations
    • Rename pk to pk_k
    • Rename thresh_m to multi
    • Add alias pk(K) = c:pk_k(K)
    • Add alias pkh(K) = c:pk_h(K)
  • Fixed Miniscript parser bugs when decoding Hashlocks
  • Added scriptContext(Legacy and Segwitv0) to Miniscript.
  • Miscellaneous fixes against DoS attacks for heavy nesting.
  • Fixed Satisfier bug that caused flipping of arguments for and_v and and_n and and_or