1.3 Poetry Install: Isolated PIP build dependency installation fails when behind proxy #7265
Closed
4 tasks done
Labels
status/duplicate
Duplicate issues
With the poetry configuration:
poetry config http-basic.jfrog $USER $API_TOKEN
we are able to pass authentication for poetry's installation for a different python repository. We also set similar settings for the pip.conf.-vvv
option) and have included the output below.Issue
Installation of dependencies via
python3 -m poetry install
fails with PIP subprocess error "subprocess-exited-with-error" due to failure to install build dependencies for protobuf3-to-dict (there are other examples, but this is the simplest).The subprocess issue is within the pip installation command but is not an issue with pip. In the change from poetry 1.2.2 to 1.3.0, there was the additional flag added for poetry's subprocess call to pip such that pip is executed in an
--isolated
environment (meaning pip will not look for environment variables or configuration file).This prevents a corrupt pip file from preventing poetry from installing dependencies correctly, but in the event pip wants to install dependencies that poetry has not managed to install, then pip defaults to the pythonhosted.org repository (and fails to see any proxy variables). Both of these are issues for my use-case where I am using a separate python repository (JFrog) and am behind a proxy.
When running the install for protobuf3-to-dict, pip goes to install
setuptools>=40.8.0
which is a build dependency. The command that poetry runs with pip:I was able to fix my installation of protobuf3-to-dict by either removing the
--isolated
flag (which then allows PIP to install the build dependencies based on my pip.conf) or the addition of the --no-build-isolation flag allows PIP to pass the install build dependency step since setuptools==63.6.3 is already installed.I would like for there to be an additional setting to turn off PIP isolation, this seems like the easiest way to fix this issue.
To avoid PIP installing build dependencies separately, if that is something the poetry community desires, then the
--no-build-isolation
flag could be added to allow PIP to reference installed build dependencies instead of repeating that work.Error logs:
The text was updated successfully, but these errors were encountered: