feat(build): this PC's build estimate, and a time left that learns its pace #28
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!28
Loading…
Reference in a new issue
No description provided.
Delete branch "HumanBean/LongshotLauncher:fix/build-time-estimates"
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
Step 2 said "About 45 min, shaders included" (37 without) to every player, a 2.x Builder figure that was never measured. Step 3's bar gave the shaders 8% of the build when they are about a third, and its time left said "Working out the time left" until the build had run a while.
What changed
BuildForecast(new):BuildClockgets better as the build runs:@@eta.BuildProgress's step weights are the measured shares:The Longshot side, the Builders' own estimates and the measurements, is in MagicBeanDev/Longshot#175.
Measurements
The forecast uses the mean of the two runs. The scaling with threads is an estimate, not a measurement: Longshot#175's test request T-KQH4 asks for builds on 6- and 8-core PCs to check it.
Testing
Tested:
tests/test_launcher_core.py: 608 checks passed. The new checks cover the forecast on the measured PC, the thread scaling, the pace learned from the finished steps, a running step's countdown, and the compile's@@eta.tests/test_release.py: OK.Not tested:
Risk and rollback
Only the text and the bar's shares change; the build does not. Reverting the two commits brings back the fixed 45 minutes.