Skip to content
This repository has been archived by the owner on May 30, 2020. It is now read-only.

Binary wheels for linux are not supported #120

Closed
ewdurbin opened this issue Feb 21, 2014 · 8 comments
Closed

Binary wheels for linux are not supported #120

ewdurbin opened this issue Feb 21, 2014 · 8 comments

Comments

@ewdurbin
Copy link
Member

Originally reported by: Thimo Kraemer (Bitbucket: joonis, GitHub: joonis)


Uploading a binary wheel for linux results in an error:

400 Client Error: Binary wheel for an unsupported platform

Example file names:

  • mypkg-1.0-cp27-none-linux_i686.whl
  • mypkg-1.0-cp27-none-linux_x86_64.whl

@ewdurbin
Copy link
Member Author

ewdurbin commented Mar 1, 2014

Original comment by Thimo Kraemer (Bitbucket: joonis, GitHub: joonis):


Patch of webui.py to support binary wheels for Linux.

@ewdurbin
Copy link
Member Author

ewdurbin commented Mar 3, 2014

Original comment by Richard Jones (Bitbucket: r1chardj0n3s, GitHub: r1chardj0n3s):


Sorry, can't accept this patch as the Linux binary wheel situation is still to be resolved. For your reference, the relevant issue on the metadata side is https://bitbucket.org/pypa/pypi-metadata-formats/issue/15/enhance-the-platform-tag-definition-for

@ewdurbin
Copy link
Member Author

ewdurbin commented Mar 3, 2014

Original comment by Thimo Kraemer (Bitbucket: joonis, GitHub: joonis):


Ok, but is it reasonable to generally block any linux binary for now? Also those wheels that are independent of the linux distribution?

@ewdurbin
Copy link
Member Author

Original comment by Graham Wideman (Bitbucket: gwideman, GitHub: gwideman):


Now in a daze from stumbling around dozens of PEPs, doc pages and at least 10% of the entire internet trying to figure out exactly what wheel does and doesn't support, and what that trajectory might be... could someone answer a simple question:

So, does this issue mean that PyPI is blocking ALL wheels for linux, including ones that only contain python modules? If PyPI does accept python-only wheels, is PyPi inspecting the entire contents, or is there some metadata that PyPI uses to determine acceptability?

Thanks. Now going for some aspirin.

@ewdurbin
Copy link
Member Author

Original comment by Marcus Smith (Bitbucket: qwcode, GitHub: qwcode):


the wheel file itself contains a "platform" tag
http://legacy.python.org/dev/peps/pep-0425/#platform-tag
I think that's what is being used.

if a wheel is only python, then it's not specific to linux, and it's platform tag should be "any", and it won't get blocked.

@ewdurbin
Copy link
Member Author

Original comment by Graham Wideman (Bitbucket: gwideman, GitHub: gwideman):


@MarcusSmith Ah, thanks.

I see what you're pointing to in PEP 425: "a user might accept only the *-none-any tags to only download built packages that advertise themselves as being pure Python."

So, effectively, "any" is a flag for "pure" (or at least, "advertises itself to be pure"). And the thinking is that PyPI is relying on that as the basis for blocking or not.

As an aside, this suggests that, if you're desperate to use wheel and PyPI to deliver some linux non-pure distribution to cronies with the same linux distro and Python, you could mark your non-pure distribution 'any'.

@ewdurbin ewdurbin added major and removed bug labels Jun 18, 2016
@pylover
Copy link

pylover commented Aug 20, 2016

@jamadden
Copy link
Collaborator

jamadden commented Jun 2, 2017

It seems to me that the advent of PEP 513 (the manylinux specification) is the currently accepted answer about uploading binary wheels for linux, so this issue can be closed.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants