Tox 运行 在一个回购克隆中很好,但在另一个中却不行
Tox running fine in one repo clone but not the other
我尝试 运行 tox
在我的回购克隆中,但出现此错误:
helton@helton-pc /data/Dropbox/Forks do GitHub/fastkml $ sudo tox
GLOB sdist-make: /data/Dropbox/Forks do GitHub/fastkml/setup.py
py27 create: /data/Dropbox/Forks do GitHub/fastkml/.tox/py27
py27 installdeps: pytest, coverage
ERROR: invocation failed (errno 2), args: [local('/data/Dropbox/Forks do GitHub/fastkml/.tox/py27/bin/pip'), 'install', 'pytest', 'coverage'], cwd: /data/Dropbox/Forks do GitHub/fastkml
Traceback (most recent call last):
File "/usr/local/bin/tox", line 11, in <module>
sys.exit(cmdline())
File "/usr/local/lib/python2.7/dist-packages/tox/session.py", line 39, in main
retcode = Session(config).runcommand()
File "/usr/local/lib/python2.7/dist-packages/tox/session.py", line 375, in runcommand
return self.subcommand_test()
File "/usr/local/lib/python2.7/dist-packages/tox/session.py", line 526, in subcommand_test
if self.setupenv(venv):
File "/usr/local/lib/python2.7/dist-packages/tox/session.py", line 434, in setupenv
status = venv.update(action=action)
File "/usr/local/lib/python2.7/dist-packages/tox/venv.py", line 153, in update
self.hook.tox_testenv_install_deps(action=action, venv=self)
File "/usr/local/lib/python2.7/dist-packages/pluggy.py", line 724, in __call__
return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
File "/usr/local/lib/python2.7/dist-packages/pluggy.py", line 338, in _hookexec
return self._inner_hookexec(hook, methods, kwargs)
File "/usr/local/lib/python2.7/dist-packages/pluggy.py", line 333, in <lambda>
_MultiCall(methods, kwargs, hook.spec_opts).execute()
File "/usr/local/lib/python2.7/dist-packages/pluggy.py", line 596, in execute
res = hook_impl.function(*args)
File "/usr/local/lib/python2.7/dist-packages/tox/venv.py", line 401, in tox_testenv_install_deps
venv._install(deps, action=action)
File "/usr/local/lib/python2.7/dist-packages/tox/venv.py", line 284, in _install
action=action)
File "/usr/local/lib/python2.7/dist-packages/tox/venv.py", line 257, in run_install_command
self._pcall(argv, cwd=self.envconfig.config.toxinidir, action=action)
File "/usr/local/lib/python2.7/dist-packages/tox/venv.py", line 362, in _pcall
redirect=redirect, ignore_ret=ignore_ret)
File "/usr/local/lib/python2.7/dist-packages/tox/session.py", line 136, in popen
stdout=stdout, stderr=STDOUT)
File "/usr/local/lib/python2.7/dist-packages/tox/session.py", line 224, in _popen
stdout=stdout, stderr=stderr, env=env)
File "/usr/lib/python2.7/subprocess.py", line 710, in __init__
errread, errwrite)
File "/usr/lib/python2.7/subprocess.py", line 1327, in _execute_child
raise child_exception
OSError: [Errno 2] No such file or directory
但是当我将 repo 克隆到其他位置时,它起作用了:
> cd ~/Desktop
> git clone http://github.com/heltonbiker/fastkml
> cd fastkml
> tox
我正在使用 Linux Mint 17.3 64 位,其中包含 python 2.7.6 和 sudo pip install tox
.
安装的 tox
晚会有点晚,但问题与 tox 没有直接关系。
问题 - 听起来多么微不足道 - 是您的项目路径包含空格。另一个克隆可能不包含空格,因此没有问题:
ERROR: invocation failed (errno 2), args: [local('/data/Dropbox/Forks do GitHub/[...]
这是上游工具(如 virtualenv 和 pip)的一个长期存在的问题。尽管 pip 10 的发布有望解决其中大部分问题。参见 pip does not support spaces in directories names
我们也在此处追踪 tox:https://github.com/tox-dev/tox/issues/121
从 2.8 开始,我们至少会给出一些更有帮助的错误,当发生这种情况时:https://github.com/tox-dev/tox/pull/556
我尝试 运行 tox
在我的回购克隆中,但出现此错误:
helton@helton-pc /data/Dropbox/Forks do GitHub/fastkml $ sudo tox
GLOB sdist-make: /data/Dropbox/Forks do GitHub/fastkml/setup.py
py27 create: /data/Dropbox/Forks do GitHub/fastkml/.tox/py27
py27 installdeps: pytest, coverage
ERROR: invocation failed (errno 2), args: [local('/data/Dropbox/Forks do GitHub/fastkml/.tox/py27/bin/pip'), 'install', 'pytest', 'coverage'], cwd: /data/Dropbox/Forks do GitHub/fastkml
Traceback (most recent call last):
File "/usr/local/bin/tox", line 11, in <module>
sys.exit(cmdline())
File "/usr/local/lib/python2.7/dist-packages/tox/session.py", line 39, in main
retcode = Session(config).runcommand()
File "/usr/local/lib/python2.7/dist-packages/tox/session.py", line 375, in runcommand
return self.subcommand_test()
File "/usr/local/lib/python2.7/dist-packages/tox/session.py", line 526, in subcommand_test
if self.setupenv(venv):
File "/usr/local/lib/python2.7/dist-packages/tox/session.py", line 434, in setupenv
status = venv.update(action=action)
File "/usr/local/lib/python2.7/dist-packages/tox/venv.py", line 153, in update
self.hook.tox_testenv_install_deps(action=action, venv=self)
File "/usr/local/lib/python2.7/dist-packages/pluggy.py", line 724, in __call__
return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
File "/usr/local/lib/python2.7/dist-packages/pluggy.py", line 338, in _hookexec
return self._inner_hookexec(hook, methods, kwargs)
File "/usr/local/lib/python2.7/dist-packages/pluggy.py", line 333, in <lambda>
_MultiCall(methods, kwargs, hook.spec_opts).execute()
File "/usr/local/lib/python2.7/dist-packages/pluggy.py", line 596, in execute
res = hook_impl.function(*args)
File "/usr/local/lib/python2.7/dist-packages/tox/venv.py", line 401, in tox_testenv_install_deps
venv._install(deps, action=action)
File "/usr/local/lib/python2.7/dist-packages/tox/venv.py", line 284, in _install
action=action)
File "/usr/local/lib/python2.7/dist-packages/tox/venv.py", line 257, in run_install_command
self._pcall(argv, cwd=self.envconfig.config.toxinidir, action=action)
File "/usr/local/lib/python2.7/dist-packages/tox/venv.py", line 362, in _pcall
redirect=redirect, ignore_ret=ignore_ret)
File "/usr/local/lib/python2.7/dist-packages/tox/session.py", line 136, in popen
stdout=stdout, stderr=STDOUT)
File "/usr/local/lib/python2.7/dist-packages/tox/session.py", line 224, in _popen
stdout=stdout, stderr=stderr, env=env)
File "/usr/lib/python2.7/subprocess.py", line 710, in __init__
errread, errwrite)
File "/usr/lib/python2.7/subprocess.py", line 1327, in _execute_child
raise child_exception
OSError: [Errno 2] No such file or directory
但是当我将 repo 克隆到其他位置时,它起作用了:
> cd ~/Desktop
> git clone http://github.com/heltonbiker/fastkml
> cd fastkml
> tox
我正在使用 Linux Mint 17.3 64 位,其中包含 python 2.7.6 和 sudo pip install tox
.
晚会有点晚,但问题与 tox 没有直接关系。
问题 - 听起来多么微不足道 - 是您的项目路径包含空格。另一个克隆可能不包含空格,因此没有问题:
ERROR: invocation failed (errno 2), args: [local('/data/Dropbox/Forks do GitHub/[...]
这是上游工具(如 virtualenv 和 pip)的一个长期存在的问题。尽管 pip 10 的发布有望解决其中大部分问题。参见 pip does not support spaces in directories names
我们也在此处追踪 tox:https://github.com/tox-dev/tox/issues/121
从 2.8 开始,我们至少会给出一些更有帮助的错误,当发生这种情况时:https://github.com/tox-dev/tox/pull/556