Hi everyone, this is a follow up on the discussions in:
- v0.46.0 breaking builds on macos · Issue #659 · pypa/wheel · GitHub and
- Future of `wheel.macosx_libfile` · Issue #4935 · pypa/setuptools · GitHub
I am posting it here since one possible action is to create another pypa
repository, and it should be discussed in the broader PyPA context.
Maintainers have expressed their desire to stop maintaining the macox_libfile
functionality within pypa/wheel
. This library is used to calculate the proper macOS platform tag to be used when creating wheels.
In the discussion, I proposed the following:
I see 3 options going forward:
setuptools
absorbs also themacosx_libfile
module- A different foundational PyPA project absorbs it.
- We create a separated project for it, e.g.
pypa/macosx_libfile
(I would still keep the API as “protected” for internal use of the PyPA projects only, e.g. via a private modulemacos_libfile._restricted
1)Regarding 1, the module seems to be fairly complex and require advanced knowledge about macOS systems. I don’t feel right now confident in transferring the maintenance of such module into the same project as setuptools (which is already high maintenance).
Regarding 2, I think it is unlikely other foundational projects are interested in absorbing this module.So what makes more sense to me is option 3 to decouple the maintenance effort (…) hopefully we can also have other volunteers involved.
Note: If a new project is created, I am happy to be added as one of the maintainers since setuptools is the main consumer of the library so far (… although I don’t use macOS systems myself and haven’t worked on analysing macOS binaries, but I can try to organise issues/PRs).
In Future of `wheel.macosx_libfile` · Issue #4935 · pypa/setuptools · GitHub, it was pointed out that other projects in the ecosystem may also by interested.
In Future of `wheel.macosx_libfile` · Issue #4935 · pypa/setuptools · GitHub, it was suggested that delocate
may be a related project. (However, wearing my setuptools maintainer hat, I would prefer to have it as more lightweight package with no dependencies),.
So my questions are:
- Should we proceed and extract the code in a new package?
- Is there a better approach?
- Do we have the PyPA permission to proceed with that? (I believe that this aligns with the PyPA goals)
/cc @agronholm @jaraco