feat(build): the build log shows info and above, with a level picker and a search, and follows new lines at the bottom #30
No reviewers
Labels
No labels
area/build
area/install
area/saves
area/ui
area/updates
good first issue
gpu/amd
gpu/intel
gpu/nvidia
help wanted
kind
bug
kind
chore
kind
docs
kind
feature
kind
performance
kind
question
platform/linux
platform/steam-deck
platform/windows
priority
critical
priority
high
priority
low
status
blocked
status
confirmed
status
duplicate
status
invalid
status
needs-info
status
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
MagicBeanDev/LongshotLauncher!30
Loading…
Reference in a new issue
No description provided.
Delete branch "HumanBean/LongshotLauncher:feat/build-log-levels"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Why
The build's details showed every line the game prints. On AMD and other cards, a dozen expected
vk: program … not translated: a network left out on this cardlines filled the view and read like errors. Longshot now tags its detail lines with a level (Longshot #177). The details show Info and above by default, with a level picker and a search, and they follow new lines while scrolled to the bottom.What changed
Core/LogLevels.cs):LogLevels.Ofreads a line's level from the game's tag:[hos host] [trace] …, and likewise[debug],[warn]and[error]. A build's ownerror:line is an error. A line with no tag is info, so a game from before #177 shows as it always did.BuildLogstores each line's level once, as the line is added.Tail(level, search, limit)gives the details' filtered last lines, andLast(n)gives the bug report's lines at every level.App/ViewModels/BuildStepViewModel.cs,App/Views/BuildStepView.axaml):BuildStepViewinApp/Views/Views.cs):FollowingholdsLogTextback.tests/launcher_core/LogChecks.cs): every tag, untagged and unknown tags, a[trace]later in the line, the tail at each level, search (any case, trimmed, blank), the tail's limit, and the report's lines.Testing
Tested:
python -I tests/test_launcher_core.py: 629 checks passed.python -I tests/test_release.py: OK. Both on Linux (CachyOS, .NET 10).MainWindowon the build step, with make_game's@@lines and game lines in #177's format replayed throughBuildStepViewModel.Replay(no make_game, no game). It drew the screenshots below and checked the following behaviour. All six passed:Not tested: a real build with the launcher's window on screen (deliberately not run, to keep this PC's load down). Windows: the code is platform-neutral Avalonia, but it hasn't been run there.
Needs other testers:
Screenshots
The build step's details on a fake build at feat/build-log-levels @
eee27043(on main @3cae845dthe details show every line, with no picker or search).Info (default): the 18 trace and 2 debug lines hidden
Trace: every line
Search "network", at Trace
Risk and rollback
The details hide debug and trace lines by default. Someone reading a build for a problem picks Trace, or uses Copy, which keeps every level. Reverting the commit is enough.
🤖 Generated with Claude Code
Longshot's game now tags its detail lines ("[hos host] [trace] ..."); the details hid nothing, so a card's dozen left-out movie networks filled the view. Core/LogLevels.cs reads each line's level once; the copy for a bug report keeps every level. The view scrolls with new lines while it is at its bottom. Co-Authored-By: Claude Opus 5.5 <[email protected]>WIP: feat(build): the build log shows info and above, with a level picker and a search, and follows new lines at the bottomto feat(build): the build log shows info and above, with a level picker and a search, and follows new lines at the bottom