lara-shell v0.2.1 — hardening
Fixes from an adversarial hardening pass (each with a regression test; 142 tests total):
- Safety: macro steps now honor the production guard — a guarded command (e.g.
migrate:fresh --force) inside a macro is refused instead of running unconfirmed. - The shell no longer shadows PsySH's own built-ins (
clear,doc,dump, …) via fuzzy matching. helprenders the shell guide andhelp <command>shows per-command usage (both were broken by the command word leaking into the argument).- Quoted arguments with spaces (
make:model "Foo Bar") stay a single token. - Macros accept trailing input without erroring on unknown options.
- ForkingDriver purges all db/redis connections before fork (not just the default) and flushes output buffers before exit.
All validated live in a real Laravel app. Requires PHP 8.2+, Laravel 10/11/12.