Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Force the --python-tag when autobuilding wheels #3225
A lot of existing tarballs will successfully build a wheel, but the wheel will be implicitly broken because they will have dynamically adjusted the install_requires inside of their
added a commit
this pull request
Nov 4, 2015
Nov 4, 2015
@rbtcollins Why? The only downside I see is that you might end up with some extraneous pure python wheels, but this doesn't have any effect on wheels that aren't pure Python. These projects can also effectively
Because with python 3 binary wheels can be multi version, and AIUI we're preventing that here. So its perhaps a more broad thing: we've got a (reasonably so) conservative behaviour to avoid the crushing burden of legacy pain, but it seems reasonable to have an opt-in facility to get better behaviour.
@rbtcollins So it depends on what you mean by "multi-version". Python 3 doesn't to my knowledge let you do that, the ABI tag there is for differentiating things like pymalloc vs non pymalloc I think. Looking at what tags we support in pip this is what I get on Python 3.5 on OSX:
Maybe it's theoretically possible to do that, but currently it's not actually possible.
That being said, you can manually share a wheel between multiple versions by using the
This was referenced
Feb 2, 2016
This is a very old issue, but I'm looking at it again in the context of PEP 517 support (#5407). A general PEP 517 build backend doesn't have any supported means of specifying a
Given that the original issue seems to be a result of custom code in setup.py, I think it's fair to assume that only setuptools-based projects need this, but even for those there are a couple of issues:
My inclination is to say that projects hitting this issue should use
Any thoughts? @dstufft I'd particularly like your input, as you were involved in the original bug report.
One possible idea that might help is if we added to PEP 517 a means for a project to declare in