You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The previous commit widened five endpoints from `class` to `classLike`,
changed the PSR-2 printer's return-type spacing, added enum() and
enumCase() to the query builder, and put --json on archetype:errors.
None of that belongs in a change whose job is to add a command line, and
one of them was an outright regression: on a file declaring both an
interface and a class, className() started answering about the interface
and property() started writing into it, which is not valid PHP.
All of it is reverted. `src/` is now the new `src/Console` tree plus two
lines in the service provider, and nothing an existing user calls behaves
differently.
The console pays for that in reach, and says so rather than pretending
otherwise. The endpoints it drives address `class` declarations, so the
property, constant, interface, trait, parent-class and rename operations
refuse an enum, interface or trait outright:
ERR app/Enums/Status.php archetype:add-implements only works on
classes, and this is an enum
Refusing up front rather than after the fact matters for the three
operations that import a name before using it. add-implements on an enum
used to write the import, fail to add the interface, and report OK — a
half-done change is indistinguishable from a whole one once the file has
changed, so the render-and-compare check cannot catch it.
inspect, show, find, the method operations, add-case and set-array-key
have no such limit; they read and write the declaration through the
console's own code whatever it is.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AjUMv5rFTVJMr6F1J7bx7x
0 commit comments