Skip to content

Latest commit

 

History

History
130 lines (79 loc) · 3.77 KB

CHANGELOG.md

File metadata and controls

130 lines (79 loc) · 3.77 KB

1.20.0.0 — 2024-01-15

Added

Fixed

  • The blake2b_224 function in the plutus-tx plugin was erroneously calling blake2b_256 instead. Now fixed.

1.19.0.0 — 2023-12-23

Changed

  • The group elements bls12_381_G1_zero and bls12_381_G1_generator have been replaced with bytestrings called bls12_381_G1_compressed_zero and bls12_381_G1_compressed generator, and similarly for bls12_381_G2_zero and bls12_381_G2_generator. PlutusTx scripts should apply bls12_381_G2_uncompress or bls12_381_G2_uncompress to the compressed versions to recover the group elements.

  • Improved the performance of PlutusTx.AssocMap.insert and PlutusTx.AssocMap.unionWith.

Fixed

  • The "safe" version of fromData was using an unsafe head function, so would crash on some malformed input instead of returning Nothing.

1.18.0.0 — 2023-12-06

Added

  • A more informative error message when the plugin encounters a literal range
  • PlutusTx.enumFromThenTO for ranges like [1,5..101]

1.17.0.0 — 2023-11-22

Changed

  • Generated instances for IsData now have more efficient codegen, but require ViewPatterns.

1.13.0.0 — 2023-09-15

Added

  • asData, a TH function for creating datatype declarations that are backed by Data, which can be much faster in some circumstances.

  • Generic instances for Rational and BuiltinData.

Fixed

  • Fixed a strictness issue in generated IsData instaces when using -O0 in Plutus Tx.

1.12.0.0 — 2023-09-01

Changed

  • The Strict extension is now on by default in all of Plutus Tx.

1.10.0.0 — 2023-08-02

Added

  • Haskell function for keccak_256 builtin
  • Haskell function for blake2b_224 builtin

1.8.0.0 — 2023-06-22

Added

  • New built-in types and functions for BLS12-381 operations.

1.7.0.0 — 2023-05-22

Added

  • GHC 9.6 support

Changed

  • Monomorphized functions in PlutusTx.Foldable that should short-circuit. This makes them short-circuit properly.

  • liftCode and some other functions in PlutusTx.Lift now return PIR in addition to UPLC.

1.6.0.0 — 2023-05-04

Changed

  • Various Lift functions gained Version arguments, so that you can control the version of PLC used in the resulting program. This also affects how the PIR compiler will compile datatypes.

1.4.0.0 — 2023-03-23

Added

  • unsafeApplyCode, a variant of applyCode that throws if the language versions don't match.

Changed

  • applyCode now requires matching Plutus Core language versions.

1.3.0.0 — 2023-03-08

Removed

  • Removed Plutus Tx library functions with the Haskell.Monad constraint. Functions requiring Functor and Applicative are using PlutusTx.Functor and PlutusTx.Applicative, but those requiring Monad were using Haskell's Monad, which is inconsistent and confusing. We should either add a PlutusTx.Monad class, or switch to Haskell's Functor and Applicative. Some of these functions like sequence_ and mapM_ are also not useful, and one should prefer sequenceA_ and traverse_, respectively.

Changed

  • Use foldr instead of foldMap in PlutusTx.Foldable