OK, this has been a really good discussion, and I'm excited by all the interest in making our development process as accessible and easy to get involved as possible, and I think that lots of good points and counterpoints have been raised. But, I also think it's time to get on with the work of developing the best web framework that we can. So, let me summarize the important issues from this thread, and make a suggestion on how to move forward.
Points in favor of Mercurial: 1) Florent, Mark, Alberto, Jorge V. Percious, Lee McFadden all have used mercurial in the past and have given a +1 2) The killer feature for Mercurial is easy branching and merging, this reduces the cost of experimentation. 3) The other killer feature of Mercurial is that it makes it easier to accept even large contributions from someone without "commiter rights." 4) Mercurial has integration with buildout and other tools in our toolchain. 5) Documentation on how to contribute to TurboGears will have to be update 6) Alberto has some interesting integration stuff that makes it easy to publish new repositories and setup separate committer auth for those repositories. 7) Sprints become way, way easier to manage because everybody can commit to a local sprint repository. Disadvantages of switching: 1) TG contributers need to learn a new tool. 2) TG contribution documentation needs to be changed 3) The process could become more confusing and chaotic, if people go around publishing branches of their own. A couple of alternatives to mercurial were suggested. SVK would work on top of the existing infrastructure and provide some of the same benifits. But I see a couple of disadvantages here. SVK is harder to install and maintain, and is slower than mercurial. It's also not been well maintained as an open source project and I am hesitant to invest our collective energy in using it when it's very likely that it will wither and die. Another suggested alternative is bazaar, and this is a much more compelling story on some fronts. There is a bzr svn plugin that lets bzr treat a svn repository as a branch, so we could use that to maintain our existing svn repository structure but get some bzr advantages. Also the launchpad integration is nice. But, I think mercurial is a better choice for us because it's being used by more upstream projects, and because we have the mercurial integration that alberto wrote for TW. It's also been suggested that a switch to hg will require us to have stricter policies about how we handle the "main repository" but I think our current practice will just become policy. There would be a central hg repository for tg2, and the same people would have commit access to it as the current svn repository. Only stable agreed upon features should go in that repository. And branches created for experimentation should be published on the tg servers if they are expected to have public visibility. So, with all that summary, it seems to me pretty clear that a switch to hg has some significant advantages, and the disadvantages are pretty easily overcome. What excites me most about the switch is that we can make it significantly easier to make large contributions to TurboGears, without needing to ask for commit access first. And I want to encourage experamentation, exploration, and to make it as easy as possible to get involved. With all that said, I think I'm pretty well convinced that a switch to mercurial is in our future. My suggestion is that we move "trunk", and "projects/tg.devtools' into mercurial first, and that we work on getting Alberto's setup working on our servers, and see how things go. If there are any strong objections that didn't come up in the discussion, please jump in now. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "TurboGears Trunk" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/turbogears-trunk?hl=en -~----------~----~----~----~------~----~------~--~---
