Skip to content

--global-option for a specific requirement in requirements file disables use of wheels globally #4118

Open
@fillest

Description

@fillest
  • Pip version: 7.1.2 (tested with 9.0.1 with the same result)
  • Python version: 2.7.6
  • Operating System: Ubuntu 14.04

Description:

We have a big requirements file and use wheels. Now we've added a new package and need to pass some build arguments to it. I've figured out it can be placed into requirements file this way:

confluent-kafka==0.9.2 --global-option=build_ext --global-option="--rpath=/opt/librdkafka/lib/"

Pip is invoked like this:

/home/x/venv/bin/pip --disable-pip-version-check --cache-dir ~/pipcache wheel --build /tmp/pipbuild_x --src /tmp/pipsrc_x --find-links ~/pip_wheels_x -i https://our-pip-index-using-devpi --wheel-dir ~/pip_wheels_x --requirement deploy/requirements/all.txt

This message is printed:

/home/x/venv/local/lib/python2.7/site-packages/pip/req/req_file.py:129: UserWarning: Disabling all use of wheels due to the use of --build-options / --global-options / --install-options.
   cmdoptions.check_install_build_global(options, opts)

I expected it to use wheels for other packages but it stopped to use wheels for all the packages mentioned in deploy/requirements/all.txt. This breaks the installation process for us, because we use some private wheel-only packages uploaded to our devpi transparent index mirror.

Is it intended (why then?) or per-requirement handling is not implemented yet?

(Also after upgrading pip to 9.0.1 and reverting pip version back to 7.1.2 in our requirements file I got Could not find a version that satisfies the requirement pip==7.1.2 (from -r deploy/requirements/pip.txt (line 1)) (from versions: ) but this one may be a devpi issue, not sure yet)

Metadata

Metadata

Assignees

No one assigned

    Labels

    project: setuptoolsRelated to setuptoolstype: bugA confirmed bug or unintended behavior

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions