Releases
v1.4.0
Compare
Sorry, something went wrong.
No results found
Added
Full TOON decoder implementation : Complete decoding functionality with strict mode support
Parses all TOON formats: inline arrays, list arrays, tabular arrays, nested objects
Strict mode validation (enabled by default) for spec compliance
Configurable indentation and delimiter support
Comprehensive error handling with specific exception types
Round-trip encode/decode verified working perfectly
Specification compliance documentation : Created comprehensive SPEC-COMPLIANCE.md
Encoder conformance: 10/10 requirements verified
Decoder conformance: 7/7 requirements verified
Strict mode: 11/11 requirements verified
Full TOON Specification v1.3 compliance verified
Performance benchmarking : Comprehensive PHPBench suite for performance analysis
EncodeBench: Measures encoding performance across data sizes (small, medium, large, xlarge) and format types (inline, tabular, list, nested)
DecodeBench: Measures decoding/parsing performance with same variations
ThroughputBench: Measures sustained operations per second for realistic workloads
ScalabilityBench: Measures performance scaling from 10 to 100K items
All benchmarks track execution time and memory usage
GitHub Actions workflow : Automated performance benchmarking on every PR
Runs benchmarks on PHP 8.1, 8.2, 8.3, 8.4
Compares PR performance against main branch baseline
Comments results directly on pull requests
Detects performance regressions (>15% slower)
Stores benchmark results as artifacts
Justfile commands : New benchmark commands for local development
just benchmark-performance - Run PHPBench with default report
just benchmark-perf-summary - Run with summary report
just benchmark-all - Run both token efficiency and performance benchmarks
just benchmark-baseline - Store current performance as baseline
just benchmark-compare - Compare against stored baseline
Documentation : Comprehensive README for performance benchmarks explaining metrics, usage, and interpretation
Baseline benchmarks : Saved performance baselines before and after encoder refactoring for comparison
Changed
Architecture refactoring : Converted Encoder from static methods to instance-based pattern
Encoder now stores EncodeOptions and LineWriter as readonly properties
Eliminated parameter threading through 9 methods (~30+ parameter passes)
Matches Decoder's instance-based architecture for consistency
Performance impact is negligible (< 3% worst case, often better)
Decoder improvements : Completed Parser instance-based refactoring
Fixed remaining DecodeOptions parameter bugs
Parser now fully instance-based with stored configuration
All 539 tests pass, PHPStan Level 9 clean
You can’t perform that action at this time.