iterative / dvc

🦉 ML Experiments and Data Management with Git
https://dvc.org
Apache License 2.0
13.36k stars 1.16k forks source link

`repro --pull` refactor #10435

Closed dberenbaum closed 1 month ago

dberenbaum commented 1 month ago

Replaces #10434 and fixes #10412.

From #10434:

  1. With this PR, --pull may skip unchanged stages without pulling them since --allow-missing is intended to skip these stages entirely. This saves time pulling that data but also may be unexpected/more breaking than if we pull unstaged changes.

Now repro --pull will pull stages even if they are otherwise unchanged. repro --pull --allow-missing will skip those stages without pulling.

  1. Regardless of this PR, --allow-missing will skip pull and checkout for unchanged stages, but it will still checkout unchanged stages from the local cache. This may also be expensive, and arguably we should skip checkout for these.

Now --allow-missing will skip otherwise unchanged stages without checking out the data from the local cache (before we skipped pulling from remote cache but still checked out if data was available in local cache).

codecov[bot] commented 1 month ago

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 90.65%. Comparing base (5bfacec) to head (69215f6). Report is 1 commits behind head on main.

Additional details and impacted files ```diff @@ Coverage Diff @@ ## main #10435 +/- ## ========================================== + Coverage 90.61% 90.65% +0.04% ========================================== Files 503 503 Lines 39004 39046 +42 Branches 5635 5637 +2 ========================================== + Hits 35344 35398 +54 + Misses 2985 2978 -7 + Partials 675 670 -5 ```

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.