Skip to content

Releases: IntersectMBO/plutus

1.56.0.0

12 Dec 11:38
e75d9d7

Choose a tag to compare

plutus-core

Changed

  • Updated benchmark data and cost model parameters for Value-related builtins (lookupCoin, valueContains, valueData, unValueData) based on fresh benchmark measurements.

  • Add support for nothunks == 0.3.*

plutus-ledger-api

Added

  • To v3: numerator,denominator,unsafeRatio

Changed

  • In v3: renamed fromGHC/toGHC to fromRatioHaskell/toRatioHaskell

  • Add support for nothunks == 0.3.*

plutus-tx

Removed

  • PlutusTx.Ratio: half

Added

  • Enum Ratio instance that mimicks Haskell's instance

Changed

  • Renamed Ratio's fromGHC/toGHC to fromRatioHaskell/toRatioHaskell

  • Made the (&&) and (||) operators short-circuit also in the Haskell side.
    uplc code is unaffected and is already short-circuiting.

plutus-tx-plugin

No changes.

plutus-executables

No changes.

plutus-metatheory

No changes.

Full Changelog: 1.55.0.0...1.56.0.0

1.55.0.0

12 Nov 11:32
4a91d93

Choose a tag to compare

plutus-core

Added

  • Implementations of ScaleValue primitives.

Changed

  • Renamed 'Size' types functions to AstSize

  • In #7323 made the Constr, List and Map builtins 7+% faster.

  • Updated the Plutus Core specification to allow names with optional numeric suffixes (e.g., name-42) in #7396, resolving the discrepancy between the formal grammar and the parser implementation.

plutus-ledger-api

Added

  • The two BLS12-381 multi-scalar multiplication functions
    bls12_381_G1_multiScalarMul and bls12_381_G2_multiScalarMul will become
    available on the chain at Protocol Version 11 once a protocol parameter update
    has taken place to add the relevant cost model parameters.

Fixed

  • Allows PlutusV3 scripts with the v1.0.0 Plutus Core language version.

plutus-tx

Changed

  • Renamed 'Size' types functions to AstSize

plutus-tx-plugin

Removed

  • Removed the experimental compiler certification option temporarily due to ghc issues regarding the profiling build of plutus-metatheory.

Changed

  • Renamed 'Size' types functions to AstSize

plutus-executables

No changes.

plutus-metatheory

No changes.

Full Changelog: 1.54.0.0...1.55.0.0

1.53.1.0

18 Nov 18:14
ac80393

Choose a tag to compare

Full Changelog: 1.53.0.0...1.53.1.0

1.54.0.0

23 Sep 11:59
4d2c553

Choose a tag to compare

1.54.0.0 Pre-release
Pre-release

plutus-core

Added

  • Built-in type Value, and the implementations of insertCoin and unionValue.

  • Added the bls MSM built-in to plutus-core in #4255

  • Implementations of LookupCoin and ValueContains primitives.

  • Implementations of ValueData and UnValueData primitives.

Changed

  • Change default compiler option datatypes from BuiltinCasing back to SumsOfProducts

plutus-ledger-api

Added

  • Added the bls MSM built-in to plutus-core in #4255

plutus-tx

Added

  • Added the bls MSM built-in to plutus-core in #4255

plutus-tx-plugin

Added

  • Added the bls MSM built-in to plutus-core in #4255

plutus-executables

No changes.

plutus-metatheory

No changes.

Full Changelog: 1.53.0.0...1.54.0.0

Release 1.53.0.0

04 Sep 14:31
a27c1b7

Choose a tag to compare

What's Changed

New Contributors

  • @Copilot made their first contribution in #7276

Full Changelog: 1.52.0.0...1.53.0.0

1.52.0.0

18 Aug 19:38

Choose a tag to compare

What's Changed

Full Changelog: 1.51.0.0...1.52.0.0

Release 1.51.0.0

30 Jul 16:41
df5449b

Choose a tag to compare

What's Changed

  • Include changelog.d fragment files in git add in release script by @zeme-wana in #7228
  • Add arrays to metatheory by @ramsay-t in #7127
  • More tests, conformance test cases for builtin integer, bool, list casing by @SeungheonOh in #7218
  • Add cardano open oracle protocol scripts for plutus-benchmark by @SeungheonOh in #7156
  • Enable SoPs and all builtins in PlutusV1/V2 at PV11. by @kwxm in #7223
  • Release 1.50.0.0 by @Unisay in #7227
  • Bump on-headers to 1.1.0 in doc/docusaurus/package.json by @zeme-wana in #7234
  • Bump plutus versions to 1.50 in plutus-benchmark.cabal by @zeme-wana in #7237
  • Allow 'turtle' package to use a new version of 'optparse-applicative' by @zeme-wana in #7236
  • Get nofib-exe to print out names with uniques by @kwxm in #7226
  • Invert some error messages in plutus-ledger-api tests by @kwxm in #7240
  • Update Values.md by @kwxm in #7244
  • Renumber multisig-sm validation scripts by @kwxm in #7245
  • Change case order for two branch builtin list casing by @SeungheonOh in #7247
  • Release 1.51.0.0 by @ana-pantilie in #7250

Full Changelog: 1.50.0.0...1.51.0.0

1.50.0.0

24 Jul 08:11
aaa408b

Choose a tag to compare

plutus-core

Removed

  • Removed the caseList and caseData builtins in preparation for adding direct Caseing on lists and Data.

Added

  • In #7029 added support for Caseing on booleans and integers. For example, case True a b now evaluates to b.

  • Added a new UPLC optimisation which removes force when applied to case expressions where each branch contains a delay at the top, or if the delay is under any number of lambda abstractions.

  • Added a new emitter mode logWithCallTraceEmitter which uses trace messages generated by PlutusTx.Plugin:profile-all flag of plutus-tx-plugin to create call trace of the functions that led to the evaluation failure. If script passes or script is not compiled with profile-all flag, logWithCallTraceEmitter will behave as regular logEmitter.

  • Added support for Caseing on builtin lists. When Caseing a builtin list, exactly one or two branches are allowed: with a single branch, Case assumes the list is non-empty and applies the head element and the tail to that branch; with two branches, the first branch is selected if the list is empty (and takes no arguments), and the second branch is chosen if the list is non-empty, receiving the head element and the tail as its arguments. Note, the single branch WILL FAIL the script evaluation if empty list is given.

Changed

  • Drop hex-text package in favor of base16-bytestring.

  • Disable Plutus executable build for wasm

plutus-ledger-api

Added

  • PlutusLedgerApi.Envelope module with two functions:
    • compiledCodeEnvelope: creates a JSON envelope for CompiledCode with a description.
    • writeCodeEnvelope: writes a JSON envelope for CompiledCode to a file.

plutus-tx

Added

  • Module 'PlutusTx.Test.Util.Compiled' of the 'plutus-tx-testlib' package got a new function 'countFlatBytes' that counts the size of a 'CompiledCode' in Flat bytes.

plutus-tx-plugin

No changes.

plutus-executables

No changes.

plutus-metatheory

Fixed

Full Changelog: 1.49.0.0...1.50.0.0

1.49.0.0

10 Jul 07:58
2444cd9

Choose a tag to compare

plutus-core

Added

  • In #7029 added support for Caseing on booleans and integers. For example, case True a b now evaluates to b.

  • Added a new UPLC optimisation which removes force when applied to case expressions where each branch contains a delay at the top, or if the delay is under any number of lambda abstractions.

Changed

  • Drop hex-text package in favor of base16-bytestring.

plutus-ledger-api

No changes.

plutus-tx

Added

  • Module 'PlutusTx.Test.Util.Compiled' of the 'plutus-tx-testlib' package got a new function 'countFlatBytes' that counts the size of a 'CompiledCode' in Flat bytes.

plutus-tx-plugin

No changes.

plutus-executables

No changes.

plutus-metatheory

No changes.

Full Changelog: 1.48.0.0...1.49.0.0

1.48.0.0

26 Jun 17:39
f7a8c31

Choose a tag to compare

plutus-core

No changes.

plutus-ledger-api

No changes.

plutus-tx

No changes.

plutus-tx-plugin

No changes.

plutus-executables

No changes.

plutus-metatheory

No changes.

Full Changelog: 1.47.0.0...1.48.0.0