diff --git a/cardano-constitution/cardano-constitution.cabal b/cardano-constitution/cardano-constitution.cabal
index 5ee23f3b036..659315f6c48 100644
--- a/cardano-constitution/cardano-constitution.cabal
+++ b/cardano-constitution/cardano-constitution.cabal
@@ -1,6 +1,6 @@
cabal-version: 3.0
name: cardano-constitution
-version: 1.60.0.0
+version: 1.62.0.0
license: Apache-2.0
license-files:
LICENSE
@@ -86,10 +86,10 @@ library
, base >=4.9 && <5
, containers
, filepath
- , plutus-core ^>=1.60
- , plutus-ledger-api ^>=1.60
- , plutus-tx ^>=1.60
- , plutus-tx-plugin ^>=1.60
+ , plutus-core ^>=1.62
+ , plutus-ledger-api ^>=1.62
+ , plutus-tx ^>=1.62
+ , plutus-tx-plugin ^>=1.62
, regex-tdfa
, safe
, template-haskell
@@ -132,10 +132,10 @@ test-suite cardano-constitution-test
, containers
, directory
, filepath
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
, plutus-core:plutus-core-testlib
- , plutus-ledger-api ^>=1.60
- , plutus-tx ^>=1.60
+ , plutus-ledger-api ^>=1.62
+ , plutus-tx ^>=1.62
, QuickCheck
, serialise
, tasty
@@ -152,4 +152,4 @@ executable create-json-envelope
build-depends:
, base
, cardano-constitution
- , plutus-ledger-api ^>=1.60
+ , plutus-ledger-api ^>=1.62
diff --git a/doc/docusaurus/docusaurus-examples.cabal b/doc/docusaurus/docusaurus-examples.cabal
index 45291350b92..4a67c660563 100644
--- a/doc/docusaurus/docusaurus-examples.cabal
+++ b/doc/docusaurus/docusaurus-examples.cabal
@@ -40,10 +40,10 @@ library docusaurus-code
build-depends:
, base >=4.9 && <5
- , plutus-core ^>=1.60
- , plutus-ledger-api ^>=1.60
- , plutus-tx ^>=1.60
- , plutus-tx-plugin ^>=1.60
+ , plutus-core ^>=1.62
+ , plutus-ledger-api ^>=1.62
+ , plutus-tx ^>=1.62
+ , plutus-tx-plugin ^>=1.62
executable example-cip57
import: lang, ghc-version-support, os-support
@@ -54,9 +54,9 @@ executable example-cip57
build-depends:
, base ^>=4.18
, containers
- , plutus-ledger-api ^>=1.60
- , plutus-tx ^>=1.60
- , plutus-tx-plugin ^>=1.60
+ , plutus-ledger-api ^>=1.62
+ , plutus-tx ^>=1.62
+ , plutus-tx-plugin ^>=1.62
executable example-evaluation
import: lang, ghc-version-support, os-support
@@ -66,9 +66,9 @@ executable example-evaluation
other-modules: Paths_docusaurus_examples
build-depends:
, base ^>=4.18
- , plutus-ledger-api ^>=1.60
- , plutus-tx ^>=1.60
- , plutus-tx-plugin ^>=1.60
+ , plutus-ledger-api ^>=1.62
+ , plutus-tx ^>=1.62
+ , plutus-tx-plugin ^>=1.62
, plutus-tx:plutus-tx-testlib
, text
@@ -87,9 +87,9 @@ executable example-builtin-array
build-depends:
, base ^>=4.18
, colourista
- , plutus-core ^>=1.60
- , plutus-tx ^>=1.60
- , plutus-tx-plugin ^>=1.60
+ , plutus-core ^>=1.62
+ , plutus-tx ^>=1.62
+ , plutus-tx-plugin ^>=1.62
, plutus-tx:plutus-tx-testlib
, text
@@ -109,6 +109,6 @@ executable quickstart
, base >=4.9 && <5
, base16-bytestring
, bytestring
- , plutus-ledger-api ^>=1.60
- , plutus-tx ^>=1.60
- , plutus-tx-plugin ^>=1.60
+ , plutus-ledger-api ^>=1.62
+ , plutus-tx ^>=1.62
+ , plutus-tx-plugin ^>=1.62
diff --git a/plutus-benchmark/plutus-benchmark.cabal b/plutus-benchmark/plutus-benchmark.cabal
index 863aa78620f..d1c28932a5d 100644
--- a/plutus-benchmark/plutus-benchmark.cabal
+++ b/plutus-benchmark/plutus-benchmark.cabal
@@ -97,9 +97,9 @@ library plutus-benchmark-common
, deepseq
, directory
, filepath
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
, plutus-core:flat
- , plutus-ledger-api ^>=1.60
+ , plutus-ledger-api ^>=1.62
, plutus-tx:plutus-tx-testlib
, tasty
, tasty-golden
@@ -126,9 +126,9 @@ library nofib-internal
, base >=4.9 && <5
, deepseq
, plutus-benchmark-common
- , plutus-core ^>=1.60
- , plutus-tx ^>=1.60
- , plutus-tx-plugin ^>=1.60
+ , plutus-core ^>=1.62
+ , plutus-tx ^>=1.62
+ , plutus-tx-plugin ^>=1.62
executable nofib-exe
import: lang, ghc-version-support, os-support
@@ -141,9 +141,9 @@ executable nofib-exe
, nofib-internal
, optparse-applicative
, plutus-benchmark-common
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
, plutus-core:flat
- , plutus-tx ^>=1.60
+ , plutus-tx ^>=1.62
, prettyprinter
, transformers
@@ -181,9 +181,9 @@ test-suite plutus-benchmark-nofib-tests
, base >=4.9 && <5
, nofib-internal
, plutus-benchmark-common
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
, plutus-core:plutus-core-testlib
- , plutus-tx ^>=1.60
+ , plutus-tx ^>=1.62
, plutus-tx:plutus-tx-testlib
, tasty
, tasty-hunit
@@ -210,9 +210,9 @@ library lists-internal
, base >=4.9 && <5
, mtl
, plutus-benchmark-common
- , plutus-core ^>=1.60
- , plutus-tx ^>=1.60
- , plutus-tx-plugin ^>=1.60
+ , plutus-core ^>=1.62
+ , plutus-tx ^>=1.62
+ , plutus-tx-plugin ^>=1.62
executable list-sort-exe
import: lang, ghc-version-support, os-support
@@ -223,7 +223,7 @@ executable list-sort-exe
, lists-internal
, monoidal-containers
, plutus-benchmark-common
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
benchmark lists
import: lang, ghc-version-support, os-support
@@ -235,7 +235,7 @@ benchmark lists
, criterion >=1.5.9.0
, lists-internal
, plutus-benchmark-common
- , plutus-ledger-api ^>=1.60
+ , plutus-ledger-api ^>=1.62
test-suite plutus-benchmark-lists-tests
import: lang, ghc-version-support, os-support
@@ -252,8 +252,8 @@ test-suite plutus-benchmark-lists-tests
, base >=4.9 && <5
, lists-internal
, plutus-benchmark-common
- , plutus-core:plutus-core-testlib ^>=1.60
- , plutus-tx:plutus-tx-testlib ^>=1.60
+ , plutus-core:plutus-core-testlib ^>=1.62
+ , plutus-tx:plutus-tx-testlib ^>=1.62
, tasty
, tasty-quickcheck
@@ -267,7 +267,7 @@ library casing-internal
, base >=4.9 && <5
, mtl
, plutus-benchmark-common
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
benchmark casing
import: lang, ghc-version-support, os-support
@@ -279,7 +279,7 @@ benchmark casing
, casing-internal
, criterion >=1.5.9.0
, plutus-benchmark-common
- , plutus-ledger-api ^>=1.60
+ , plutus-ledger-api ^>=1.62
---------------- data ----------------
@@ -292,7 +292,7 @@ library data-internal
, bytestring
, mtl
, plutus-benchmark-common
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
benchmark data
import: lang, ghc-version-support, os-support
@@ -305,7 +305,7 @@ benchmark data
, criterion >=1.5.9.0
, data-internal
, plutus-benchmark-common
- , plutus-ledger-api ^>=1.60
+ , plutus-ledger-api ^>=1.62
---------------- force-delay ----------------
@@ -324,7 +324,7 @@ library force-delay-internal
, filepath
, optparse-applicative
, plutus-benchmark-common
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
, plutus-core:flat
, text
@@ -337,8 +337,8 @@ benchmark force-delay
, base >=4.9 && <5
, force-delay-internal
, plutus-benchmark-common
- , plutus-core ^>=1.60
- , plutus-ledger-api ^>=1.60
+ , plutus-core ^>=1.62
+ , plutus-ledger-api ^>=1.62
---------------- validation ----------------
@@ -354,7 +354,7 @@ library validation-internal
, filepath
, optparse-applicative
, plutus-benchmark-common
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
, plutus-core:flat
benchmark validation
@@ -365,8 +365,8 @@ benchmark validation
build-depends:
, base >=4.9 && <5
, plutus-benchmark-common
- , plutus-core ^>=1.60
- , plutus-ledger-api ^>=1.60
+ , plutus-core ^>=1.62
+ , plutus-ledger-api ^>=1.62
, validation-internal
test-suite validation-tests
@@ -381,10 +381,10 @@ test-suite validation-tests
, directory
, filepath
, plutus-benchmark-common
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
, plutus-core:flat
, plutus-core:plutus-core-testlib
- , plutus-tx ^>=1.60
+ , plutus-tx ^>=1.62
, plutus-tx:plutus-tx-testlib
, tasty
, validation-internal
@@ -401,8 +401,8 @@ benchmark validation-decode
, bytestring
, criterion >=1.5.9.0
, deepseq
- , plutus-core ^>=1.60
- , plutus-ledger-api ^>=1.60
+ , plutus-core ^>=1.62
+ , plutus-ledger-api ^>=1.62
, validation-internal
---------------- validation-full ----------------
@@ -417,8 +417,8 @@ benchmark validation-full
, bytestring
, criterion >=1.5.9.0
, deepseq
- , plutus-core ^>=1.60
- , plutus-ledger-api ^>=1.60
+ , plutus-core ^>=1.62
+ , plutus-ledger-api ^>=1.62
, validation-internal
---------------- Cek cost model calibration ----------------
@@ -435,10 +435,10 @@ benchmark cek-calibration
, lens
, mtl
, plutus-benchmark-common
- , plutus-core ^>=1.60
- , plutus-ledger-api ^>=1.60
- , plutus-tx ^>=1.60
- , plutus-tx-plugin ^>=1.60
+ , plutus-core ^>=1.62
+ , plutus-ledger-api ^>=1.62
+ , plutus-tx ^>=1.62
+ , plutus-tx-plugin ^>=1.62
---------------- Signature verification throughput ----------------
@@ -454,9 +454,9 @@ executable ed25519-costs
, cardano-crypto-class
, hedgehog
, plutus-benchmark-common
- , plutus-core ^>=1.60
- , plutus-tx ^>=1.60
- , plutus-tx-plugin ^>=1.60
+ , plutus-core ^>=1.62
+ , plutus-tx ^>=1.62
+ , plutus-tx-plugin ^>=1.62
-- Calculate the predicted costs of sequences of ed25519 signature verification
-- operations and compare them with a golden file.
@@ -473,10 +473,10 @@ test-suite ed25519-costs-test
, cardano-crypto-class
, hedgehog
, plutus-benchmark-common
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
, plutus-core:plutus-core-testlib
- , plutus-tx ^>=1.60
- , plutus-tx-plugin ^>=1.60
+ , plutus-tx ^>=1.62
+ , plutus-tx-plugin ^>=1.62
---------------- BLS12-381 experiments ----------------
@@ -494,10 +494,10 @@ library bls12-381lib-internal
, bytestring
, hedgehog
, plutus-benchmark-common
- , plutus-core ^>=1.60
- , plutus-ledger-api ^>=1.60
- , plutus-tx ^>=1.60
- , plutus-tx-plugin ^>=1.60
+ , plutus-core ^>=1.62
+ , plutus-ledger-api ^>=1.62
+ , plutus-tx ^>=1.62
+ , plutus-tx-plugin ^>=1.62
-- Print out predicted costs of various scripts involving BLS12-381 operations
executable bls12-381-costs
@@ -521,7 +521,7 @@ test-suite bls12-381-costs-test
, base >=4.9 && <5
, bls12-381lib-internal
, plutus-benchmark-common
- , plutus-core:plutus-core-testlib ^>=1.60
+ , plutus-core:plutus-core-testlib ^>=1.62
-- Run benchmarks for various scripts involving BLS12-381 operations
benchmark bls12-381-benchmarks
@@ -535,8 +535,8 @@ benchmark bls12-381-benchmarks
, bytestring
, criterion >=1.5.9.0
, plutus-benchmark-common
- , plutus-ledger-api ^>=1.60
- , plutus-tx ^>=1.60
+ , plutus-ledger-api ^>=1.62
+ , plutus-tx ^>=1.62
---------------- script contexts ----------------
@@ -553,9 +553,9 @@ library script-contexts-internal
build-depends:
, base >=4.9 && <5
- , plutus-ledger-api ^>=1.60
- , plutus-tx ^>=1.60
- , plutus-tx-plugin ^>=1.60
+ , plutus-ledger-api ^>=1.62
+ , plutus-tx ^>=1.62
+ , plutus-tx-plugin ^>=1.62
test-suite plutus-benchmark-script-contexts-tests
import: lang, ghc-version-support, os-support
@@ -571,8 +571,8 @@ test-suite plutus-benchmark-script-contexts-tests
build-depends:
, base >=4.9 && <5
, plutus-core:plutus-core-testlib
- , plutus-tx ^>=1.60
- , plutus-tx-plugin ^>=1.60
+ , plutus-tx ^>=1.62
+ , plutus-tx-plugin ^>=1.62
, plutus-tx:plutus-tx-testlib
, script-contexts-internal
, tasty
@@ -603,12 +603,12 @@ library marlowe-internal
, mtl
, newtype-generics
, plutus-benchmark-common
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
, plutus-core:flat
- , plutus-ledger-api ^>=1.60
+ , plutus-ledger-api ^>=1.62
, plutus-ledger-api:plutus-execlib
- , plutus-tx ^>=1.60
- , plutus-tx-plugin ^>=1.60
+ , plutus-tx ^>=1.62
+ , plutus-tx-plugin ^>=1.62
, serialise
executable marlowe-validators
@@ -629,8 +629,8 @@ executable marlowe-validators
, filepath
, marlowe-internal
, plutus-benchmark-common
- , plutus-ledger-api ^>=1.60
- , plutus-tx ^>=1.60
+ , plutus-ledger-api ^>=1.62
+ , plutus-tx ^>=1.62
, serialise
benchmark marlowe
@@ -645,7 +645,7 @@ benchmark marlowe
, filepath
, marlowe-internal
, plutus-benchmark-common
- , plutus-ledger-api ^>=1.60
+ , plutus-ledger-api ^>=1.62
test-suite plutus-benchmark-marlowe-tests
import: lang, ghc-version-support, os-support
@@ -662,9 +662,9 @@ test-suite plutus-benchmark-marlowe-tests
, marlowe-internal
, mtl
, plutus-benchmark-common
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
, plutus-core:plutus-core-testlib
- , plutus-ledger-api ^>=1.60
+ , plutus-ledger-api ^>=1.62
, tabular
, tasty
, tasty-golden
@@ -682,8 +682,8 @@ library agda-internal
build-depends:
, base >=4.9 && <5
, criterion
- , plutus-core ^>=1.60
- , plutus-metatheory ^>=1.60
+ , plutus-core ^>=1.62
+ , plutus-metatheory ^>=1.62
benchmark validation-agda-cek
import: lang, ghc-version-support, os-support,
@@ -695,7 +695,7 @@ benchmark validation-agda-cek
, base >=4.9 && <5
, deepseq
, plutus-benchmark-common
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
, validation-internal
benchmark nofib-agda-cek
@@ -724,7 +724,7 @@ benchmark marlowe-agda-cek
, filepath
, marlowe-internal
, plutus-benchmark-common
- , plutus-ledger-api ^>=1.60
+ , plutus-ledger-api ^>=1.62
-------------------- bitwise -----------------------
@@ -740,8 +740,8 @@ library bitwise-internal
build-depends:
, base
- , plutus-tx ^>=1.60
- , plutus-tx-plugin ^>=1.60
+ , plutus-tx ^>=1.62
+ , plutus-tx-plugin ^>=1.62
test-suite bitwise-test
import: lang, ghc-version-support, os-support
@@ -753,8 +753,8 @@ test-suite bitwise-test
, bitwise-internal
, cryptohash-sha512
, ed25519
- , plutus-core:plutus-core-testlib ^>=1.60
- , plutus-tx ^>=1.60
+ , plutus-core:plutus-core-testlib ^>=1.62
+ , plutus-tx ^>=1.62
, plutus-tx:plutus-tx-testlib
, tasty
, tasty-hunit
@@ -769,7 +769,7 @@ benchmark bitwise-bench
, bitwise-internal
, criterion
, plutus-benchmark-common
- , plutus-tx ^>=1.60
+ , plutus-tx ^>=1.62
------------------ linear vesting -------------------
@@ -817,8 +817,8 @@ library coop
, lens
, memory
, plutus-ledger-api
- , plutus-tx ^>=1.60
- , plutus-tx-plugin ^>=1.60
+ , plutus-tx ^>=1.62
+ , plutus-tx-plugin ^>=1.62
, QuickCheck
test-suite coop-test
@@ -829,9 +829,9 @@ test-suite coop-test
build-depends:
, base >=4.9 && <5
, coop
- , plutus-core:plutus-core-testlib ^>=1.60
+ , plutus-core:plutus-core-testlib ^>=1.62
, plutus-ledger-api
- , plutus-tx ^>=1.60
+ , plutus-tx ^>=1.62
, plutus-tx:plutus-tx-testlib
, tasty
@@ -849,7 +849,7 @@ executable gen-coop-flat
, plutus-core
, plutus-core:flat
, plutus-ledger-api
- , plutus-tx ^>=1.60
+ , plutus-tx ^>=1.62
, plutus-tx:plutus-tx-testlib
------------------ linear vesting -------------------
@@ -862,7 +862,7 @@ test-suite linear-vesting-test
build-depends:
, base >=4.9 && <5
, linear-vesting-internal
- , plutus-core:plutus-core-testlib ^>=1.60
+ , plutus-core:plutus-core-testlib ^>=1.62
, plutus-tx:plutus-tx-testlib
, tasty
@@ -898,7 +898,7 @@ test-suite cardano-loans-test
build-depends:
, base >=4.9 && <5
, cardano-loans-internal
- , plutus-core:plutus-core-testlib ^>=1.60
+ , plutus-core:plutus-core-testlib ^>=1.62
, plutus-tx:plutus-tx-testlib
, tasty
@@ -935,7 +935,7 @@ executable uplc-evaluator
, directory
, filepath
, optparse-applicative
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
, text
, uuid
, with-utf8
diff --git a/plutus-conformance/plutus-conformance.cabal b/plutus-conformance/plutus-conformance.cabal
index 89239b813b0..0e6d0ab80db 100644
--- a/plutus-conformance/plutus-conformance.cabal
+++ b/plutus-conformance/plutus-conformance.cabal
@@ -56,7 +56,7 @@ library
, base
, directory
, filepath
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
, plutus-core:plutus-core-testlib
, tasty
, tasty-expected-failure
@@ -80,7 +80,7 @@ test-suite haskell-conformance
build-depends:
, base >=4.9 && <5
, plutus-conformance
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
test-suite haskell-steppable-conformance
import: lang, os-support
@@ -92,7 +92,7 @@ test-suite haskell-steppable-conformance
build-depends:
, base >=4.9 && <5
, plutus-conformance
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
test-suite agda-conformance
import: lang, os-support, ghc-version-support
@@ -105,6 +105,6 @@ test-suite agda-conformance
, aeson
, base >=4.9 && <5
, plutus-conformance
- , plutus-core ^>=1.60
- , plutus-metatheory ^>=1.60
+ , plutus-core ^>=1.62
+ , plutus-metatheory ^>=1.62
, transformers
diff --git a/plutus-core/CHANGELOG.md b/plutus-core/CHANGELOG.md
index e04fc6d21c4..3d9a1b2ff4f 100644
--- a/plutus-core/CHANGELOG.md
+++ b/plutus-core/CHANGELOG.md
@@ -1,4 +1,18 @@
+
+# 1.61.0.0 — 2026-04-02
+
+## Added
+
+- Roundtrip and stable byte encoding tests for all Flat instances across
+ flat, plutus-core, plutus-ir, and untyped-plutus-core packages.
+- Standalone encoding generator executable (`cabal run flat-encoding-generator`)
+ for reproducing expected byte constants.
+
+## Fixed
+
+- Fixed `consClose` in the Flat decoder failing to advance the stream pointer past 1 byte, which corrupted decoder state for Generic-derived Flat instances of large enums (>256 constructors) and caused infinite memory consumption during deserialization.
+
# 1.60.0.0 — 2026-03-18
diff --git a/plutus-core/changelog.d/20260318_173434_yuriy.lazaryev_flat_test_coverage.md b/plutus-core/changelog.d/20260318_173434_yuriy.lazaryev_flat_test_coverage.md
deleted file mode 100644
index 7f671247063..00000000000
--- a/plutus-core/changelog.d/20260318_173434_yuriy.lazaryev_flat_test_coverage.md
+++ /dev/null
@@ -1,6 +0,0 @@
-### Added
-
-- Roundtrip and stable byte encoding tests for all Flat instances across
- flat, plutus-core, plutus-ir, and untyped-plutus-core packages.
-- Standalone encoding generator executable (`cabal run flat-encoding-generator`)
- for reproducing expected byte constants.
diff --git a/plutus-core/changelog.d/20260320_154057_yuriy.lazaryev_issue_7542_flat_enum_bug.md b/plutus-core/changelog.d/20260320_154057_yuriy.lazaryev_issue_7542_flat_enum_bug.md
deleted file mode 100644
index ba3cd485c75..00000000000
--- a/plutus-core/changelog.d/20260320_154057_yuriy.lazaryev_issue_7542_flat_enum_bug.md
+++ /dev/null
@@ -1,3 +0,0 @@
-### Fixed
-
-- Fixed `consClose` in the Flat decoder failing to advance the stream pointer past 1 byte, which corrupted decoder state for Generic-derived Flat instances of large enums (>256 constructors) and caused infinite memory consumption during deserialization.
diff --git a/plutus-core/plutus-core.cabal b/plutus-core/plutus-core.cabal
index 5ddeaf4b58c..e2c00f204b1 100644
--- a/plutus-core/plutus-core.cabal
+++ b/plutus-core/plutus-core.cabal
@@ -1,6 +1,6 @@
cabal-version: 3.0
name: plutus-core
-version: 1.60.0.0
+version: 1.62.0.0
license: Apache-2.0
license-files:
LICENSE
@@ -398,7 +398,7 @@ test-suite plutus-core-test
, hedgehog
, mmorph
, mtl
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
, plutus-core:flat
, plutus-core:plutus-core-testlib
, prettyprinter
@@ -495,7 +495,7 @@ library untyped-plutus-core-testlib
, lens
, megaparsec
, mtl
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
, plutus-core:flat
, plutus-core:plutus-core-testlib
, pretty-show
@@ -603,7 +603,7 @@ library plutus-ir
, mtl
, multiset
, parser-combinators >=0.4.0
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
, plutus-core:flat
, prettyprinter >=1.1.0.1
, profunctors
@@ -669,7 +669,7 @@ test-suite plutus-ir-test
, hedgehog
, lens
, mtl
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
, plutus-core:flat
, plutus-core:plutus-core-testlib
, plutus-core:plutus-ir
@@ -749,7 +749,7 @@ library plutus-core-testlib
, mmorph
, mtl
, multiset
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
, plutus-core:plutus-ir
, pretty-simple
, prettyprinter >=1.1.0.1
@@ -787,7 +787,7 @@ library plutus-ir-cert
exposed-modules: PlutusIR.Certifier
build-depends:
, base
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
, plutus-core:plutus-ir
----------------------------------------------
@@ -834,7 +834,7 @@ executable cost-model-budgeting-bench
, hedgehog
, mtl
, optparse-applicative
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
, QuickCheck
, quickcheck-instances
, random
@@ -873,7 +873,7 @@ executable generate-cost-model
, directory
, inline-r >=1.0.1
, optparse-applicative
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
, text
-- , exceptions
@@ -917,7 +917,7 @@ benchmark cost-model-test
, hedgehog
, inline-r >=1.0.1
, mmorph
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
, template-haskell
, text
@@ -934,7 +934,7 @@ executable print-cost-model
, aeson
, base >=4.9 && <5
, bytestring
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
-- Golden file generator for Flat encoding stability tests.
----------------------------------------------
diff --git a/plutus-executables/plutus-executables.cabal b/plutus-executables/plutus-executables.cabal
index 80b5d5f42f0..c3dbcc1ed38 100644
--- a/plutus-executables/plutus-executables.cabal
+++ b/plutus-executables/plutus-executables.cabal
@@ -1,6 +1,6 @@
cabal-version: 3.0
name: plutus-executables
-version: 1.60.0.0
+version: 1.62.0.0
synopsis: Tools for running plutus core programs
homepage: https://github.com/IntersectMBO/plutus
license: Apache-2.0
@@ -76,7 +76,7 @@ executable pir
, megaparsec
, mtl
, optparse-applicative
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
, plutus-core:plutus-ir
, plutus-ledger-api:plutus-execlib
, text
@@ -91,7 +91,7 @@ executable plc
, bytestring
, mtl
, optparse-applicative
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
, plutus-core:flat
, plutus-ledger-api:plutus-execlib
@@ -111,10 +111,10 @@ executable uplc
, haskeline
, mtl
, optparse-applicative
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
, plutus-core:flat
, plutus-ledger-api:plutus-execlib
- , plutus-metatheory ^>=1.60
+ , plutus-metatheory ^>=1.62
, prettyprinter
, serialise
, split
@@ -169,7 +169,7 @@ executable plutus
, microlens-th ^>=0.4
, mono-traversable
, mtl
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
, plutus-core:flat
, plutus-core:plutus-ir
, prettyprinter
@@ -195,7 +195,7 @@ test-suite test-simple
build-depends:
, base
, extra
- , plutus-metatheory ^>=1.60
+ , plutus-metatheory ^>=1.62
, process
build-tool-depends:
@@ -214,8 +214,8 @@ test-suite test-detailed
, directory
, extra
, filepath
- , plutus-core ^>=1.60
- , plutus-metatheory ^>=1.60
+ , plutus-core ^>=1.62
+ , plutus-metatheory ^>=1.62
, process
, tasty
, tasty-hunit
diff --git a/plutus-ledger-api/plutus-ledger-api.cabal b/plutus-ledger-api/plutus-ledger-api.cabal
index 89acce01a89..ba0f475d954 100644
--- a/plutus-ledger-api/plutus-ledger-api.cabal
+++ b/plutus-ledger-api/plutus-ledger-api.cabal
@@ -1,6 +1,6 @@
cabal-version: 3.0
name: plutus-ledger-api
-version: 1.60.0.0
+version: 1.62.0.0
license: Apache-2.0
license-files:
LICENSE
@@ -118,8 +118,8 @@ library
, lens
, mtl
, nothunks >=0.2 && <0.4
- , plutus-core ^>=1.60
- , plutus-tx ^>=1.60
+ , plutus-core ^>=1.62
+ , plutus-tx ^>=1.62
, prettyprinter
, serialise
, tagged
@@ -149,7 +149,7 @@ library plutus-execlib
, monoidal-containers
, mtl
, optparse-applicative
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
, plutus-core:flat
, plutus-core:plutus-core-testlib
, plutus-core:plutus-ir
@@ -189,10 +189,10 @@ library plutus-ledger-api-testlib
, bytestring
, containers
, lens
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
, plutus-core:plutus-core-testlib
- , plutus-ledger-api ^>=1.60
- , plutus-tx ^>=1.60
+ , plutus-ledger-api ^>=1.62
+ , plutus-tx ^>=1.62
, prettyprinter
, QuickCheck
, serialise
@@ -236,11 +236,11 @@ test-suite plutus-ledger-api-test
, lens
, mtl
, nothunks
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
, plutus-core:plutus-core-testlib
- , plutus-ledger-api ^>=1.60
+ , plutus-ledger-api ^>=1.62
, plutus-ledger-api:plutus-ledger-api-testlib
- , plutus-tx ^>=1.60
+ , plutus-tx ^>=1.62
, plutus-tx:plutus-tx-testlib
, prettyprinter
, serialise
@@ -300,8 +300,8 @@ executable test-onchain-evaluation
, extra
, filepath
, mtl
- , plutus-core ^>=1.60
- , plutus-ledger-api ^>=1.60
+ , plutus-core ^>=1.62
+ , plutus-ledger-api ^>=1.62
, plutus-ledger-api:plutus-ledger-api-testlib
, serialise
, tasty
@@ -320,10 +320,10 @@ executable analyse-script-events
, filepath
, lens
, mtl
- , plutus-core ^>=1.60
- , plutus-ledger-api ^>=1.60
+ , plutus-core ^>=1.62
+ , plutus-ledger-api ^>=1.62
, plutus-ledger-api:plutus-ledger-api-testlib
- , plutus-tx ^>=1.60
+ , plutus-tx ^>=1.62
, primitive
, serialise
@@ -342,7 +342,7 @@ executable dump-cost-model-parameters
, containers
, extra
, optparse-applicative
- , plutus-core ^>=1.60
- , plutus-ledger-api ^>=1.60
+ , plutus-core ^>=1.62
+ , plutus-ledger-api ^>=1.62
, text
, vector
diff --git a/plutus-metatheory/CHANGELOG.md b/plutus-metatheory/CHANGELOG.md
index c4066b312d9..660f3cdf470 100644
--- a/plutus-metatheory/CHANGELOG.md
+++ b/plutus-metatheory/CHANGELOG.md
@@ -1,4 +1,15 @@
+
+# 1.61.0.0 — 2026-04-02
+
+## Added
+
+- Added a compiler certification pass for the force-case-delay optimization.
+
+## Changed
+
+- The certifier can now report execution budget before and after each pass.
+
# 1.60.0.0 — 2026-03-18
diff --git a/plutus-metatheory/changelog.d/20260325_141756_unsafeFixIO_report_budget.md b/plutus-metatheory/changelog.d/20260325_141756_unsafeFixIO_report_budget.md
deleted file mode 100644
index d49dbb20124..00000000000
--- a/plutus-metatheory/changelog.d/20260325_141756_unsafeFixIO_report_budget.md
+++ /dev/null
@@ -1,3 +0,0 @@
-### Changed
-
-- The certifier can now report execution budget before and after each pass.
diff --git a/plutus-metatheory/changelog.d/20260331_023533_ana.pantilie95_certifier_forcecasedelay.md b/plutus-metatheory/changelog.d/20260331_023533_ana.pantilie95_certifier_forcecasedelay.md
deleted file mode 100644
index ffc2f2120a9..00000000000
--- a/plutus-metatheory/changelog.d/20260331_023533_ana.pantilie95_certifier_forcecasedelay.md
+++ /dev/null
@@ -1,4 +0,0 @@
-### Added
-
-- Added a compiler certification pass for the force-case-delay optimization.
-
diff --git a/plutus-metatheory/plutus-metatheory.cabal b/plutus-metatheory/plutus-metatheory.cabal
index 1a0dfc12e3a..8eb45b694e4 100644
--- a/plutus-metatheory/plutus-metatheory.cabal
+++ b/plutus-metatheory/plutus-metatheory.cabal
@@ -1,6 +1,6 @@
cabal-version: 3.0
name: plutus-metatheory
-version: 1.60.0.0
+version: 1.62.0.0
synopsis: Command line tool for running plutus core programs
homepage: https://github.com/IntersectMBO/plutus
license: Apache-2.0
@@ -83,7 +83,7 @@ library
, filepath
, mtl
, optparse-applicative
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
, plutus-ledger-api
, plutus-ledger-api:plutus-execlib
, text
@@ -391,7 +391,7 @@ executable plc-agda
main-is: Main.hs
build-depends:
, base
- , plutus-metatheory ^>=1.60
+ , plutus-metatheory ^>=1.62
test-suite test-NEAT
import: lang, os-support, ghc-version-support
@@ -404,9 +404,9 @@ test-suite test-NEAT
, data-default-class
, lazy-search
, mtl
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
, plutus-core:plutus-core-testlib
- , plutus-metatheory ^>=1.60
+ , plutus-metatheory ^>=1.62
, tasty
, tasty-hunit
@@ -424,7 +424,7 @@ test-suite test-certifier
, base
, plutus-core
, plutus-core:untyped-plutus-core-testlib
- , plutus-metatheory ^>=1.60
+ , plutus-metatheory ^>=1.62
, tasty
, tasty-hunit
, text
@@ -447,7 +447,7 @@ test-suite test-certifier-report
, plutus-core
, plutus-ledger-api
, plutus-ledger-api:plutus-execlib
- , plutus-metatheory ^>=1.60
+ , plutus-metatheory ^>=1.62
, plutus-tx
, tasty
, tasty-golden
diff --git a/plutus-tx-plugin/CHANGELOG.md b/plutus-tx-plugin/CHANGELOG.md
index 826c7d37c32..3cd821479f1 100644
--- a/plutus-tx-plugin/CHANGELOG.md
+++ b/plutus-tx-plugin/CHANGELOG.md
@@ -1,4 +1,21 @@
+
+# 1.61.0.0 — 2026-04-02
+
+## Changed
+
+- The plugin now automatically sets the `Strict` extension and the GHC flags mentioned
+ in https://plutus.cardano.intersectmbo.org/docs/using-plinth/extensions-flags-pragmas.
+ The `Strict` extension can be turned off using plugin flag `no-strict`.
+ Requires compiling with `plinthc` or `plc` instead of `compile`.
+
+## Fixed
+
+- Fixed a 3-5x execution cost regression for `unsafeFromBuiltinData` on multi-constructor
+ types when compiling in SumsOfProducts mode (the default). The `caseInteger` fallback
+ now generates `equalsInteger`/`ifThenElse` chains instead of building a linked list at
+ runtime.
+
# 1.60.0.0 — 2026-03-18
diff --git a/plutus-tx-plugin/changelog.d/20260323_111128_unsafeFixIO_boilerplate.md b/plutus-tx-plugin/changelog.d/20260323_111128_unsafeFixIO_boilerplate.md
deleted file mode 100644
index 122bb172ace..00000000000
--- a/plutus-tx-plugin/changelog.d/20260323_111128_unsafeFixIO_boilerplate.md
+++ /dev/null
@@ -1,6 +0,0 @@
-### Changed
-
-- The plugin now automatically sets the `Strict` extension and the GHC flags mentioned
- in https://plutus.cardano.intersectmbo.org/docs/using-plinth/extensions-flags-pragmas.
- The `Strict` extension can be turned off using plugin flag `no-strict`.
- Requires compiling with `plinthc` or `plc` instead of `compile`.
diff --git a/plutus-tx-plugin/changelog.d/20260326_fix_caseInteger_sop_fallback.md b/plutus-tx-plugin/changelog.d/20260326_fix_caseInteger_sop_fallback.md
deleted file mode 100644
index a240a547f14..00000000000
--- a/plutus-tx-plugin/changelog.d/20260326_fix_caseInteger_sop_fallback.md
+++ /dev/null
@@ -1,6 +0,0 @@
-### Fixed
-
-- Fixed a 3-5x execution cost regression for `unsafeFromBuiltinData` on multi-constructor
- types when compiling in SumsOfProducts mode (the default). The `caseInteger` fallback
- now generates `equalsInteger`/`ifThenElse` chains instead of building a linked list at
- runtime.
diff --git a/plutus-tx-plugin/plutus-tx-plugin.cabal b/plutus-tx-plugin/plutus-tx-plugin.cabal
index 80a5c70fb79..ea511a98a95 100644
--- a/plutus-tx-plugin/plutus-tx-plugin.cabal
+++ b/plutus-tx-plugin/plutus-tx-plugin.cabal
@@ -1,6 +1,6 @@
cabal-version: 3.0
name: plutus-tx-plugin
-version: 1.60.0.0
+version: 1.62.0.0
license: Apache-2.0
license-files:
LICENSE
@@ -91,11 +91,11 @@ library
, lens
, megaparsec
, mtl
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
, plutus-core:flat
, plutus-core:plutus-ir
- , plutus-metatheory ^>=1.60
- , plutus-tx ^>=1.60
+ , plutus-metatheory ^>=1.62
+ , plutus-tx ^>=1.62
, prettyprinter
, template-haskell
, text
@@ -111,7 +111,7 @@ executable gen-plugin-opts-doc
, containers
, lens
, optparse-applicative
- , plutus-tx-plugin ^>=1.60
+ , plutus-tx-plugin ^>=1.62
, prettyprinter
, PyF >=0.11.1.0
, text
@@ -207,11 +207,11 @@ test-suite plutus-tx-plugin-tests
, hedgehog
, lens
, mtl
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
, plutus-core:flat
, plutus-core:plutus-core-testlib
- , plutus-tx ^>=1.60
- , plutus-tx-plugin ^>=1.60
+ , plutus-tx ^>=1.62
+ , plutus-tx-plugin ^>=1.62
, plutus-tx:plutus-tx-testlib
, prettyprinter
, serialise
@@ -244,8 +244,8 @@ test-suite frontend-plugin-tests
build-depends:
, base >=4.9 && <5
, plutus-core:plutus-core-testlib
- , plutus-tx ^>=1.60
- , plutus-tx-plugin ^>=1.60
+ , plutus-tx ^>=1.62
+ , plutus-tx-plugin ^>=1.62
, plutus-tx:plutus-tx-testlib
, tasty
@@ -286,12 +286,12 @@ test-suite plutus-ledger-api-plugin-test
, filepath
, lens
, mtl
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
, plutus-core:plutus-core-testlib
- , plutus-ledger-api ^>=1.60
+ , plutus-ledger-api ^>=1.62
, plutus-ledger-api:plutus-ledger-api-testlib
- , plutus-tx ^>=1.60
- , plutus-tx-plugin ^>=1.60
+ , plutus-tx ^>=1.62
+ , plutus-tx-plugin ^>=1.62
, plutus-tx:plutus-tx-testlib
, prettyprinter
, QuickCheck
@@ -310,10 +310,10 @@ test-suite size
hs-source-dirs: test/AstSize
build-depends:
, base >=4.9 && <5.0
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
, plutus-core:plutus-core-testlib
- , plutus-tx ^>=1.60
- , plutus-tx-plugin ^>=1.60
+ , plutus-tx ^>=1.62
+ , plutus-tx-plugin ^>=1.62
, plutus-tx:plutus-tx-testlib
, tagged
, tasty
diff --git a/plutus-tx/plutus-tx.cabal b/plutus-tx/plutus-tx.cabal
index a3810969f33..3234e4c990f 100644
--- a/plutus-tx/plutus-tx.cabal
+++ b/plutus-tx/plutus-tx.cabal
@@ -1,6 +1,6 @@
cabal-version: 3.0
name: plutus-tx
-version: 1.60.0.0
+version: 1.62.0.0
license: Apache-2.0
license-files:
LICENSE
@@ -151,7 +151,7 @@ library
, lens
, memory
, mtl
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
, plutus-core:flat
, plutus-core:plutus-ir
, prettyprinter
@@ -193,11 +193,11 @@ library plutus-tx-testlib
, hedgehog
, lens
, mtl
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
, plutus-core:flat
, plutus-core:plutus-core-testlib
, plutus-core:plutus-ir
- , plutus-tx ^>=1.60
+ , plutus-tx ^>=1.62
, prettyprinter
, serialise
, tasty
@@ -250,9 +250,9 @@ test-suite plutus-tx-test
, hedgehog-fn
, lens
, mtl
- , plutus-core ^>=1.60
+ , plutus-core ^>=1.62
, plutus-core:plutus-core-testlib
- , plutus-tx ^>=1.60
+ , plutus-tx ^>=1.62
, plutus-tx:plutus-tx-testlib
, pretty-show
, serialise