GNOME Bugzilla – Bug 448168
Support for Mercurial and git
Last modified: 2007-06-18 19:15:10 UTC
Please describe the problem: Attaching a patch that adds support to DL from Mercurial and git. Steps to reproduce: Actual results: Expected results: Does this happen every time? Other information:
Created attachment 90052 [details] [review] Add support for hg and git to DL Basically copied the existing SVN class and tweaked it slightly. Two issues: 1. The mechanism that selects which SCM should be called is not really good with defaults. If you specify a default <gitrepo> and override it with an <cvsrepo> it won't work; you'd need to explicitly override the second with a '<cvsrepo />'. 2. Probably it would be wiser to tweak the XML and add generic <scmrepo> etc, and one <activeSCM>git</activeSCM> for example, to avoid all those IFs. This however implies that all SCMs follow the root-module-webpage model, which is true, but.. ah well. :-)
You're right. What about creating a single <scmroot type="svn|cvs|git|hg"> (and accordingly <scmmodule> and <scmweb>)?
I just committed a rather big patch including your patch for supporting git and mercurial. Great! I replaced cvs and svn tags by a generic scm... serie of tags. See gnome-modules.xml.in for details. Hope it's clear and clean enough!
I had to revert this patch, due to a very strange bug. The potbase is not setting correctly for most modules. This happens in modules.py : if not here.has_key('potbase'): here['potbase'] = self.modules[module]['id'] This line affect a unique potbase to all modules which don't have it set explicitly in gnome-modules.xml. I don't see the relation between the patch and this bug :-(
Created attachment 90108 [details] [review] Complete patch
Created attachment 90172 [details] [review] Revised patch I think I found the problem. I changed more properly the defaults handling in data.py. Will check and eventually commit tomorrow.
Now I hope it's definitely fixed.