To be truly deterministic, a maintainer of a Pipfile should be able to specify whether to use binary or source
See original GitHub issueCurrently, if it is necessary to specify source or binary installation of packages it is required for the end user to specify this using pip environment variables, e.g. PIP_NO_BINARY=psycopg2 pipenv install
The maintainer of the Pipfile has no way of specifying this directly, so must tell the end user through another channel. This leaves uncertainty as to which variant of the software has been installed
With requirements.txt is is possible for the maintainer to specify in the file the preference with options such as --no-binary psycopg2
I believe that adding binary and source options that default to true to the packages specifier would be a sensible way to replicate this behaviour for pipenv e.g.
[packages]
psycopg2 = {version = "~=2.7", binary=false}
Issue Analytics
- State:
- Created 4 years ago
- Reactions:2
- Comments:6 (5 by maintainers)
Top Results From Across the Web
pipenv Documentation - Read the Docs
Enables truly deterministic builds, while easily specifying only what you want. • Generates and checks file hashes for locked dependencies when installing from ......
Read more >Advanced Usage of Pipenv - Python Packaging Authority
If you'd like to specify that a specific package only be installed on certain systems, you can use PEP 508 specifiers to accomplish...
Read more >pipenv Documentation - manpages.ubuntu!
☤ PIPENV FEATURES ... Enables truly deterministic builds, while easily specifying only what you want. ... Generates and checks file hashes for locked...
Read more >pipenv Documentation
define dependencies, see Pipfile vs setup.py. The problems that Pipenv seeks to solve are multi-faceted: • You no longer need to use pip...
Read more >Pipenv: A Guide to the New Python Packaging Tool
Providing the --dev argument will put the dependency in a special [dev-packages] location in the Pipfile . These development packages only get installed...
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 Free
Top 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
I kind of feel this is a reasonable thing to ask for. The flag should probably not be binary, but tri-state (sdist-only, binary-only, and no preference), but the idea itself is good.
How do you think this should be implemented? I can think of two possibilities:
This has been merged https://github.com/pypa/pip/pull/6699