dvc: Adding file to dvc fails with Unknown argument(s): {'lock_args': (False,)}

When adding a file with dvc add myfile or dvc push, I get the following error:

ERROR: unexpected error - "Unknown argument(s): {'lock_args': (False,)}"

It used to work perfectly with the same version but we started getting this error today. Any idea what this could be?

Config

['remote "livebucket"']
url = s3://****/***
[core]
remote = livebucket

Please provide information about your setup DVC version: 0.80.0 Platform: Ubuntu Install method: pip install in conda environment

DVC version(i.e. dvc --version), Platform and method of installation (pip, homebrew, pkg Mac, exe (Windows), DEB(Linux), RPM(Linux))

About this issue

  • Original URL
  • State: closed
  • Created 4 years ago
  • Comments: 21 (15 by maintainers)

Commits related to this issue

Most upvoted comments

I’m still not convinced about this issue though @sergiusens - just tried and can’t reproduce this.

$ snap refresh --revision=388 dvc  # unpatched revision
$ conda create -n test python=3.6 cffi=1.12.2 tqdm=4.35.0  # should make dvc fail
$ conda activate test
$ dvc add -v my_folder  # still works without errors
$ echo $PATH
/home/user/miniconda2/bin:/home/user/.local/bin:/home/user/miniconda2/envs/test/bin:/home/user/miniconda2/condabin:...:/snap/bin

Reported here: https://bugs.launchpad.net/dvc/+bug/1880319, feel free to bump

Ok, since I can’t format the remote pc I will test this in a virtual machine and report back.

@casperdcl I don’t really know if it is a snap bug since to install dvc through snap I need to enable the --classic flag. I did the snap remove dvc && snap install dvc but to no avail.

I figured out that the tqdm lib that I updated was actually inside a virtualenv. So I deactivated the virtualenv, tried to update it again, but it said it was already updated. Then I found out that the dvc uses python3.6, but my system default is python3.7, so I had to update the tqdm lib for the specific python version with python3.6 -m pip install --user --upgrade tqdm. That fixed it.

Nevertheless, I agree that the snap version shouldn’t rely on a lib outside its scope, specifically if it is not my system’s default.

@george-gca in your trace:

...
File "/snap/dvc/388/lib/python3.6/site-packages/dvc/progress.py", line 90, in init
**kwargs
File "/home/gca/.local/lib/python3.6/site-packages/tqdm/_tqdm.py", line 860, in init
...

This makes no sense. Your isolated snap (/snap/dvc/388/...) is then using your system’s tqdm (/home/...)? Really? If that’s the case seems like a major upstream bug with snap.

Could you try snap remove dvc && snap install dvc?

In any case /home/gca/.local/lib/python3.6/site-packages/tqdm/_tqdm.py", line 860 is definitely an old version of tqdm<4.36.0.

@casperdcl Could you take a look please?