What's Changed
- Support Laravel 12–13; drop Laravel 11 (and update other dependencies)
- Require PHP 8.3+; drop PHP 8.2
- Require Psalm 7; drop Psalm 6
- Support Model
@propertydeclarations (take precedence over migration-discovered properties) - Compatible with Larastan generics
- Relationships
- Pagination
- Attribute
- Enhanced Model attribute type casting
- Enhanced Scope detection (legacy
scopeXxx()and#[Scope]attribute) - Expanded attribute types inferred from migrations (supports more types inc. vector)
- Speed up to 50x on big projects (caching)
- Extended taint-analysis support
Internals
- Remove
barryvdh/laravel-ide-helperdependency — facades and model properties are now resolved natively - Run tests faster (30x)
- Internal code type coverage 100%
- PER3 coding style
- Better test coverage
Migration guide
composer require --dev psalm/plugin-laravel:^4.0@beta -WFull Changelog: v3.1.5...v4.0.0-beta.1