What's Changed
Behavioral Changes (CLI)
-
In
dvc status --cloud
,target
now supports specifying path to a dataset. Previously, specifying a directory as the target caused DVC to search for.dvc
anddvc.yaml
files inside it, from which the datasets specified in those files were then checked for cloud/remote status, rather than considering the directory itself as a dataset.
While this is technically a breaking change, we consider the previous behavior a bug and inconsistent with other DVC commands, including plaindvc status
. To restore the previous behavior, add the--recursive
option.Fixes #9336.
🚀 New Features and Enhancements
-
add
--remote
option todvc data status --not-in-remote
for checking files against a specified remote (instead of a default one) by @skshetry in #10843# Check against the 'my-s3' remote instead of the default $ dvc data status --not-in-remote --remote my-s3
-
exp show
accepts multiple--keep
and--drop
arguments in #10857$ dvc exp show --keep 'featurize' --keep 'avg_prec' --drop '.*train' --drop '.*split'
-
dvc init
supports initializing DVC repository in an arbitrary directory in #10861$ dvc init /path/to/dvc/repo/that/I/want/to/initialize
-
checkout
andpull
reports granular summary of changes in #10842Before, DVC would report statistics only about datasets affected during
checkout
phase.$ dvc pull dataset/train/4 A dataset/ 1 file added and 5843 files fetched
Now, it will report granular number of files affected by the operation.
$ dvc pull dataset/train/4 A dataset/ 5842 files added and 5843 files fetched
-
data status
now detects file moves/renames by default in #10846$ dvc move foo bar $ dvc data status DVC committed changes: (git commit the corresponding dvc files to update the repo) renamed: foo -> bar
-
dvcignore
: share implementation betweencheck-ignore
and internal API used by DVC, improve support for unignores (eg:!data/**
rules) in #10856 (Fixes #10722 and #10122) -
support completing remote name in zsh/bash in #10858
$ dvc push --remote <TAB> local my-s3
⚡ Optimizations
- load only a stage/.dvc file if the target is an address to that particular stage in #10838 (Fixes #8768)
- batch dump stages in
commit
, do not re-read on save from the workspace in #10839 (Fixes #10629)
🐛 Bug Fixes
- do not show missing cache entries on
dvc diff
result in #10845 (Fixes #7661) - handle missing DVC repo at Git HEAD in
dvc data status
in #10862 - show entry in "Not in cache" if dir entry is missing in
dvc diff
in #10844 (Fixes #7661) - fix
dvc.yaml
filepath in error message when reading from git revisions in #10847
🔨 Maintenance
- fix some, suppress some issues from ty check in #10841
Full Changelog: 3.62.0...3.63.0