Skip to content

Dependency install order is 'broken' #3966

@MMeent

Description

@MMeent
  • Pip version: 8.1.2
  • Python version: 3.5
  • Operating System: Windows, Linux (Debian, Ubuntu)

Description:

For our Django project we have a few dependencies which we want to install using PIP. Most dependencies work normally on both operating systems, but not all.

Specifically I'm speaking about the rcssmin and rjsmin modules, which are required by the 'django-compressor'-library. These do not install normally on windows, but using --install-option="--without-c-extensions" made those two install just fine. Including this into the head of our windows requirements file does not make PIP use these flags while installing these modules. This means that we have to run the pip requirements command 2 times instead of one, which is not terrible but annoying.

Something that would fix this annoyance is that in the requirements file your -r <filename> includes are evaluated only after the other requirements in that file, or (an optional flag for) that requirements are installed in the order the file specifies.

What I've run:

~>pip --version
pip 8.1.2 from C:\Python35\lib\site-packages (python 3.5)

~>cat requirements-windows.txt
## first install rcssmin and rjsmin without c extensions to ensure it won't fail
rcssmin==1.0.6 --install-option="--without-c-extensions"
rjsmin==1.0.12 --install-option="--without-c-extensions"

~>cat requirements.txt
## Django 1.9+ and utils
Django>=1.9
docutils>=0.12
django-auth-ldap>=1.2.7

## django-compressor for sass compiling and ES6 compiling
django-compressor>=2.0
django-compressor-toolkit==0.5.0

Metadata

Metadata

Assignees

No one assigned

    Labels

    auto-lockedOutdated issues that have been locked by automation

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions