What's Changed
This release focuses on migration schema analysis for better Eloquent attribute type inference.
Migration Schema Analysis
- Support broader
Schemacall patterns (connection chaining, class constants, custom facades) (#526) - Resolve
foreignIdFor()column type from referenced model's primary key (#523) - Handle
Blueprint::datetimes()and fixulid()default column name (#531) - Default to
mixedtype for unknownBlueprintmethods (custom DB types added by macros) (#528) - Sort migration files by basename to match Laravel's migrator ordering (#519)
- Cache parsed migration schema to disk to speed up repeated runs (#524)
Stubs & Type Fixes
- Fix
Collection::map()return type, addBuilder::select()andResponseTrait::cookie()stubs (#548)
Security (Taint Analysis)
- Add
@psalm-taint-escape sqlforConnection::escape()(#547) - Add taint stubs for
UploadedFileandencrypt/decrypthelpers (#546)
Full Changelog: v4.2.0...v4.3.0