What’s Changed
Features
- Narrow Eloquent
Builderaggregate returns using known column type (#1005) @alies-dev - Resolve dynamic
where{Column}on Model direct calls (#1001) @alies-dev - Recover macro closure docblocks from vendor packages via AST scan (#994) @alies-dev
- Use
Macroablereturn type info from docblock Psalm storage (#989) @alies-dev - Validate multi-segment dynamic
where{Column}method calls (#980) @alies-dev - Narrow
auth($name)return to concrete guard class (#981) @alies-dev - Narrow
Storage::disk()return toCloudfor cloud-driver disks (#982) @alies-dev - Add tips for the
diagnosecommand and enhance config created by theinitcommand (#971) @alies-dev - Narrow
pluck($value, $key)key type and cover relation chains (#968) @alies-dev - Resolve
Model::factory()->create()collapse on bareHasFactory(#964) @alies-dev - Multi-target facade dispatch for Auth/Cache/Session/Storage/Mail (#907) @alies-dev
- fix(stubs): resolve Carbon cascade + narrow dual-purpose method returns #922 (#950) @alies-dev
- Add
diagnosesubcommand for runtime introspection (#959) @alies-dev - Narrow MySQL
SETcolumns to literal union inModelPropertyHandler(#932) @alies-dev - Narrow
Model::only()return shape from literal keys (#933) @alies-dev
Fixes
- Suppress
PossiblyUnusedMethodfor legacyscopeXxx()Eloquent methods (#999) @alies-dev - Suppress
PossiblyUnusedMethodfor#[Scope]-attributed Eloquent methods (#998) @alies-dev - Accept variadic strings on
Route::middlewarefacade andRouteRegistrar(#986) @alies-dev - Lock in fluent macro narrowing on closure
: staticreturn types (#987) @alies-dev - Anchor
config_path()at project root under Testbench fallback (#949) @alies-dev - Treat
ServiceProvider::$appas initialized (#947) @alies-dev - Type-check dynamic
where{Column}arguments on Eloquent relations (#939) @alies-dev - Narrow
Request::file()via source-level conditional return (#935) @alies-dev
Full Changelog: v4.10.2...v4.11.0