Mago 1.15.1
Mago 1.15.1 is a patch release that distinguishes $this from static return types, reverts a formatter regression with parenthesis removal in binary expressions, and restores glibc 2.17 compatibility for the Linux GNU build.
✨ Features
Codex
- Distinguish
$thisfromstaticreturn types: Added a separateis_staticflag to the type system to properly differentiate$this(same instance) fromstatic(same class, possibly different instance). Returningnew static()from a method declared as@return $thisis now correctly flagged, whilereturn $thisremains valid.return new static()continues to be accepted for: staticreturn types (#1429)
🐛 Bug Fixes
Formatter
- Reverted excessive parenthesis removal in binary expressions: Reverted #1407 which incorrectly removed parentheses from mixed-precedence binary expression chains, causing semantic changes in some expressions (#1430, #1432)
CI/CD
- Restored glibc 2.17 compatibility for Linux GNU builds: The
x86_64-unknown-linux-gnubinary is now built with cross using the manylinux2014 container again, restoring compatibility with older Linux distributions. PGO optimization for this target has been removed as it was incompatible with the cross-compilation setup (#1431, #1433, #1434)
🙏 Thank You
Contributors
A huge thank you to everyone who contributed code to this release:
Issue Reporters
Thank you to everyone who reported issues that shaped this release:
Full Changelog: 1.15.0...1.15.1