Skip to content

v0.2.0 — fast warm-fork execution

Choose a tag to compare

@amims71 amims71 released this 01 Jul 11:58

lara-shell v0.2.0 — fast warm-fork execution

New: instant commands on Unix (ForkingDriver)

On macOS/Linux (with pcntl + posix), lara-shell now boots your app once and runs each foreground command in a pcntl_fork of the warm process — so commands execute instantly (no re-boot), inherit your real terminal (colors, make:* prompts), and a crash or exit() only kills that fork. Background jobs and the shared registry are unchanged; reload re-execs for fresh code. Windows / hosts without pcntl transparently fall back to the fresh-subprocess driver. Choose with the new driver config key: auto (default), forking, or local.

Fixes (found via live testing in a real app)

  • Artisan options now pass through raw — e.g. route:list --path=api runs correctly instead of erroring The "--path" option does not exist (PsySH CodeArgument).
  • The in-shell help/h guide no longer shadows PsySH's built-in help command, which had broken PsySH's internal error-help path.

Also since v0.1.0

  • A self-ignoring .gitignore is written into storage/lara-shell so host apps ignore runtime files automatically.

Validated end-to-end in a real Laravel app. 137 tests / 363 assertions. Requires PHP 8.2+, Laravel 10/11/12.