[Twisted-Python] Moving Twisted off Trac and SVN to somewhere nicer

Kevin Horn kevin.horn at gmail.com
Fri Jul 1 12:00:01 MDT 2011

On Fri, Jul 1, 2011 at 5:29 AM, Laurens Van Houtven <_ at lvh.cc> wrote:

> Hi,
> As some of you may already know (either through a backchannel or because
> you talked to me at Europython), there has been some talk about moving
> Twisted way from Trac+SVN to somewhere that isn't Trac+SVN.
> A lot of the devs do like SVN. My guess is that that's mainly because they
> don't actually use SVN, they use Combinator, or something. On the other
> hand, I do think that Trac is pretty universally loathed, and it would be a
> good idea to get away from it.
> There's a few existing hosting solutions:
>    1. Launchpad (+ Bazaar as the default vcs)
>    2. Bitbucket (+ Mercurial as the default vcs)
>    3. Github (+ Git as the default vcs)
> Although I've hated git for a long while (and I still don't like it very
> much), I firmly believe Github is the right thing for Twisted. My incredibly
> unscientific poll amongst people who like Twisted but aren't devs is that
> they all love or at least like Github, and a surprising number has a
> distaste for Launchpad (unfamiliarity with Bazaar, perceived
> developer-unfriendly UI, slowness).
> Unless someone is going to go all "NO GITHUB IS TERRIBLE AND YOU ARE A BAD
> PERSON FOR EVEN SUGGESTING IT" on me, maybe we can talk about planning the
> transition? :)
> --
> cheers
> lvh
A bunch of thoughts after reading a lot of this thread:

 * any move to  any DVCS will need a well-defined
   workflow/branching model/whatever, and it needs to be _written down_ so
   that people can be referred to it

 * moving to a DVCS would make it easier to merge changes from contributors

 * moving to a DVCS would allow contributors to work on their contributions
   in version control...no more patch nonsense.

 * though at times, after dealing with SVN/Combinator, I have longed for the

   patch nonsense...

 * A move to _any_ DVCS would almost certainly be a win over SVN.  I've
   had to go back to using SVN at work for my day-to-day, and it is

 * I've never had any huge problesm with Trac, though I can see that
   offloading admin responsibilities is a good thing.

 * Does Github's ticketing system have the kind of integration with Git
   that Twisted has built for Trac+SVN?  Bitbucket has some similar stuff,
   so I would be surprised if Github didn't, but I just don't know.

 * I've never liked Launchpad.  I find it confusing and hard to navigate.

 * Git is annoying.  It's a pretty horrible piece of software in my
   opinion, and made some bad design decisions.

 * Git essentially makes Windows a second-class environment (as did
   Combinator).  We already have trouble recruiting Windows people, and
   IMO one of Twisted's strengths is that you can usually run things on
   Linux/MacOSX/Windows with very few cahnges, if any.

 * Github almost makes up for Git's irritating-ness.

 * Github's extra features have never yet caused me to choose Git as a new
   project over Mercurial.

 * For me, Bitbucket has always been pretty comparable to Github.  I know
   others will disagree, and point out all kinds of features that Github
   has over Bitbucket, but apparently I never use those features.  Perhaps
   those features (whatever they are) are more important in projects
   of Twisted's size and/or history.

 * I have been told, but not actually experienced, that using the hg-git
   plugin for Mercurial makes using Git for your repository into "an
   implementation detail", and the user basicaly doesn't even really
   have to care that they aren't using Hg.  If true, this would make me
   pretty happy...but I'm not entirely sure that it _is_ true.

 * it is unclear how Github would work with UQDS with regards to having a
   ticket for all new work.  IMO this is even more important than code
   reviews.  Would we just say: no pull requests will be accepted unless

 * How would running buildbot over a git/bzr/hg branch work?  Would Github's

   hooks be able to drive this?  Would we be able to tell buildbot to "go
   run tests on this branch"?

 * Assuming a change like this would take place, what would the plan be
   for transition?  Would all the branches that are out there be
   migrate-able?  What about all the Trac tickets, wiki, etc?

 * How does this affect the Sphinx transition plan? (I don't really know
   that it would affect it at all...).

 * Since Twisted's current web presence _is_ a Trac site, who's going to
   step up and build a new website?  Github/Bitbucket/Launchpad is _NOT_
   a replacement for an actual "marketing" or "home page" type site.

Overall, this is probably a good plan, but it's going to bea harder and take

more work than people think.

Also, I agree with Itamar's comments that while switching to a DVCS might
ameliorate Twisted's social/organizational issues somewhat, but is unlikely
to wholly fix them. That stuff needs to be discussed and worked on as well.

Kevin Horn
-------------- next part --------------
An HTML attachment was scrubbed...
URL: </pipermail/twisted-python/attachments/20110701/67a79158/attachment.html>

More information about the Twisted-Python mailing list