Mago 1.0.0-beta.34
This is a focused patch release that addresses a key correctness issue in the analyzer's handling of generic types, particularly when working with ::class
strings.
🐞 Analyzer Fix
The analyzer's type comparator has been improved to be smarter about generic types.
Previously, comparing a "raw" generic class (e.g., BoxImpl
) against a version with explicit type parameters (e.g., BoxImpl<mixed>
) would fail. This commonly caused false positive errors when passing a literal class string like BoxImpl::class
to a function expecting class-string<BoxImpl<mixed>>
.
The analyzer now correctly understands that when type parameters are missing from a generic class, they should be treated as their default template constraints (which is usually mixed
). This makes the comparison logic more robust and aligns it with developer expectations.
Full Changelog: 1.0.0-beta.33...1.0.0-beta.34