github carthage-software/mago 1.54.0
Mago 1.54.0

3 hours ago

Mago 1.54.0 continues the performance work across analysis, PHPDoc parsing, metadata, name handling, and project loading. It also adds configurable slow-file warnings and fixes integer-comparison narrowing.

Note

Support Mago

Does your company use Mago? Please consider sponsoring its development so we can keep fixing bugs and shipping releases.

Sponsor Mago ❤️

✨ Features

Analyzer

  • Slow-file warnings: sets the warning threshold through config or CLI, keeping 5s as the default. (#2436, #2438, 3c38ca1)

🐛 Bug Fixes

Analyzer

  • Integer comparisons: narrows null and false correctly in integer comparisons. (#2434, #2437, a75379c)

🏗️ Internal

Analyzer

  • Call analysis: cuts allocations in expression, argument, and invocation analysis. (c553631, c33ecfb)
  • Condition checks: skips needless paradox checks and assertion-map copies. (ae907c2, 14e2f65)
  • Visibility checks: skips repeated public-method lookups. (9f42dfd)
  • Parameter checks: skips unused-parameter work for functions with no parameters. (f00d6d7)

Codex

  • Class metadata: cuts copying and reuses lowercase lookups and prepared property types. (62aec23, d413832)
  • Type setup: avoids needless type clones during population. (569e3c9)

Pipeline

  • Project loading: speeds up file reads, parsing, and compilation. (fa28802)

Syntax

  • Namespace checks: uses a focused walker to gather namespaces. (c085159)
  • Throw checks: stops block scans once it finds a throw. (781c18c)

PHPDoc

  • Docblock parsing: skips trivia storage during analysis and metadata scans. (f30ced2)

Names

  • Word interning: reduces lock contention and grows per-thread caches. (05304cd)

🧩 Extension Protocol

No protocol changes in this release.

🙏 Thank You

Contributors

Thank you to everyone who contributed to this release:

Issue Reporters

Thank you to everyone who reported issues that shaped this release:

Full Changelog: 1.53.0...1.54.0

Don't miss a new mago release

NewReleases is sending notifications on new releases.