I'm also strongly in support of a community-oriented hosting solution
such as GitHub, BitBucket, or Google Code. Having a centralized list
of forks is quite useful when one is looking to figure out what's
really going on with the source code and community contributions.
While manually submitting and updating patches is workable, why not
move to a solution that allows for fluid flow of code between
authors? DVCS systems and open source are seemingly made for each
other. I have a minor preference for Mercurial, but quite frankly,
any one of the three solutions would be fantastic!
Just converting the SVN repository to GIT/HG once isn't a great
solution since it makes merging from/to the trunk and sharing changes
with each other significantly more difficult than need be. Placing
changes back into SVN from a DVCS requires that you rebase your
changesets. Unfortunately, when you rebase, people that had pulled
your changesets now have "broken" repos. Basically, having to merge
back to a less capable system like SVN makes it difficult to share
changes in a way that opens up more community collaboration. Using a
DVCS as a front-end to SVN gives up too many important benefits in
terms of code sharing and ease of use.
Consider also the other benefits of the community sites, such as
shared code reviews. New changes can be analyzed, improved, and
commented on in place. Even different people can contribute to the
same significant feature without having to put the code on the trunk
before it's ready.
I'm getting all excited talking about this stuff. I'm very much
looking forward to the switch. :)
Patrick Earl