v3.14.4
This patch sharpens type inference across collections, the console, and the Date facade, and improves Laravel 11 support by handling Carbon 2.
Features
- Narrow
Command::hasArgument()/hasOption()to literalbool, and fixhasOption()shortcut/negation semantics (#1161) - Resolve the configured date class for
Datefacade static calls (#1157) - Infer the named-argument object shape returned by the
literal()helper (#1160) - Narrow
config()->collection()toCollection<key, value>(#1159) - Narrow
random()return type onEnumerableandLazyCollection(#1152)
Fixes
- Allow a
nulloption shortcut inCommand::getOptions()(#1166) - Type the
Model::loadCount()constraint closure asBuilder(#1164) - Allow
nullvalues in the__()$replaceparameter (#1151) - Support Carbon 2 alongside Carbon 3 for better Laravel 11 coverage (#1148)
- Stop the guard taint warning for
SessionGuard::hashPasswordForCookie()on Laravel 11 (#1146) - Stop
psalm-plugin initfrom silently disabling type analysis on Psalm 6 (#1144)
Full Changelog: v3.14.2...v3.14.4