-
Notifications
You must be signed in to change notification settings - Fork 23
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
PyCQA/isort triage #64
Comments
I can't really comment on whether we can/should add more maintainers to the project as I'm not sure who is the "owner" of the project, but I'm a an organization admin. I don't think people would mind if I did some reviews and merged PRs. The list of 56 PRs is a bit too long to sort through, but feel free to ping me on individual PRs that you'd like to get merged. I can also do releases I think! But, still: we should probably find more active maintainers. As I said, I'm not sure what the process for that should be though. |
Well it's great to hear back from someone within the organization either way :) Let's see how it goes for now just pinging you, and after a bit I might ask to revisit the maintenance topic. Thanks! |
@DanielNoord I tend to avoid merging things on projects in unfamiliar with. It can feel like a violation to project members when an owner steps in and maybe accepts something they're uncomfortable with. |
That's understandable but in this case the code was very small and also reviewed by others. I don't intend to merge PRs like PyCQA/isort#2319 but making sure we can add support for 3.13 (PyCQA/isort#2306) for such a crucial package seems sensible. I believe that is the benefit that the PyCQA can offer: stepping in for small changes when maintainers don't have time themselves. |
In case it is useful, I volunteered to help out in the Discord as well (different channel from @Helveg, same basic message). From the commit history, it seems that @staticdev was the sole and primary maintainer last year. |
Without consent to make those changes, I'm not comfortable with adding folks or merging things. No offense to either of you, but I'm wary of @DanielNoord merging things as is. We never had agreement that others would be able to merge things from isort maintainers. (This has happened with other projects but those haven't needed it.) We also never got agreement to add folks who haven't made many contributions before regardless of reputation or lack thereof. I'm big on consent. I know @graingert was making attempts to reach people. I would believe he's been unsuccessful. And seeing as @DanielNoord was made an owner to help invite Pylint folks to teams and the org but Pylint has gone into their own org, I'm not sure there's much reason to keep him as owner as he hasn't bothered to receive anyone's consent. That's not the behavior I would expect. |
That's a fair starting point. We should also acknowledge the possibility that past maintainers won't come back to the projects. I'm prompted to think of the package reclamation process ( https://peps.python.org/pep-0541/#abandoned-projects ).1 For my part, I won't try to contribute to the project without more clarity about what the right path forward is -- I have filed no issues and opened no PRs. As an outsider, I want the PyCQA members to decide what they feel is best, and I don't want to add to the workload or put improper pressure on people to act quickly. If issue triage, bugfixing, or other work is agreed to be appropriate, my offer to help stands! Footnotes
|
I've been triaging issues and reviewing PRs for isort this week, and Daniel's been responsive. At the beginning of the week there were 219 issues and 57 PRs. In the last five days that's dropped to 198 issues and 41 PRs. However, it sounds like there's a standing administrative consent issue with the project. That is an important consideration, and I hope it can be resolved. In the meantime, I'll stop triaging until administrative issues are addressed. |
@sirosen that's a good point. If the organization were more ... Organized, I'd start to get alignment around that. Mostly this is just a loose collection right now. Attempts at collaboration and sharing things between projects never made it past the discussion at the PyCon hallway track. I'll see if I can reach @staticdev out of band as we have collaborated on other projects as well. If he's okay with it, I'll at least add y'all as triage maintainers to help with the open issues/PRs. Given how widely used isort is, I would want to make sure releases are for a while a little more audited but I don't personally have that time. |
That's sad to hear, but I'll stop merging things then. I get where you are coming from @sigmavirus24 but honestly in this case I don't really agree. With that position we're actively "hurting" users of This is not about me deciding on the future of the project or accepting features proposals, but about making sure the CI can run again (PyCQA/isort#2324), fixing issues with the dependency declarations (PyCQA/isort#2325), other fixes that at least make the project usable again (PyCQA/isort#2311) and fixing the integration with Nobody is getting any better by the project being unmaintained and I'd be a shame if somebody had to fork it just to make sure it usable on recent interpreter versions. I'd be a shame to not make use of the many offers of help of respected and experienced community members just because we can't reach people that have been unreachable for months. I saw @staticdev works in The Netherlands as I do so I might try to reach them as on Monday, but I'd hope that this can be resolved even if we can't reach anyone. |
I'm an outsider looking in. I'm a fractional CTO who was until recently frustrated that my Python 3.13 project - 3.13 is a customer requirement as they want to use the new free-threaded CPython - was not lintable with isort. I hugely appreciated the work that @DanielNoord put into releasing isort 6.0.0. I understand the politics here. I did some digging. The original owner of isort when it was transferred to PyCQA, @timothycrosley, last committed to isort in the week of February 19th, 2023. As per the PyCQA history, Timothy requested the transfer of isort to PyCQA in August 2020. He continued to maintain the project but the project has been essentially dormant for almost two years save for the 5.13 release prompted by the fact that Python 3.12 had been released two months prior, and the 6.0.0 release in response to Python 3.13. The owner was not involved in this release, its two patch releases, or the 6.0.0 release. @asottile indicated on the isort Discord channel that Timothy is "pretty much done with open source". The Discord channel also has a note from @sirosen that he's interested in picking up the ownership of this project. As per the Abandoned Projects guidelines, isort is effectively abandoned by @timothycrosley. That's fine - he is not mandated to spend his free time maintaining open-source projects. But the PyCQA organization should assign a new owner, given that we have someone willing to take it, whether that be @sirosen or @DanielNoord. I also believe that a stronger organizational structure would significantly benefit PyCQA. This thread demonstrates that the organization currently operates on an ad-hoc basis. A little more formal yet lightweight structure would provide real benefits for users of PyCQA tools. A Technical Steering Committee would be the most likely candidate to improve the management and organization in the absence of a BDFL. Harmonizing contributor guidelines across PyCQA projects, adopting a standard release workflow, adopting a shared policy on Python EOL dates across all PyCQA projects, and creating a PyCQA utility package for shared functionality between projects would all be beneficial decisions for the TSC to mull over. Inviting other commonly used, yet poorly maintained, linters into the PyCQA ecosystem would also be a good plan if such a structure were in place. As PyCQA is responsible for tools so important to the wider Python user base, and as I have skin in this particular game, I would be happy to be involved in or even lead such a management effort - noting, of course, that there are existing owners in place and I wouldn't want to step on anyone's toes. |
The fact that a past maintainer returned to the project and collaborated with Daniel to do the 6.0 release is both a good thing for the user community and pertinent to this thread. IMO this issue should be closed -- If @Helveg or I want to get involved, the right way for us to do it at this stage is to try to help with the project while it has some active maintainers. I have some work I'd like to do, but I have my own prior responsibilities as well. Decisions about changing PyCQA governance may be informed by this thread, but I do not believe that this is the right place for that discussion. |
@sirosen Where is the right place for that discussion? |
Either a fresh issue or the discord, but either will only work if pycqa members are interested. If it happens in this thread I'll unsubscribe, as I have no particular interest in being involved in pycqa governance at this time. (If I become a member of the org in the future, which is not impossible but unlikely, that would change.) |
Could someone definitively conclude who is actively maintaining |
I'm happy to report that I have been able to contact @staticdev and he is now actively merging PRs and releasing isort. I have helped a bit with some of the reviews and think collaboration is going great. I still have opinions about what we should do with unmaintained projects within the organisation but I think that is outside of the scope of this issue. Therefore, I'm going to close it. If anybody feels that is premature 8md happily reopen of course! Thanks to all involved for the lively discussion and helping with giving isort the attention and care it needed :) |
(crossposted on Discord as well)
Hi! I've opened PyCQA/isort#2283 and I've struggled to get traction on it for several months now. I'd like to volunteer to triage issues and contribute more PRs, given that there's someone I could tag to review/merge my PRs in a timely manner?
On top of that I've been involved in OpenSource communities for about 20 years now and wouldn't mind volunteering to maintain
isort
and help keep the PyCQA healthy and active.The text was updated successfully, but these errors were encountered: