Skip MSBuild on run-aspire.cmd when binaries are still newer than sources.
dotnet run always evaluates the Aspire graph. A second launch after Ctrl+C should not wait on that. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -48,12 +48,14 @@ npm --prefix src/HSchool.Client run build
|
||||
dotnet run --project src/HSchool.AppHost
|
||||
```
|
||||
|
||||
`run-aspire.cmd` is the same command for Windows users who want a double-clickable entry point —
|
||||
keep the two in sync if the AppHost path ever moves.
|
||||
`run-aspire.cmd` is the Windows entry point: it skips MSBuild when AppHost and Server dlls are
|
||||
newer than C# / csproj / props. Pass `--rebuild` to force a build. Keep the script in sync with
|
||||
`tools/apphost-uptodate.ps1` if the AppHost path ever moves.
|
||||
|
||||
`dotnet run --project src/HSchool.AppHost` starts the server *and* the Vite dev server and opens
|
||||
the Aspire dashboard. The Vite port is assigned per run (`npm run dev -- --port <random>`), so read
|
||||
the client URL off the dashboard instead of assuming 5173.
|
||||
`dotnet run --project src/HSchool.AppHost` still compiles every time — that is for a dirty tree,
|
||||
not a fast relaunch. It starts the server *and* the Vite dev server and opens the Aspire
|
||||
dashboard. The Vite port is assigned per run (`npm run dev -- --port <random>`), so read the
|
||||
client URL off the dashboard instead of assuming 5173.
|
||||
|
||||
Do not start a dev server with a bare `npm run dev` when you meant to run the whole app — the
|
||||
client only finds the backend through the Aspire-injected `SERVER_HTTP` environment variable, or
|
||||
@@ -130,6 +132,8 @@ say so explicitly in the change description.
|
||||
is empty. Reset deletes through the API, which deletes the save files. Headless AppHost
|
||||
sets `HSchool:AllowSaveReload` so tests can `POST /api/dev/reload-schools` without killing
|
||||
the shared fixture.
|
||||
- Launch-script up-to-date checks belong in `tests/HSchool.AppHost.Tests` and must not use
|
||||
`AppHostFixture`. Keep `LaunchBuildStamp` and `tools/apphost-uptodate.ps1` in sync.
|
||||
- Screen logic is covered in Vitest under happy-dom (`ui/*.test.ts`): people filters and the
|
||||
pager, the create dialog (core stays on, map reset, submit busy), planner rejection text, and
|
||||
the payroll-cap message. Layout and styles are still verified by running the app. Dictionaries
|
||||
@@ -184,3 +188,7 @@ say so explicitly in the change description.
|
||||
the clock does not advance, so occupancy (often empty) and lesson labels from the timetable
|
||||
keep going out. Opening sends one extra snapshot. A test that waits for *people* on pause
|
||||
will hang; a test that waits for a lesson label will not.
|
||||
- **`dotnet run` on the AppHost always evaluates MSBuild**, even when nothing changed.
|
||||
`run-aspire.cmd` skips that with `--no-build` when AppHost and Server dlls are newer than
|
||||
C# / csproj / props. `--rebuild` forces a build. Bare `dotnet run --project src/HSchool.AppHost`
|
||||
still compiles.
|
||||
|
||||
Reference in New Issue
Block a user