Skip to content
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

Maintenance support (offer) #751

Open
jaraco opened this issue Jul 10, 2024 · 10 comments
Open

Maintenance support (offer) #751

jaraco opened this issue Jul 10, 2024 · 10 comments

Comments

@jaraco
Copy link

jaraco commented Jul 10, 2024

Hi @indygreg . I read your blog. Congrats on all of the life changes. Sounds exciting.

I'd like to offer to take over maintenance for python-zstandard and possibly also PyOxidizer projects.

Like you, I've had some life changes, but my changes have given me more time to support open source projects.

My involvement would be modest - I don't have aspirations to make any major changes to the projects. Instead, I'd be focused on occasionally reviewing PRs and issues, guiding users to explore solutions, and cutting releases as needed to keep the projects from growing stale. I'd leverage the same methodology I use to maintain the hundreds of other projects I maintain in the Python ecosystem. I might step in to make important maintenance changes, but more than likely I'd direct the community to contribute most changes. I'd be careful to maintain the stability and quality that users have come to expect, directing contributors to provide well-engineered solutions with test coverage and to be responsive to unexpected regressions. And I of course would be happy to keep you on as a co-maintainer and be prepared to hand the project back should you wish to re-engage with any of them.

Let me know if that sounds at all interesting and if you have any specific stipulations you'd like to include.

Otherwise, feel free to give me ownership access of the PyPI projects and (optional but preferable) transfer the GitHub repos to the coherent-oss org, which I've formed to share maintenance on projects.

@ntamas
Copy link
Contributor

ntamas commented Jul 18, 2024

Hi @jaraco!

Thanks a lot for the offer - I hope that @indygreg will get back to you soon with a positive response. I am also relying on PyOxidizer in some of my projects for packaging so it would be great if the project could be kept up-to-date at least with support for newer Python versions.

I have a couple of commits lying around on my computer that attempts to bring the project up-to-date with newer versions of its dependencies. I am willing to offer these patches to the community when the project is revived.

@ntamas
Copy link
Contributor

ntamas commented Aug 19, 2024

Quick update: I have forked PyOxidizer and started working on bringing things up-to-date. I have migrated almost all of the dependencies to their latest versions (including PyO3) and all CI tests pass, with the exception of the cross-compiled musl libc version.

I will probably attempt to add support for newer versions of Python as the next step.

@johanneswilm
Copy link

@ntamas Great! I noticed your fork still links to the pages of @indygreg . Are you planning on making releases , etc. - maybe under a different name?

@ntamas
Copy link
Contributor

ntamas commented Oct 21, 2024

@johanneswilm I don't know yet; the maintenance burden seems to be larger than what I can take up on my own and I lack expertise in certain areas:

  • I could not manage to get the cross-compiled musl build right for a long time
  • now PyO3 yanked versions 0.22.0 to 0.22.3, which would not be a problem, but they also removed pyffi::_Py_PackageContext from the list of exported symbols in 0.22.4, wihch broke the builds for Windows. I would need to investigate what PyOxidizer is doing with _Py_PackageContext during the initialization process on Windows and whether it's really needed, but I have not been using Windows myself for a long while now so it's also going to take some time to investigate

All in all, I don't think I'll start making releases under a different name on my own unless I can get these sorted out and commit myself to dedicating more time to PyOxidizer -- otherwise it would be just another dead fork that does not really bring any benefit to the community.

@davidhewitt
Copy link

Having recently seen the blog after reading PyO3/pyo3#416 (comment), I wonder, would it be useful to folks if PyOxidizer was housed under the PyO3 GitHub organization? IMO it's an important part of the Rust/Python ecosystem so it seems thematically appropriate and I'd be happy to help look after the project.

That said, my time is generally saturated with work on PyO3 and other life responsibilities, so my involvement would be similar to @jaraco's own proposal in the OP. Perhaps @ntamas @johanneswilm you would be interested in active maintenance of PyOxidizer if it was homed under the PyO3 org, I may be able to bring some missing expertise?

We also have a PyO3 discord server which could become a home for any PyOxidizer chat threads.

In the OP @jaraco also talks about python-zstandard; I don't see any benefit the PyO3 org can offer there so coherent-oss seems like a fanstastic home for the project (although obviously that is for @indygreg to decide, not me).

@ntamas
Copy link
Contributor

ntamas commented Feb 11, 2025

Hi @davidhewitt and thanks for the offer! Indeed the lack of expertise is one of the factors that's stopping me from active maintenance (the other one being lack of free time). For instance a new PyOxidizer 0.25 release with a somewhat upgraded set of Python distributions and a newer PyO3 dependency is basically ready in my fork (in the https://github.com/ntamas/PyOxidizer/tree/update-python-distributions branch) apart from a build issue with musl libc that I was not able to resolve properly for a long time and wasted quite a few hours on it until I realized that the problem is a version mismatch between musl libc being shipped with Rust and the one being used to compile python-build-standalone (see ntamas@4ee34c7).

There are also other blockers that prevent the inclusion of Python 3.13 or prevent depending on newer versions of python-build-standalone builds, but I believe that even in the present state of my branch it's better than what we have in PyOxidizer 0.24 and in my organization we already started relying on my fork to push things forward (we want to get rid of having to depend on Python 3.10 for all our code so we can package it with PyOxidizer).

So, I believe that if no one else steps up with more time to dedicate to the maintenance of PyOxidizer than what I have, then this could be a solution.

emcd added a commit to emcd/python-mimeogram that referenced this issue Feb 15, 2025
(Coauthor: Anthropic claude-3-5-sonnet)

Newer versions of Python not supported by some PyOxidizer components.
Can consider another try with PyOxidizer once it is actively maintained
by someone again: indygreg/PyOxidizer#751
(The PyO3 or Astral.sh folks would seem to be logical candidates.)

Also:

* Tests: acquirers: Fix flaky test where byte pattern is interpreted as
  different MIME type depending on underlying 'libmagic' release. (Test
  passes on Ubuntu 20.04, but fails on Ubuntu 24.04.)
@indygreg
Copy link
Owner

Thank you, everyone, for the kind offers of support.

@davidhewitt's offer to host this project under the PyO3 organization is attractive to me because it is an established organization with several active projects and maintainers. Its projects also live at the intersection of Python and Rust. This seems strictly better than having the project live under an individual account.

If the people who are willing to put in the work on PyOxidizer are willing to do so under PyO3/PyOxidizer, then let's make it happen!

@jaraco
Copy link
Author

jaraco commented Feb 17, 2025

@indygreg How do you feel about handing over the keys to python-zstandard? Just ownership in PyPI would be enough, or you could also optionally transfer the repo to the coherent-oss org for better continuity.

@indygreg
Copy link
Owner

Let's limit this conversation to PyOxidizer. Open an issue against the python-zstandard project to discuss its future.

@davidhewitt
Copy link

Sure thing @indygreg . Perhaps let's follow up via either email or the PyO3 discord to figure out the logistics of the transfer and what permissions need to be reassigned to who.

(I have a couple busy days ahead, kids' half term holidays and RustNation UK, so likely my end this will not happen before the weekend or next week.)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants