fix(builder): MainWindow.xaml is valid XML again, so the Windows builder compiles #167

Merged
HumanBean merged 1 commit from HumanBean/Longshot:fix/builder-xaml-comment into main 2026-11-13 08:35:30 +00:00
Owner

Why

Main's Windows builder does not compile: #158 added an XML comment holding -- to builder/LongshotBuilder/MainWindow.xaml (line 195, make_game.py --compile-shaders), which XML forbids, so the nightly's Longshot Builder zip fails (MC3000) and no nightly or rc can publish.

What changed

  • builder/LongshotBuilder/MainWindow.xaml: the comment says "make_game.py's compile-shaders option". Nothing else changes.
  • New tests/test_builder_xml_valid.py: every .xaml, .csproj and .manifest under builder/ parses as XML, so this is caught by the tests instead of by the release (builder builds don't run on pull requests).

Flags and settings

None

Measurements

main: b8b0915d (2026-11-13)
this PR: fix/builder-xaml-comment @ 266419da

main @ b8b0915d this PR @ 266419da
dotnet build builder/LongshotBuilder -c Release error MC3000 (the nightly's log) succeeded, 0 warnings, 0 errors
tests/test_builder_xml_valid.py fails (MainWindow.xaml) passes

Testing

Tested: the Builder's Release build (-p:EnableWindowsTargeting=true) on Linux; the new test on main (fails) and here (passes).

Not tested: the Builder window on Windows (the comment is not shown anywhere).

Needs other testers: None

Screenshots

Nothing on screen

Risk and rollback

A comment's wording. Reverting the commit is enough.

Checklist

For everyone

  • One topic.
  • The title is a Conventional Commit (type(scope): description).
  • Rebased on current main.
  • python -I -B tests/run_all.py run and passing (any failure that also fails on main is named above).
  • Tested in the game, or what wasn't is named under Testing.
  • Testing filled in: what was tested, what wasn't, and what needs other testers (with test requests).
  • Measured: main and this PR at named commits, on the same PC, scene and settings, at least 2 interleaved runs each, the median reported.
  • No game files, dumps, build output or generated files.
  • third_party/ untouched (a new folder with a PROVENANCE.md instead).
  • The license is OK: GPL-3.0-or-later, nothing incompatible and nothing decompiled.
## Why Main's Windows builder does not compile: #158 added an XML comment holding `--` to `builder/LongshotBuilder/MainWindow.xaml` (line 195, `make_game.py --compile-shaders`), which XML forbids, so the nightly's *Longshot Builder zip* fails (MC3000) and no nightly or rc can publish. ## What changed - `builder/LongshotBuilder/MainWindow.xaml`: the comment says "make_game.py's compile-shaders option". Nothing else changes. - New `tests/test_builder_xml_valid.py`: every `.xaml`, `.csproj` and `.manifest` under `builder/` parses as XML, so this is caught by the tests instead of by the release (builder builds don't run on pull requests). ## Flags and settings None ## Measurements main: b8b0915d (2026-11-13) this PR: fix/builder-xaml-comment @ 266419da | | main @ b8b0915d | this PR @ 266419da | |---|---|---| | `dotnet build builder/LongshotBuilder -c Release` | error MC3000 (the nightly's log) | succeeded, 0 warnings, 0 errors | | `tests/test_builder_xml_valid.py` | fails (MainWindow.xaml) | passes | ## Testing **Tested:** the Builder's Release build (`-p:EnableWindowsTargeting=true`) on Linux; the new test on main (fails) and here (passes). **Not tested:** the Builder window on Windows (the comment is not shown anywhere). **Needs other testers:** None ## Screenshots Nothing on screen ## Risk and rollback A comment's wording. Reverting the commit is enough. ## Checklist ### For everyone - [x] One topic. - [x] The title is a Conventional Commit (`type(scope): description`). - [x] Rebased on current `main`. - [x] `python -I -B tests/run_all.py` run and passing (any failure that also fails on `main` is named above). - [x] Tested in the game, or what wasn't is named under Testing. - [x] Testing filled in: what was tested, what wasn't, and what needs other testers (with test requests). - [x] Measured: main and this PR at named commits, on the same PC, scene and settings, at least 2 interleaved runs each, the median reported. - [x] No game files, dumps, build output or generated files. - [x] `third_party/` untouched (a new folder with a `PROVENANCE.md` instead). - [x] The license is OK: GPL-3.0-or-later, nothing incompatible and nothing decompiled.
fix(builder): MainWindow.xaml is valid XML again, so the Windows builder compiles
All checks were successful
CI / Python source checks (ubuntu-24.04, part 1/2) (pull_request) Has been skipped
CI / Python source checks (ubuntu-24.04, part 2/2) (pull_request) Has been skipped
CI / SPIR-V fixtures (global narrow load/store, direct surface atomics, F2I immediate) (pull_request) Has been skipped
Third-party parts / The same as upstream (pull_request) Has been skipped
PR description / Description follows the template (pull_request_target) Successful in 12s
CI / Conventional Commit title (pull_request) Successful in 11s
CI / Workflow lint (actionlint) (pull_request) Successful in 14s
Third-party parts / As their notes say (pull_request) Successful in 15s
266419dabc
HumanBean deleted branch fix/builder-xaml-comment 2026-11-13 08:35:31 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
MagicBeanDev/Longshot!167
No description provided.