Repository navigation
K2GO-317 feat(maps): pause and resume full-region downloads - #712
Merged
Merged
Conversation
Pause sends SIGTERM so pmtiles flushes its on-disk resume journal; resume re-runs tile-extract and continues from the journal instead of from zero. The FQR overlay relabels Stop/Retry as Pause/Resume and shows an ETA.
Maps pause/resume changes dash-node behavior, so it bumps the REST version and adds the CHANGELOG line the app reads via /system/dashboard/update-check.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What changes
Full-region (FQR) map downloads become pausable and resumable, instead of
stop-and-restart.
Server (dash-node): pause sends the extract a graceful SIGTERM, so the custom
go-pmtiles build flushes its on-disk resume journal; resume re-runs tile-extract
and continues from that journal instead of from zero. The maps runner keeps the
partial on pause, purges it on cancel or any other failure, reads the json
progress line by line, and reports whole-job percent with speed and ETA. Bumps
dash-node to 1.4.7 with a CHANGELOG line, since the server behavior changed.
App (FQR overlay): the keep-the-download control relabels Stop/Retry as
Pause/Resume, a paused job freezes the bar in amber, and the progress line shows
an ETA.
UI changes
strings (
k2go_dl_pause,k2go_dl_resume,k2go_dl_paused_notif,k2go_eta_*). No l10n debt.Stop / Retry), a paused job shows "Paused" with an amber frozen bar, and the
progress line gains an ETA suffix.
Why
Resume lets a user recover a large map download after an interruption, without
re-spending the metered data the network-cost consent gate warns about.
Verification
tsc --noEmit: clean. controllercompileStandardDebugJavaWithJavac: clean.build, the dash-node redeploy, and the rootfs that carries the m16 pmtiles
binary and the patched tile-extract.py.
Coordination
Resume needs the K2GO-317 carry patch (the pmtiles m16 build plus the patched
tile-extract.py) baked into the rootfs. Without it the partial is kept, but a
re-run re-downloads from zero.