Note: I'm sending this to both mailing lists (devel and users), but
the discussion that follows should happen exclusively on the devel
mailing list.

If you always wanted to be part of Castle team, and if you think you
can spare some hours to contribute back to the project and if you're
meticulous and prestative, then you might be the perfect person to
fill this position! :-)

We're looking for a patch manager. The person on this role need to
keep an eye on the mailing lists and on the jira and do not allow a
patch to be forgotten as this is very frustrating for everyone
involved: the project that might lose an important contribution and
the author of the patch which worked on a patch and never got a reply.
I'm reproducing below a small portion of the book "Producing open
source software" as it gives a good explanation of the role.

The person will be chosen by vote by the committers (which have
binding votes). However, as usual, everybody on the mailing list is
encouraged to participate on the decision. A patch manager _will not_
receive SVN commit rights, as this is totally different from being a
committer. But obviously credit will be given.

Thanks!

"In a free software project that receives a lot of patches, keeping
track of which patches have arrived and what has been decided about
them can be a nightmare, especially if done in a decentralized way.
Most patches arrive as posts to the project's development mailing list
(though some may appear first in the issue tracker, or on external web
sites), and there are a number of different routes a patch can take
after arrival.

Sometimes someone reviews the patch, finds problems, and bounces it
back to the original author for cleanup. This usually leads to an
iterative process—all visible on the mailing list—in which the
original author posts revised versions of the patch until the reviewer
has nothing more to criticize. It is not always easy to tell when this
process is done: if the reviewer commits the patch, then clearly the
cycle is complete. But if she does not, it might be because she simply
didn't have time, or doesn't have commit access herself and couldn't
rope any of the other developers into doing it.

Another frequent response to a patch is a freewheeling discussion, not
necessarily about the patch itself, but about whether the concept
behind the patch is good. For example, the patch may fix a bug, but
the project prefers to fix that bug in another way, as part of solving
a more general class of problems. Often this is not known in advance,
and it is the patch that stimulates the discovery.

Occasionally, a posted patch is met with utter silence. Usually this
is due to no developer having time at that moment to review the patch,
so each hopes that someone else will do it. Since there's no
particular limit to how long each person waits for someone else to
pick up the ball, and meanwhile other priorities
are always coming up, it's very easy for a patch to slip through the
cracks without any single person intending for that to happen. The
project might miss out on a useful patch this way, and there are other
harmful side effects as well: it is discouraging to the author, who
invested work in the patch, and it makes the project as a whole look a
bit out of touch, especially to others considering writing patches.

The patch manager's job is to make sure that patches don't "slip
through the cracks." This is done by following every patch through to
some sort of stable state. The patch manager watches every mailing
list thread that results from a patch posting. If it ends in a commit
of the patch, he does nothing. If it goes into a review/revise
iteration, ending with a final version of the patch but no commit, he
files an issue pointing to the final version, and to the mailing list
thread around it, so that there is a permanent record for developers
to follow up on later. If the patch addresses an existing issue, he
annotates that issue with the relevant information, instead of opening
a new issue.

When a patch gets no reaction at all, the patch manager waits a few
days, then follows up asking if anyone is going to review it. This
usually gets a reaction: a developer may explain that she doesn't
think the patch should be applied, and give the reasons why, or she
may review it, in which case one of the previously
described paths is taken. If there is still no response, the patch
manager may or may not file an issue for the patch, at his discretion,
but at least the original submitter got some reaction.

Having a patch manager has saved the Subversion development team a lot
of time and mental energy. Without a designated person to take
responsibility, every developer would constantly have to worry "If I
don't have time to respond to this patch right now, can I count on
someone else doing it? Should I try to keep an eye on it? But if other
people are also keeping an eye on it, for the same reasons, then we'd
have needlessly duplicated effort." The patch manager removes the
second-guessing from the situation. Each developer can make the
decision that is right for her at the moment she first sees the patch.
If she wants to follow up with a review, she can do that—the patch
manager will adjust his behavior accordingly. If she wants to ignore
the patch completely, that's fine too; the patch manager will make
sure it isn't forgotten.

Because this system works only if people can depend on the patch
manager being there without fail, the role should be held formally. In
Subversion, we advertised for it on the development and users mailing
lists, got several volunteers, and took the first one who replied.
When that person had to step down (see
the section called "Transitions" later in this chapter), we did the
same thing again. We've never tried having multiple people share the
role, because of the communications overhead that would be required
between them; but perhaps at very high volumes of patch submission, a
multiheaded patch manager might make sense."

-- 
Cheers,
hammett
http://hammett.castleproject.org/

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
CastleProject-users mailing list
CastleProject-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/castleproject-users

Reply via email to