Changelog

Changelog

Grouped by area for this first release, rather than a flat commit list. Future entries will be per-version as changes actually land between releases.

First tagged release. Release notes and downloads on GitHub · crates.io.

Core orchestration

  • Manifest-driven stack up/stack down: clone-if-missing, language activation, service start/reuse, dev-server spawn, domain routing — in that order.
  • Services dedup by engine@version — every project referencing the same database version shares the one running instance, isolated by schema.
  • [run].external — run your own dev server yourself, in your own terminal, exactly how you already would; stack only routes to it.
  • [service.*].external — adopt a database you already have running instead of colliding with it or starting a duplicate.
  • Detached process spawn that survives the launching terminal closing, with output captured to a per-process log file.

Routing

  • Caddy driven entirely over its HTTP admin API — no Caddyfile, no file writes, no reload signal. Started on demand, torn down with stack down --all.
  • stack status shows Caddy's own liveness and live route count.

Shell integration

  • Ambient per-prompt activation for PowerShell — cd into a project and its pinned languages are on PATH; leave, and it resets.
  • cmd.exe support via a regenerated stack-activate.bat, run manually after cd-ing (cmd has no per-prompt hook the way PowerShell does).
  • Automatic Composer function shadowing for PHP projects, so composer install uses the project's pinned PHP version even though Composer's own installer hardcodes one.
  • stack load-env — session-scoped .env loading; confirms which variable names loaded, never the values.
  • A small [stack] prompt indicator, on both shells, when a project is active.

Manifest & CLI

  • [language.*] generalized beyond php/node/python — any vfox-plugin language, an explicit manager, or a fully BYO path.
  • stack new / stack add / stack remove — interactive scaffolding and format-preserving manifest edits that leave your comments and key order untouched.
  • stack register + stack list + stack prune — reuse a BYO service/tool path across every project, see everything installed in one place, and clean up what's no longer referenced (dry-run by default).
  • stack stats — continuously-refreshing CPU/memory view, docker stats-style.
  • stack doctor [--fix] — checks vfox/uv/Caddy and every registered path; --fix installs the three at pinned, tested versions. Also flags pre-existing Windows database services worth adopting instead of duplicating.