Skip to content

ci: make fixture download resumable and retry transient stalls - #130

Merged
GitBib merged 1 commit into
masterfrom
ci/resumable-fixture-download
Aug 2, 2026
Merged

ci: make fixture download resumable and retry transient stalls#130
GitBib merged 1 commit into
masterfrom
ci/resumable-fixture-download

Conversation

@GitBib

@GitBib GitBib commented Aug 2, 2026

Copy link
Copy Markdown
Owner

Fixture download now resumes instead of restarting, and retries stalls that happen mid-transfer.

  • --retry-all-errors--retry alone does not cover a stall partway through a transfer
  • --continue-at - — resume into the existing .part
  • retries 3 → 5
  • .DS_Store added to .gitignore

@codecov

codecov Bot commented Aug 2, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 99.11%. Comparing base (3165152) to head (55ca534).

Additional details and impacted files
@@           Coverage Diff           @@
##           master     #130   +/-   ##
=======================================
  Coverage   99.11%   99.11%           
=======================================
  Files          21       21           
  Lines        1477     1477           
=======================================
  Hits         1464     1464           
  Misses         13       13           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

A macOS runner failed the 71 MB fixture download with
"curl: (56) Recv failure: Operation timed out" and needed a manual
re-run. --retry does not cover a stall mid-transfer, only connection
errors and transient HTTP codes, so that class of failure never
retried. Each attempt also restarted from zero.

- --retry-all-errors so a mid-transfer stall is retried
- --continue-at - to resume into the existing .part instead of
  restarting, and bump retries to 5
- ignore .DS_Store, which is not covered today

Verified: a fresh download and a resume from a 5 MB partial produce the
same sha256; a 404 still aborts and leaves nothing behind; a stale .part
resumes into an invalid file, which the existing "recognized" check
catches before pytest with the make clean hint.
@GitBib
GitBib force-pushed the ci/resumable-fixture-download branch from e0c31c0 to 55ca534 Compare August 2, 2026 13:43
@GitBib
GitBib merged commit 8bde76b into master Aug 2, 2026
25 checks passed
@GitBib
GitBib deleted the ci/resumable-fixture-download branch August 2, 2026 13:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant