github carthage-software/mago 1.15.1
Mago 1.15.1

latest release: 1.15.2
3 hours ago

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 $this from static return types: Added a separate is_static flag to the type system to properly differentiate $this (same instance) from static (same class, possibly different instance). Returning new static() from a method declared as @return $this is now correctly flagged, while return $this remains valid. return new static() continues to be accepted for : static return 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-gnu binary 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

Don't miss a new mago release

NewReleases is sending notifications on new releases.