Improve progress reporting when layers are locally present #6362
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.
Proposed change
Improves Docker pull progress reporting when using containerd snapshotter and some layers are already locally present (cached).
With containerd snapshotter, some layers skip the "Downloading" phase entirely and go directly from "Pulling fs layer" to "Download complete". These layers only receive a placeholder
extra={current: 1, total: 1}instead of actual size information.The previous fix in #6357 still required ALL layers to have
extrabefore calculating progress, which caused the UI to jump from 0% to 70%+ when the first real layer reported after cached layers completed.This change improves progress calculation by:
Before: Progress jumps 0% → 70% → 100%
After: Progress shows smooth 0% → 1% → 2% → ... → 100%
Type of change
Additional information
Checklist
ruff format supervisor tests)If API endpoints or add-on configuration are added/changed: