Skip to content

[nitro 6/6] Cleanup, docs, changelog, migration guide - #4707

Draft
cprecioso wants to merge 2 commits into
cprecioso/nitro-05-prodfrom
cprecioso/nitro-06-cleanup
Draft

[nitro 6/6] Cleanup, docs, changelog, migration guide#4707
cprecioso wants to merge 2 commits into
cprecioso/nitro-05-prodfrom
cprecioso/nitro-06-cleanup

Conversation

@cprecioso

Copy link
Copy Markdown
Member

Description

Part 6 of 6 — the Nitro migration stack closer (stacked on #4705). Cleanup, docs, changelog, and the migration guide for the whole stack.

  • waspc/data/Generator/libs/vite-ssr/ deleted (unshipped since part 1; build tooling auto-discovers, so no other wiring changes were needed).
  • Single-process CLI pass: JobType loses the Server constructor and dev output is prefixed [ App ]; wasp doctor drops the 3001 check; wasp build start's env flags are re-documented as build-time vs run-time; the deploy CLI's now-dead --skip-client/--custom-server-url flags are kept but marked deprecated-and-ignored (commander hard-errors on unknown flags, so removal would break users' CI).
  • Example lockfiles regenerated (the rollup/esbuild trees from the deleted server pipeline are gone; 8.4k lines of lockfile shed).
  • Docs sweep (web/docs only): the WebSockets page fully rewritten for the crossws API; the deployment narrative and every provider guide rewritten for the single-container model (netlify/cloudflare become honest "can't host this" stubs); env-vars/middleware/server-config/apis/prerendering/CLI pages updated; ports/URLs swept across social-auth and integration guides; markdown snapshots regenerated. Local Docusaurus build passes with onBrokenLinks: "throw" (CI wouldn't have caught these — the web-check skips web/docs).
  • Migration guide: 9 steps with before/after snippets — WebSocket API (including a Socket.IO→new-API translation table), setupFn's server, env simplification, single-container deployment + WASP_CLIENT_ENV + /_wasp/health, Dockerfile stage renames, SPA fallthrough, JSON error responses.
  • Changelog: the stack's entries land under the existing unreleased 0.26.0 section. Deliberately no version bump: 0.26.0 is unreleased (latest tag is v0.25.0) and already carries this release cycle's breaking-change bump — bumping again would orphan the 0.26.0 changelog/migration guide for a version that never shipped.

Known product gap surfaced here, needs a decision in the deploy-adapter follow-up: wasp deploy can no longer pass client env vars (REACT_APP_*) — part 5 removed the host-side client build, and neither Fly nor Railway forwards a --build-arg to the provider-side image build. Apps with client env vars must build the image themselves for now; docs/changelog/migration guide say this honestly. flyctl deploy --build-arg exists, so a fix looks feasible.

Verified: 657/657 unit tests; goldens comparison-verified with zero churn (Phase 6 touches no templates; the regenerated example lockfile is excluded from snapshots by the harness); deploy package typechecks + 63/63 vitest; Docusaurus builds clean; smoke on a fresh app — single [ App ] process on 3000, nothing on 3001, /_wasp/health green, wasp clean clears everything; all 7 examples compile.

Type of change

  • 🔧 Just code/docs improvement
  • 🐞 Bug fix
  • 🚀 New/improved feature
  • 💥 Breaking change

Checklist

  • I tested my change in a Wasp app to verify that it works as intended.

  • 🧪 Tests and apps:

    • I added unit tests for my change.
    • (if you fixed a bug) I added a regression test for the bug I fixed.
    • (if you added/updated a feature) I added/updated e2e tests in examples/kitchen-sink/e2e-tests.
    • (if you added/updated a feature) I updated the starter templates in waspc/data/Cli/templates, as needed.
    • (if you added/updated a feature) I updated the example apps in examples/, as needed.
      • (if you updated examples/tutorials) I updated the tutorial in the docs (and vice versa).
  • 📜 Documentation:

    • (if you added/updated a feature) I added/updated the documentation in web/docs/.
  • 🆕 Changelog: (if change is more than just code/docs improvement)

    • I updated waspc/ChangeLog.md with a user-friendly description of the change.
    • (if you did a breaking change) I added a step to the current migration guide in web/docs/migration-guides/.
    • I bumped the version in waspc/waspc.cabal to reflect the changes I introduced.

- delete waspc/data/Generator/libs/vite-ssr (unshipped since part 1)
- single-process CLI pass: JobType WebApp|Server -> App, '[ App ]'
  output prefix, Doctor drops the 3001 check, build-start env flags
  re-documented as build-time vs run-time, deploy's dead --skip-client/
  --custom-server-url flags marked deprecated-and-ignored
- example lockfiles regenerated (rollup/esbuild trees gone)
- web/docs sweep for the single-container model: websockets rewritten
  for the crossws API, deployment narrative + provider guides
  (render/railway/heroku/flyio single-container; netlify/cloudflare
  honest stubs; vps/coolify/caprover rewritten), env-vars/middleware/
  server-config/apis/prerendering/cli pages, port/URL sweep, markdown
  snapshots regenerated
- migration guide: 9 steps (WebSocket before/after + translation table,
  setupFn server removal, env simplification, single-container deploys,
  Dockerfile stage renames, SPA fallthrough, JSON errors)
- ChangeLog.md: Nitro stack entries under the unreleased 0.26.0 section
  (no version bump: 0.26.0 is unreleased and already carries this
  cycle's breaking-change bump)

Known gap (documented in docs/changelog, needs a deploy-adapter
follow-up): wasp deploy cannot pass client env vars to the
provider-side image build.
@cloudflare-workers-and-pages

Copy link
Copy Markdown

Deploying wasp-docs-on-main with  Cloudflare Pages  Cloudflare Pages

Latest commit: 1719b9d
Status: ✅  Deploy successful!
Preview URL: https://8902f2a1.wasp-docs-on-main.pages.dev
Branch Preview URL: https://cprecioso-nitro-06-cleanup.wasp-docs-on-main.pages.dev

View logs

@pkg-pr-new

pkg-pr-new Bot commented Aug 12, 2026

Copy link
Copy Markdown

Open in StackBlitz

@wasp.sh/spec

npx https://pkg.pr.new/wasp-lang/wasp/@wasp.sh/spec@4707

@wasp.sh/wasp-cli

npx https://pkg.pr.new/wasp-lang/wasp/@wasp.sh/wasp-cli@4707

@wasp.sh/wasp-cli-darwin-arm64-unknown

npx https://pkg.pr.new/wasp-lang/wasp/@wasp.sh/wasp-cli-darwin-arm64-unknown@4707

@wasp.sh/wasp-cli-darwin-x64-unknown

npx https://pkg.pr.new/wasp-lang/wasp/@wasp.sh/wasp-cli-darwin-x64-unknown@4707

@wasp.sh/wasp-cli-linux-arm64-glibc

npx https://pkg.pr.new/wasp-lang/wasp/@wasp.sh/wasp-cli-linux-arm64-glibc@4707

@wasp.sh/wasp-cli-linux-x64-glibc

npx https://pkg.pr.new/wasp-lang/wasp/@wasp.sh/wasp-cli-linux-x64-glibc@4707

@wasp.sh/wasp-cli-linux-x64-musl

npx https://pkg.pr.new/wasp-lang/wasp/@wasp.sh/wasp-cli-linux-x64-musl@4707

commit: 645bad9

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant