CPython has 7,154 open issues — can we organize a cleanup effort?

There is some previous work around this such as Decision needed: should we close stale PRs? and how many lapsed days are PRs considered stale?. There are also some tools to try and understand nad make progress such as Triage dashboard. The best high level pieces are Triaging an issue but that definitely isn’t comprehensive of efforts across the community.

Mass-closing or marking as stale to me doesn’t work well; it fixes the measure of “Number of open issues” but doesn’t actually resolve the underlying issues or why they were are still open. There’s a lot of interesting, hard to resolve edge cases that come up with the scale and longevity of CPython. Seconding @gpshead old / known outstanding issues are valuable.

I’d also note it’s important not to make more work by triaging. In particular, I like Raymond Hettinger’s “Be a good neighbor” points (https://youtu.be/voXVTjwnn-U?si=Wsvfub0Yu-vG33YR&t=1861). There is a lot that has been debated, discussed, and worked on by many people in Python and there’s often a reason why things are the way they are even if it doesn’t match expectations. There’s a lot of things people have learned building and evolving the Python ecosystem over time.

Two ways I’ve found work well to find issues which I can help with:

  1. Look at issues in the “middle” of the bug tracker. The ones on the very first pages and last pages have had a of lot of eyes look at them and tend to be in states that are hard to resolve. Random pages in the middle in the bug tracker I have found have more straightforward to resolve cases. I’ll go to a random middle page and then spend a bit of time per issue to see if there’s anything useful I can do to move the issue. Note that closing issues should generally be done only by a core developer and their time, which is largely volunteered, is limited. Building relationships and trust matters.
  2. Come to core team sprints at conferences! Working in-person can save a lot of round-trip time and get things to resolution. Not every meetup or conference has active core developers who are looking to help mentor newer contributors but are a lot that do. I did core sprints at PyConUS last year and really enjoyed helping people work on CPython bugs.
6 Likes