-
Notifications
You must be signed in to change notification settings - Fork 244
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
Have interfaces for platform_tag(), abi_tag(), and python_tag() for the host python #330
Comments
I'm a little worried about exposing the individual bits of the tags just because how they come together in the final tag triples is not obvious and easy to get wrong (i.e. I can totally see someone doing three nested This isn't to say that I am against the idea, but proper messaging that this sort of thing is only for advanced use when building tag triples from scratch. There's also the question of what would the expected semantics be? For the platform that's pretty straight-forward (although it does need to be a sequence to accommodate macOS). But what about ABI? On CPython there's a range of values. And how interpreter? Is that to be just what the newest interpreter is, or all potential version specifiers? And if all versions, do we need to worry about how those versions tie together with the other tags? I guess my key question is all three functions needed, or just one specifically like for the platform? I would probably also suggest names more like e.g. |
I am not sure I understand. Is there more than one expected |
@mattip it all depends on what you mean by e.g. "host ABI". 😉 I mean are you expecting just |
I guess I can limit my request to only the platform tag, but then |
For a host platform tag API, would you expect all possibilities, e.g. all of the compatible manylinux tags? Or just the newest/latest tag? |
Just the result of sysconfig.getconfig_var('EXT_SUFFIX') with the final suffix taken off, so that this code in wheel can go away |
OK, so that's for the ABI tag, not the platform tag. I'll have to think about this, but it might need to be a sequence, but in the case of 'wheel' it could always just take the first item from that sequence. |
I am writing a tool to use Meson to build python extensions and package them into wheels. For this I am looking into the wheel definition and, judging from the |
@dnicolodi this actually isn't about migrating the code (that happened a year ago across multiple tools). This issue is about exposing some low-level APIs in |
I must have expressed myself wrong, I meant that the code to compute tags could be moved from
|
Both are correct. |
I'm also looking for the first reasonable tag to put on a compiled wheel. As the inventor of the tagging system I assert the
We have also considered adding a 'local' tag instead that would always be used on the 'local' machine (for wheels that intentionally have limited distribution). |
xref pypa/wheel#367
It would be good to have one source of truth for the canonical tags from the host python, and who better to provide it than
packaging.tags
. This would enable refactoring code in wheel, setuptools, and pip.The text was updated successfully, but these errors were encountered: