Release Notes - v0.6.0
v0.6.0 (September 7, 2026)
Section titled “v0.6.0 (September 7, 2026)”Title: Improve evaluation reliability, data handling, and conformance coverage
Date: September 7, 2026
Version: v0.6.0
Comparison: v0.5.1…v0.6.0
This release improves Plutigo evaluation reliability, data handling, JSON safety, cost model isolation, and conformance verification.
✨ New Features
Section titled “✨ New Features”- Added explicit Plutus data normalization:
data.Normalizenow creates independent copies of constructor, map, and list values, resets their definite or indefinite encoding state, copies mutable constructor tags, and handles containers stored in value form. Callers must apply it at the script or evaluator boundary to give scripts a fresh canonical encoding without changing the bytes preserved byDecode.
🔧 Fixes
Section titled “🔧 Fixes”-
Improved evaluation error reporting: Script evaluation now preserves script, built-in function, and type error classes, matches context cancellation and deadline errors, maps unexpected evaluator failures to internal errors, and maps unexpected built-in function failures to built-in errors. These classifications make failures easier to identify and handle reliably.
-
Bounded JSON parsing: Plutigo now checks nesting depth and node count while parsing, before allocating the complete tree, and reports parser limit errors while accepting structures at the semantic boundary. This limits resource use while preserving valid boundary cases.
-
Isolated cost model settings: Each evaluation now uses independent built-in cost settings, preventing shared mutable defaults, data races, and unpredictable execution unit results during concurrent evaluations.
📦 Additional Changes
Section titled “📦 Additional Changes”- Expanded conformance verification: The harness now recursively finds
.uplcand.flatfixtures undertests/conformance, requires canonical or legacy budget files, separates parse and decode failures from evaluation failures, compares FLAT encoded output byte for byte and text output as formatted terms, checks CPU and memory budgets, and selects V3 or V4 language and protocol settings by path. Fixtures with missing budget files or inconsistent failure markers now fail validation, and the harness leaves runtime behavior unchanged.
🙏 Thank You
Section titled “🙏 Thank You”Thank you for using Plutigo.
Docs authored by Doc Holiday