--install-option (in the cli) gets passed to deps being installed
See original GitHub issue$ pip install --install-option='--salt-root=/foo' salt
Downloading/unpacking salt
Downloading salt-2014.1.5.tar.gz (2.8MB): 2.8MB downloaded
Running setup.py (path:/tmp/ve-test/build/salt/setup.py) egg_info for package salt
2014.1.5
package init file 'salt/templates/__init__.py' not found (or not a regular file)
Downloading/unpacking Jinja2 (from salt)
Downloading Jinja2-2.7.3.tar.gz (378kB): 378kB downloaded
Running setup.py (path:/tmp/ve-test/build/Jinja2/setup.py) egg_info for package Jinja2
warning: no files found matching '*' under directory 'custom_fixers'
warning: no previously-included files matching '*' found under directory 'docs/_build'
warning: no previously-included files matching '*.pyc' found under directory 'jinja2'
warning: no previously-included files matching '*.pyc' found under directory 'docs'
warning: no previously-included files matching '*.pyo' found under directory 'jinja2'
warning: no previously-included files matching '*.pyo' found under directory 'docs'
Downloading/unpacking M2Crypto (from salt)
Downloading M2Crypto-0.22.3.tar.gz (74kB): 74kB downloaded
Running setup.py (path:/tmp/ve-test/build/M2Crypto/setup.py) egg_info for package M2Crypto
Downloading/unpacking msgpack-python (from salt)
Downloading msgpack-python-0.4.2.tar.gz (114kB): 114kB downloaded
Running setup.py (path:/tmp/ve-test/build/msgpack-python/setup.py) egg_info for package msgpack-python
Downloading/unpacking pycrypto (from salt)
Downloading pycrypto-2.6.1.tar.gz (446kB): 446kB downloaded
Running setup.py (path:/tmp/ve-test/build/pycrypto/setup.py) egg_info for package pycrypto
Downloading/unpacking PyYAML (from salt)
Downloading PyYAML-3.11.tar.gz (248kB): 248kB downloaded
Running setup.py (path:/tmp/ve-test/build/PyYAML/setup.py) egg_info for package PyYAML
Downloading/unpacking pyzmq>=2.2.0 (from salt)
Downloading pyzmq-14.3.1.tar.gz (982kB): 982kB downloaded
Running setup.py (path:/tmp/ve-test/build/pyzmq/setup.py) egg_info for package pyzmq
no previously-included directories found matching 'docs/build'
no previously-included directories found matching 'docs/gh-pages'
warning: no previously-included files found matching 'bundled/zeromq/src/Makefile*'
warning: no previously-included files found matching 'bundled/zeromq/src/platform.hpp'
warning: no previously-included files found matching 'setup.cfg'
warning: no previously-included files found matching 'zmq/libzmq*'
warning: no previously-included files matching '__pycache__/*' found anywhere in distribution
warning: no previously-included files matching '.deps/*' found anywhere in distribution
warning: no previously-included files matching '*.so' found anywhere in distribution
warning: no previously-included files matching '*.pyd' found anywhere in distribution
warning: no previously-included files matching '.git*' found anywhere in distribution
warning: no previously-included files matching '.DS_Store' found anywhere in distribution
warning: no previously-included files matching '.mailmap' found anywhere in distribution
warning: no previously-included files matching 'Makefile.am' found anywhere in distribution
warning: no previously-included files matching 'Makefile.in' found anywhere in distribution
Downloading/unpacking MarkupSafe (from salt)
Downloading MarkupSafe-0.23.tar.gz
Running setup.py (path:/tmp/ve-test/build/MarkupSafe/setup.py) egg_info for package MarkupSafe
Downloading/unpacking apache-libcloud (from salt)
Downloading apache_libcloud-0.14.1-py2.py3-none-any.whl (1.2MB): 1.2MB downloaded
Installing collected packages: salt, Jinja2, M2Crypto, msgpack-python, pycrypto, PyYAML, pyzmq, MarkupSafe, apache-libcloud
Running setup.py install for salt
2014.1.5
package init file 'salt/templates/__init__.py' not found (or not a regular file)
Installing salt-run script to /tmp/ve-test/bin
Installing salt-minion script to /tmp/ve-test/bin
Installing salt script to /tmp/ve-test/bin
Installing salt-key script to /tmp/ve-test/bin
Installing salt-call script to /tmp/ve-test/bin
Installing salt-cp script to /tmp/ve-test/bin
Installing salt-syndic script to /tmp/ve-test/bin
Installing salt-ssh script to /tmp/ve-test/bin
Installing salt-master script to /tmp/ve-test/bin
Installing salt-cloud script to /tmp/ve-test/bin
Running setup.py install for Jinja2
usage: -c [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
or: -c --help [cmd1 cmd2 ...]
or: -c --help-commands
or: -c cmd --help
error: option --salt-root not recognized
Complete output from command /tmp/ve-test/bin/python2 -c "import setuptools, tokenize;__file__='/tmp/ve-test/build/Jinja2/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-gFIT34-record/install-record.txt --single-version-externally-managed --compile --install-headers /tmp/ve-test/include/site/python2.7 --salt-root=/foo:
usage: -c [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
or: -c --help [cmd1 cmd2 ...]
or: -c --help-commands
or: -c cmd --help
error: option --salt-root not recognized
----------------------------------------
Cleaning up...
Command /tmp/ve-test/bin/python2 -c "import setuptools, tokenize;__file__='/tmp/ve-test/build/Jinja2/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-gFIT34-record/install-record.txt --single-version-externally-managed --compile --install-headers /tmp/ve-test/include/site/python2.7 --salt-root=/foo failed with error code 1 in /tmp/ve-test/build/Jinja2
Storing debug log for failure in /home/vampas/.pip/pip.log
Issue Analytics
- State:
- Created 9 years ago
- Reactions:7
- Comments:24 (11 by maintainers)
Top Results From Across the Web
Install - Chocolatey Software Docs
With the release of Chocolatey CLI v1.0.0 we have deprecated the following shims/shortcuts ... passed to the package # Install args are installer...
Read more >pip install - pip documentation v22.3.1
When looking at the items to be installed, pip checks what type of item each is, ... Use multiple --install-option options to pass...
Read more >pnpm install
pnpm install is used to install all dependencies for a project. In a CI environment, installation fails if a lockfile is present but...
Read more >MacPorts Guide
MacPorts is an easy to use system for compiling, installing, and managing open ... You can trigger this behavior by passing the --follow-dependencies...
Read more >Customizing Zscaler Client Connector with Install Options for ...
Installing Prerequisite Dependencies · Installing the Application using the Zscaler Run File · Installing the Application using the Debian Package · Installing ......
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
Is the a resolution for that issue available yet?
This temporary workaround of first installing the package with dependencies and then re-installing the package with --install-option is not working for me:
Additional software is installed during the installation of the package and the --install-option could skip this step. But there’s no use for this flag to simply install everything including the software first, just to then uninstall it again.
Assuming we want to NOT pass options to dependencies by default (and possibly remove the ability entirely), one possible approach would be:
--pass-options-to-deps
that makes pip behave the way it currently does.--no-pass-options-to-deps
makes pip not pass options to dependencies.If we want to remove the options getting passed to all dependencies behavior then the deprecation warning should also be traced if
--pass-options-to-deps
is used.One reason we may want to remove the behavior entirely is to transition fully over to config settings (#5771), which we could incorporate this kind of configuration into.