Better documentation on using --platform and --python-version
See original GitHub issueWhat’s the problem this feature will solve? I want to use pip to download linux packages onto a mac.
I know that I need to use some combination of --platform
, --python-version
, --only-binary=:all:
. but I don’t know the proper values for these options.
Describe the solution you’d like I would like the documentation from the command line tool to be clear, or the package documentation on pypi to be clear for each package what values were used for these options.
I am specifically trying to install pandas and sklearn for this example, but I think the issue is with the documentation.
for --platform
I have tried linux
linux_x86_64
for --python-version
I have tried 3
, 37
, 3.7
, cp37
I’m not sure if any of these are correct. I would expect the tool to offer example values ie
cp37 is not a valid option for --python-platform try (3, 37, py37) instead
I am downloading these packages in order to package them into an AWS lambda function. I would rather not spin up a linux VM just to download packages.
Alternative Solutions
I also tried
pip search -vvv pandas
I would expect that command to list all possible platform/python-version options that are applicable for the package.
Thank you
Issue Analytics
- State:
- Created 4 years ago
- Comments:13 (9 by maintainers)
Top GitHub Comments
I think there are two areas we can improve here:
--platform
,--python-version
,--implementaion
, and--abi
(I believe they are in the same category). Explain what they do (they control what wheels are selected from the index) and provide some examples of valid inputs.Since these flags are for wheel selection, valid inputs are described in the wheel spec (PEP 427). It would be helpful to provide a short write-up in the documentation and link to the PEP and PyPA’s page for platform tags.
I was just digging through the source code as you made this comment.
I eventually figured out that the arguments I wanted were
manylinux1_x86_64
and37
These were completely non-obvious. I looked at the files again and along with the source realized that
manylinux1_x86_64
was the proper name.This has solved my problem, but I still think that users could get very lost and confused when trying to use these options.