I'm well aware that whoever steps up and says "We need to..." is first in line for volunteering but I'm just here to be the messenger. I don't have a solution to the problem but hope someone else does.
CVS accounts keep coming in fast and furious. There are a handful of us with access who hit the queue now and then when we have time with ajk doing the bulk of the work. Since we started doing code reviews before approving, the backlog has gotten worse since it's mostly ajk that does those. I run thru and decline the bad ones but I'm really not up to the code review task. Ironically, those with proper applications end up waiting the longest to hear something.
We need to either say heck with code reviews and approve anyone who is ready with something to contribute or we need more manpower. We also could use a better system in general because what we have is difficult to use. Putting a user to "pending" means they sit there with no one knowing why they are pending unless they want to hunt back thru emails. So the general policy is to either approve or decline and tell them to re-apply, which really isnt' ideal.
One possibility would be to use an issue queue to triage. Those interested in an account would first post there, in public, where everyone is able to review the application and help refine it. Once it's marked RTBC, they get approved. How to link an issue with an app, I don't know. Maybe make some way of turning CVS on without them having to apply thru the usual method?
As I said, I don't have the answer. I just am trying to bring this problem to light because I don't think there are many people who realize there isn't a "crew" in charge of approving accounts. As more and more people come to Drupal, this problem is just going to get worse unless "someone" figures out a solution. So hopefully that magical someone will come riding his pony through here. ;)
Michelle
| Comment | File | Size | Author |
|---|---|---|---|
| #23 | node59.txt | 10.28 KB | AjK |
| #22 | patch_522906_2.txt | 5.77 KB | AjK |
| #19 | patch_522906_1.txt | 4.04 KB | AjK |
Comments
Comment #1
deekayen commentedI go back and forth on whether CVS apps ought to have their own project issue queue instead of a component. I'm still undecided.
I don't really like the mailing list being the center of the applications at all. The way to link the issue with the app would be for the app to either automatically generate an issue and copy the applicant by email about the issue node or maybe for there to be a cvs applications project that had the "you must be a good user" disclaimer stuff as part of the help text for submitting issues.
Dear "Someone": Please make a CVS application process that incorporates or uses the issue queue and make it easy to use. Thanks!
Comment #2
killes@www.drop.org commentedI totally agree that we should move to an issue based system.
However, this needs to be implemented. Volunteers?
Comment #3
michelleThe more I think about it, the more I think an issue queue makes sense. In the short term, we could simply tell folks they need to apply in one of two ways:
1) File an issue in the queue of the existing project you are requesting to co-maintain or take over and follow the normal route we do with existing projects. That method actually takes very little time on the approver's part so doesnt' really need to change.
2) File an issue in the "CVS" queue to apply to contribute something new. This gives the whole community a chance to look at it, check for possible problems, mention other modules that the applicant could possibly work with instead, etc. This opens up the process to community review instead of being a behind the scenes mysterious thing like it is now.
We could actually make that "CVS queue" a "new projects" queue and ask that everyone file an issue before starting a new project for community review. I'm not suggesting this be enforced for existing account holders, because that would take even more manpower, but it would be a "strongly suggested" route. New account applicants would need to do this simply because they are new and unproven. Once their issue has reached RTBC, they then apply for an account and cite that issue just like is done now with #1.
This method would require nothing more than creating a new project and changing the CVS application help file. It may not be the perfect solution and perhaps someone has a better idea, but I think it's a good start and something we can do now for the 46 accounts currently waiting to be processed.
Michelle
Comment #4
deekayen commentedI thought we already decided on "Someone" doing it :)
Comment #5
michelleLOL! Well, I'm still hoping for Mr Pony to show up with a perfect solution. In the mean time, doing it this way doesn't take any more work than creating a project and changing some docs. I'm willing to do both of those if I have approval to do so.
Michelle
Comment #6
killes@www.drop.org commentedI am ok with such a change, but I think we should wait for ajk's opinion too.
Comment #7
dave reidI've been in favor of a queue for any new project node being created. This can be with actual project nodes or a new issue queue. Users contributing for the first time indicate that they will need approved CVS access. This also solves our problem with people that had a valid first project but then start creating duplicate modules. It will force people to actually think about their modules and themes before committing and will also allow us to review for GPL violations or security holes before publishing the project as well.
I would volunteer to be a part of any kind of project review process.
Comment #8
michelleSee also Proposal: Review projects before the first release in the forums.
Michelle
Comment #9
catchHeine posted an RFP for review of new projects in the forums at http://drupal.org/node/484034 - fwiw I agree with this and would be interested in helping code review new projects. The hope is that public review of these before they get releases could take some of the firefighting weight off the security team - since there's no problem with having security holes in an unreleased project discussed publically - which means more people can be involved, and it'd cut out the overhead of sending out SAs for things which get caught at that stage rather than later - it's only likely to cut out obvious XSS and SQL injection issues with new modules, but there's plenty of those.
If it'd also ease some of the weight of the CVS applications process then this seems like it'd help in two places where people are very overstretched.
Comment #10
michelleBumping this to critical. There are 47 applications in the queue, the vast majority of which are waiting on code reviews since I just did a sweep the other day and knocked out the others, and many of them have been there for weeks. I don't have the time, ajk is mia, and no one else seems to be doing them. We need to make this public process and get things moving ASAP.
Michelle
Comment #11
marshmn commentedSpeaking as one of those waiting for a cvs account currently, it would seem to me that the biggest problem is that reviews of new modules are quite a bottleneck with only one or two people taking part in them?
Although I can see advantages in having some early reviews through the issue system, I can still see that once it gets to the cvs application stage there will still be a bottleneck of needing a formal review?
Would it be possible to recruit more experienced devs to the review process? If there were 10 devs who commited to 1 review a week then surely that would ease the backlog somewhat?
Matt
Comment #12
marshmn commentedOops, accidentally changed Michelle's priority :( bumping back to critical... appologies...
Matt
Comment #13
michelleWell, no, the idea is that once you get an app issue to RTBC then we just set your account active. So it takes about 2 minutes at that point. :)
Michelle
Comment #14
marshmn commentedAh, ok, that's fair enough then :)
Matt
Comment #15
AjK commentedSorry for the late arrival to this issue, I've been on vacation (as you all noticed!). I've been discussing this with Gerhard on IRC and I'll post more on this and our ideas later today when I have time for a longer reply. Just adding this note to subscribe to the issue.
Thanks for everyones patience :)
Comment #16
AjK commentedHaving read this issue now and discussed with Gerhard on IRC the logical solution, as previous said, is to use
an issue queue. To that end I propose:-
Once the issue exists the workflow will be much the same as it is now in that I'll review, etc, etc. However, with an issue queue in place and a decent workflow (rather than the ML) we'll be able to start growing the CVS applications "team" in much the same way other areas of Drupal are managed on more of a community effort as opposed to the rather cliquey and cumbersome ML method. Over time I'd hope more people would be attracted to the applications process than exist right now (which is somewhat bottlenecked to say the least).
Additionally, the issue queue method will allow people to look at previous review comments as a sort of FAQ. Right now, unless you go digging in the ML archives all these reviews I do are rarely seen by anyone other than the applicant. There's often a lot of useful feedback that others would benefit from.
If people think this is a good idea then I'm happy to work on the mods for drupalorg.module to make this happen.
With regards to the current mailing list (cvs-applications). It current serves two functions.
It's my opinion that the issue queue will replace the former and realistically the latter is a request for support. Support really should be sough from the normal channels (forums, dev ML, etc) rather than the overworked CVS team. So I would recommend that the CVS apps ML should be retired completely.
[1] http://drupal.org/project/issues/cvsapplications
Comment #17
michelleSounds great to me. TBH, I rarely ever look at the mailing list. I have a bookmark on the apps page and just check that when I have a bit of time.
Michelle
Comment #18
dwwSounds great to me, too. However, this isn't a bug, per se. ;) The less we have to rely on crazy code in cvs.module for CVS applications, the better. That'll make it easier to ditch cvs.module entirely in favor of version control API. Thanks for working on this, AjK. If I wasn't so slammed, I'd offer to help. That said, if you run into trouble and need something, let me know and I'll see what I can do.
Cheers,
-Derek
Comment #19
AjK commenteddww, thanks for the comments. I'm not sure at this time what the situation is with moving towards the version control API is.
Since this is highly d.o specific requirement, I initially worked on a patch to drupalorg.module that hooks into all the various parts of the process to implement what's needed. Not sure if this is the way to go but this patch works on my hastily built test server.
The patch is pretty basic and a starting point. If we choose to do it this way then the patch would need a review (Gerhard?) and then a test on scratch.d.o
Anyway, here it is to start the ball rolling at least.
Note, in addition to the patch some of the CVS admin email strings need altering to use %cvs-project-issue to provide links in the outgoing emails back to the project issue created automatically. This is just a config change to cvslog module settings.
Comment #20
AjK commentedFor the record, Gerhard reviewed it and apart from the obvious typo (doh) has commited it to d6.drupal.org (the scratch site). I tested it there and it did what it says on the tin. However, d6.drupal.org is prevented from sending emails so that bit not tested. The emails on my test rig were fine.
Gerhard was ok to commit and apply for drupal.org but I said to wait until we get further feedback on this issue.
Comment #21
dwwNo time to review the patch now, but sounds like it's on the right track. One quick thought: it'd be nice to encode the config changes into a drupalorg_update_N() schema update, if that's not too much of a PITA.
Comment #22
AjK commentedHere's the latest patch. This addresses:-
For Gerhard's benefit, the NID on http://d6.drupal.org for define DRUPALORG_CVS_APP_PROJECT_NID is 367050 rather than 525912
Comment #23
AjK commentedAnd here's the new text for http://drupal.org/node/59
Appreciate this being checked by the documentation team.
Comment #24
gerhard killesreiter commentedOk, this is now committed to CVS.
tagging
Comment #25
gerhard killesreiter commentedcode is deployed on d.o and the update is run.
Comment #26
gerhard killesreiter commentedyay!
Comment #27
dwwGreat, then this doesn't need d.o deployment anymore... ;) Thanks folks. Hope it all works out nicely.