-
-
Notifications
You must be signed in to change notification settings - Fork 614
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Pip-compile ignores setup_dependencies when parsing setup.py #825
Comments
Hello @bgklein, Thanks for the info! Could you paste here a content of the |
One example is flake8==3.50 (setup_dependency of pytest-runner). |
I'm a little bit confused, what do you mean by |
Sorry my bad. put the wrong terminology. setup_requires as in https://github.com/PyCQA/flake8/blob/8acf55e0f85233c51c291816d73d828cc62d30d1/setup.py#L146 |
Thanks! Looks like that's a correct behaviour since packages in
|
Hmm that makes sense. Do you know if it would be possible to make this an optional flag for pip-compile? Otherwise my team will need to add them to our requirements file/maintain them separately as our actual install happens without internet connectivity causing 'They are simply downloaded to the ./.eggs directory if they’re not locally available already' to fail. |
You may simply add |
Yea it would be enough just mean more maintenance. Since we do hash checking we specify the versions of our dependencies. This means when upgrading flake8 and/or any other dependencies we will need to dive into the dependency tree to upgrade their respective setup_requires. |
FYI there is no need to specify version in |
While pip-compile does not require pinned versions, we do pin our versioning for our core dependencies. Looking over the setup_requires for most of our dependencies it looks like none of them pin their setup_requires to a specific version so we should be able to leave them unpinned, but it does defeat some of the purpose of pinning our dependencies. You can close the issue if you'd like, as the solution should work. I still think it'd be helpful to have a flag which would automatically get and add |
FYI, refs #492. |
Similar to #625 it seems that pip-compile ignores setup_dependencies when resolving dependencies. This causes a problem for us as our workflow uses pip-compile to freeze dependencies w/ hashes. Then we use the requirements files generated to pip download all dependencies prior to installing in a network isolated environment.
Environment Versions
Steps to replicate
pip-compile --generate-hashes --allow-unsafe --output-file test-windows.txt test.in
Where test.in contains a dependency which has setup_dependencies.
Expected result
Setup dependency to be populated in windows.txt
Actual result
Not included.
The text was updated successfully, but these errors were encountered: