-
Notifications
You must be signed in to change notification settings - Fork 3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
get only first part of SOABI for ABI tag #2915
Conversation
after cpython- CPython 3.5 has SOABI='cpython-35m-darwin' This now returns the expected 'cp35m'
I should add: the situation right now is that OS X wheels cannot be created or uploaded with Python 3.5, since wheel is producing the abi tag |
I'm not super familiar with this code, is it possible to add a test, or there a test that's failing on Python 3.5 on OSX right now? |
The tests don't run at all for me on Python 3.5. They all fail with: ________________________________________________________________________________________________ ERROR collecting tests/unit/test_wheel.py _________________________________________________________________________________________________
.tox/py35/lib/python3.5/site-packages/py/_path/local.py:650: in pyimport
__import__(modname)
<frozen importlib._bootstrap>:969: in _find_and_load
???
<frozen importlib._bootstrap>:954: in _find_and_load_unlocked
???
<frozen importlib._bootstrap>:892: in _find_spec
???
<frozen importlib._bootstrap>:873: in _find_spec_legacy
???
.tox/py35/lib/python3.5/site-packages/_pytest/assertion/rewrite.py:137: in find_module
source_stat, co = _rewrite_test(state, fn_pypath)
.tox/py35/lib/python3.5/site-packages/_pytest/assertion/rewrite.py:278: in _rewrite_test
rewrite_asserts(tree)
.tox/py35/lib/python3.5/site-packages/_pytest/assertion/rewrite.py:336: in rewrite_asserts
AssertionRewriter().run(mod)
.tox/py35/lib/python3.5/site-packages/_pytest/assertion/rewrite.py:550: in run
new.extend(self.visit(child))
/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/ast.py:245: in visit
return visitor(node)
.tox/py35/lib/python3.5/site-packages/_pytest/assertion/rewrite.py:658: in visit_Assert
top_condition, explanation = self.visit(assert_.test)
/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/ast.py:245: in visit
return visitor(node)
.tox/py35/lib/python3.5/site-packages/_pytest/assertion/rewrite.py:789: in visit_Compare
left_res, left_expl = self.visit(comp.left)
/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/ast.py:245: in visit
return visitor(node)
.tox/py35/lib/python3.5/site-packages/_pytest/assertion/rewrite.py:780: in visit_Attribute
value, value_expl = self.visit(attr.value)
/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/ast.py:245: in visit
return visitor(node)
.tox/py35/lib/python3.5/site-packages/_pytest/assertion/rewrite.py:693: in visit_Name
locs = ast.Call(self.builtin("locals"), [], [], None, None)
E TypeError: Call constructor takes either 0 or 3 positional arguments I can add a test that asserts that there are no hyphens in the tags. |
Oh, on 3.5 you need |
Thanks. Tests are indeed passing without this patch, and they shouldn't be. I've added a test that fails on master, but passes after this patch. |
Awesome, thanks! There's a style error, if you can fix that up I can merge this right away. |
pep8 should be appeased. |
Thanks for finding this! The updated pip should probably get pushed into the 3.5 release. We should open a release-blocker Python issue for that. |
This apparently also affects building wheels on Linux. I have a travis bot for building wheels, and it can't build any compiled wheels on 3.5 due to this bug. |
get only first part of SOABI for ABI tag
after
cpython-
CPython 3.5 has SOABI='cpython-35m-darwin'
This now returns the expected 'cp35m'
The alternate fix is to add a
.replace('-', '_')
, so that the ABI tag would becp35m_darwin
, but right now there is a hyphen in the tag, which I believe is not valid in pep425.Related PR on wheel