Description
Bug description
Since the recent changes to gitpod/workspace-full
, doing pip install -e
no longer works in my repo. The same problem exists for gitpod/workspace-python
. The legacy-dazzle-v1
works fine. pip install
without -e
works fine.
Possibly related:
#679 (I saw the same error at some stage while fiddling around trying to get it working)
#664
#655
Steps to reproduce
Here's my repo: https://github.com/kedro-org/kedro. You'll find it all works fine if you pip install -e .
(which is run in .gitpod.yml already), but only because I've specified image: gitpod/workspace-full:legacy-dazzle-v1
. If we try instead with workspace-full
or workspace-python
I will instead get the following error. All dependencies install fine, but then it's the package itself that fails.
I'm guessing this is due to the combination of --user
and -e
, as in pypa/pip#7953, but unfortunately none of the workarounds there are working. As above, this used to work fine before the change to dazzle v2.
command: /usr/bin/python3 -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/workspace/kedro/setup.py'"'"'; __file__='"'"'/workspace/kedro/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' develop --no-deps --user --prefix=
cwd: /workspace/kedro/
Complete output (18 lines):
running develop
WARNING: The user site-packages directory is disabled.
error: can't create or remove files in install directory
The following error occurred while trying to add or remove files in the
installation directory:
[Errno 2] No such file or directory: '/usr/lib/python3.8/site-packages/test-easy-install-286.write-test'
The installation directory you specified (via --install-dir, --prefix, or
the distutils default setting) was:
/usr/lib/python3.8/site-packages/
This directory does not currently exist. Please create it and try again, or
choose a different installation directory (using the -d or --install-dir
option).
----------------------------------------
ERROR: Command errored out with exit status 1: /usr/bin/python3 -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/workspace/kedro/setup.py'"'"'; __file__='"'"'/workspace/kedro/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' develop --no-deps --user --prefix= Check the logs for full command output.
Expected behavior
Python package should install successfully.
Example repository
I tried making a minimal example here but this doesn't demonstrate the bug - pip install -e .
works fine there. I'm not sure why this one works but my complete kedro example doesn't.
Anything else?
No response