On 2 mars 2014, at 02:40, Josh Smeaton <
josh.s...@gmail.com> wrote:
> At the very least it might be a good middle ground to tag PRs with "Requires Work" or "Not Ready", so they can be easily filtered out from "active" PRs. On the other hand, there could be a strange mix of Trac and the PR queue containing conflicting information.
In short, Django uses PRs for code review, and nothing else. The status of a PR is defined by the status of the Trac ticket that contains a link to that PR. The ticket lifecycle is explained in the contributing guide.
GitHub's issues / PR system is designed for small projects. It's improductive and impractical to look at the list of pull requests and work from there. So we don’t do that. If you need to filter tickets, do it in Trac.
In detail, we cannot make a better use of PRs because GitHub’s UX is pathetic as soon as you have more than two dozen PRs. Having brought the number of issues on the Django Debug Toolbar down from 150 to 20, I have first hand experience of banging my head against GitHub Issues on a projet much smaller than Django, but already too large for GitHub. It’s simply impossible to navigate issues efficiently when all you have is binary open / close (and contributors can’t reopen when you close), tags (if you emulate state with tags, some tickets end up with multiple states and others with no state), pagination hardcoded at 30 per page, and that’s it. Also, if I remember correctly, we cannot receive notifications on the django-updates mailing list when someone makes a pull request, which doesn’t help.
I wish I could say “sure, we’ll give you access, show us how it would work” but that would mean giving you commit access to Django. At that point, we’re hitting the other big limitation of GitHub: if you aren’t a committer, you cannot do anything for a projet. But Django relies a lot on its broader community. So, once again, if you’d like to clarify the status of issues, the place to do it is Trac. (Triagers get a few extra permissions, just ask if you want them.)
I hope this helps you understand our choices better. I wish we could do everything on GitHub, but our body of knowledge is in Trac and its features simply blow GitHub out of the water.
--
Aymeric.