mirror of
https://github.com/Stone-Red-Code/dvc.git
synced 2026-11-09 23:10:24 +01:00
exp apply: force apply by default (#5360)
* exp apply: force apply by default * update tests
This commit is contained in:
@@ -764,10 +764,10 @@ def add_parser(subparsers, parent_parser):
|
||||
formatter_class=argparse.RawDescriptionHelpFormatter,
|
||||
)
|
||||
experiments_apply_parser.add_argument(
|
||||
"-f",
|
||||
"--force",
|
||||
action="store_true",
|
||||
help="Overwrite any conflicting changes.",
|
||||
"--no-force",
|
||||
action="store_false",
|
||||
dest="force",
|
||||
help="Fail if this command would overwrite conflicting changes.",
|
||||
)
|
||||
experiments_apply_parser.add_argument(
|
||||
"experiment", help="Experiment to be applied.",
|
||||
|
||||
@@ -19,7 +19,7 @@ logger = logging.getLogger(__name__)
|
||||
|
||||
@locked
|
||||
@scm_context
|
||||
def apply(repo, rev, force=False, **kwargs):
|
||||
def apply(repo, rev, force=True, **kwargs):
|
||||
from dvc.repo.checkout import checkout as dvc_checkout
|
||||
from dvc.scm.base import MergeConflictError, SCMError
|
||||
|
||||
|
||||
@@ -131,7 +131,7 @@ def test_resume_branch(tmp_dir, scm, dvc, checkpoint_stage, workspace):
|
||||
)
|
||||
checkpoint_a = first(results)
|
||||
|
||||
dvc.experiments.apply(branch_rev, force=True)
|
||||
dvc.experiments.apply(branch_rev)
|
||||
results = dvc.experiments.run(
|
||||
checkpoint_stage.addressing,
|
||||
checkpoint_resume=branch_rev,
|
||||
|
||||
@@ -175,7 +175,7 @@ def test_apply(tmp_dir, scm, dvc, exp_stage, queue):
|
||||
)
|
||||
|
||||
with pytest.raises(ApplyConflictError):
|
||||
dvc.experiments.apply(exp_b)
|
||||
dvc.experiments.apply(exp_b, force=False)
|
||||
# failed apply should revert everything to prior state
|
||||
assert (tmp_dir / "params.yaml").read_text().strip() == "foo: 2"
|
||||
assert (
|
||||
@@ -184,7 +184,7 @@ def test_apply(tmp_dir, scm, dvc, exp_stage, queue):
|
||||
else "foo: 2"
|
||||
)
|
||||
|
||||
dvc.experiments.apply(exp_b, force=True)
|
||||
dvc.experiments.apply(exp_b)
|
||||
assert (tmp_dir / "params.yaml").read_text().strip() == "foo: 3"
|
||||
assert (
|
||||
(tmp_dir / "metrics.yaml").read_text().strip() == metrics_original
|
||||
|
||||
@@ -43,7 +43,7 @@ def test_all_commits(tmp_dir, scm, dvc, queued, expected):
|
||||
exp_rev = first(results)
|
||||
dvc.experiments.run(stage.addressing, params=["foo=3"], queue=True)
|
||||
|
||||
dvc.experiments.apply(exp_rev, force=True)
|
||||
dvc.experiments.apply(exp_rev)
|
||||
scm.add(["dvc.yaml", "dvc.lock", "copy.py", "params.yaml", "metrics.yaml"])
|
||||
scm.commit("v2")
|
||||
|
||||
@@ -72,7 +72,7 @@ def test_all_branches(tmp_dir, scm, dvc, queued, expected):
|
||||
exp_rev = first(results)
|
||||
dvc.experiments.run(stage.addressing, params=["foo=3"], queue=True)
|
||||
|
||||
dvc.experiments.apply(exp_rev, force=True)
|
||||
dvc.experiments.apply(exp_rev)
|
||||
scm.add(["dvc.yaml", "dvc.lock", "copy.py", "params.yaml", "metrics.yaml"])
|
||||
scm.commit("v2")
|
||||
|
||||
@@ -82,7 +82,7 @@ def test_all_branches(tmp_dir, scm, dvc, queued, expected):
|
||||
dvc.experiments.run(stage.addressing, params=["foo=5"], queue=True)
|
||||
exp_rev = first(results)
|
||||
|
||||
dvc.experiments.apply(exp_rev, force=True)
|
||||
dvc.experiments.apply(exp_rev)
|
||||
scm.add(["dvc.yaml", "dvc.lock", "copy.py", "params.yaml", "metrics.yaml"])
|
||||
scm.commit("v3")
|
||||
|
||||
@@ -108,7 +108,7 @@ def test_all_tags(tmp_dir, scm, dvc, queued, expected):
|
||||
exp_rev = first(results)
|
||||
dvc.experiments.run(stage.addressing, params=["foo=3"], queue=True)
|
||||
|
||||
dvc.experiments.apply(exp_rev, force=True)
|
||||
dvc.experiments.apply(exp_rev)
|
||||
scm.add(["dvc.yaml", "dvc.lock", "copy.py", "params.yaml", "metrics.yaml"])
|
||||
scm.commit("v2")
|
||||
scm.tag("tag-v2")
|
||||
|
||||
@@ -135,7 +135,7 @@ def test_show_checkpoint_branch(
|
||||
)
|
||||
checkpoint_a = first(results)
|
||||
|
||||
dvc.experiments.apply(branch_rev, force=True)
|
||||
dvc.experiments.apply(branch_rev)
|
||||
results = dvc.experiments.run(
|
||||
checkpoint_stage.addressing,
|
||||
checkpoint_resume=branch_rev,
|
||||
|
||||
@@ -18,7 +18,7 @@ from .test_repro import default_arguments as repro_arguments
|
||||
|
||||
|
||||
def test_experiments_apply(dvc, scm, mocker):
|
||||
cli_args = parse_args(["experiments", "apply", "--force", "exp_rev"])
|
||||
cli_args = parse_args(["experiments", "apply", "--no-force", "exp_rev"])
|
||||
assert cli_args.func == CmdExperimentsApply
|
||||
|
||||
cmd = cli_args.func(cli_args)
|
||||
@@ -26,7 +26,7 @@ def test_experiments_apply(dvc, scm, mocker):
|
||||
|
||||
assert cmd.run() == 0
|
||||
|
||||
m.assert_called_once_with(cmd.repo, "exp_rev", force=True)
|
||||
m.assert_called_once_with(cmd.repo, "exp_rev", force=False)
|
||||
|
||||
|
||||
def test_experiments_diff(dvc, scm, mocker):
|
||||
|
||||
Reference in New Issue
Block a user