Don't append "m" ABI flag in Python 3.8#6874
Conversation
|
Hello, thank you for submitting a PR! We're tracking this activity over in pypa/packaging#172. This fix should target that library and then ideally it would get pulled into both pip and wheel. IIUC, libraries built in release mode can get used in a debug interpreter in 3.8+, but not vice-versa. @vstinner describes the intended behavior here. So we would probably want to return a list of applicable tags (that is, both |
|
@chrahunt Note that this PR doesn't just cover debug but also the removal of the You're right that the addition of the Thank you for considering this. |
|
@chrahunt I have opened issue pypa/packaging#180 to track this in that library, but not before realising that I have changed the scope of this PR to only focus on the I've updated the unit test. |
|
You're right, this is unrelated to the change I linked before, sorry about that. I made issue #6885 describing the problem in more detail. Can you please update the news file to reflect that issue? @pradyunsg, assuming this looks OK and given the Python 3.8 release schedule (link), would this need to be in 19.2.3 or 19.3 to get into 3.8.0's |
|
Thank you. Updated the bugfix number. |
|
@rdb Thanks for spotting this and providing a fix! |
| warn=(impl == 'cp')): | ||
| warn=(impl == 'cp' and | ||
| sys.version_info < (3, 8))) \ | ||
| and sys.version_info < (3, 8): |
There was a problem hiding this comment.
Question: is there a reason the sys.version_info < (3, 8) has to go after the call to get_flag()? It seems like this would be simpler with it before because then the sys.version_info < (3, 8) wouldn't need to be duplicated.
There was a problem hiding this comment.
At a quick glance, that sounds like a reasonable tidy-up. A follow-up PR (as I just merged this as it stands) to clean this up would seem reasonable to me.
There was a problem hiding this comment.
Sounds good. (And the same type of change can be made in the following conditional as well.)
There was a problem hiding this comment.
I agree, I was just following the example of the other version check below.
|
Thanks for merging! @pradyunsg Though it didn't appear to be important in my testing, |
A proper fix for this has been merged in pip already (pypa/pip#6874), so this hack will only exist until pip 19.2.3 is out.
Don't append "m" ABI flag in Python 3.8
In Python 3.8, the
mflag is no longer appended to the SOABI, since the ABI is longer influenced by enabling pymalloc. This PR should fix the ability to install Python 3.8 wheels on Windows. In Python 3.8,sys.abiflagsis an empty string.https://docs.python.org/dev/whatsnew/3.8.html#build-and-c-api-changes
https://bugs.python.org/issue36707
See also pypa/wheel#303