[ANN] hgsubversion - patches wanted!

Augie Fackler lists at durin42.com
Thu Oct 2 09:20:24 CDT 2008


On Oct 2, 2008, at 6:54 AM, Shun-ichi GOTO wrote:

> 2008/10/1 Augie Fackler <durin42 at gmail.com>:
>> Greetings all! (and apologies for you fellow VC junkies on both of  
>> these
>> lists)
>>
>> I'm pleased to announce my work on a Mercurial extension that  
>> supports using
>> hg as a Subversion client has borne a fair amount of fruit, and at  
>> the
>> prodding of some friends I'm releasing it to the wild.
>>
>> http://www.bitbucket.org/durin42/hgsubversion/
>
> Interesting!
> I need a small fix to run on win32.
> With this patch, I successed svnclone for my one local svn repo
> (but not yet fully checked).

Excellent! I'm glad it worked with so few changes. Your diffs, with a  
few changes on my part (I want to keep the svn wrappers independent of  
hg), are in the repo now.

I don't have a win32 machine to test on, so I greatly appreciate the  
help.

(Thanks also to Patrick and Benoit for the tip on util.rename())

Peace,
Augie

>
>
> diff -r 89f88df794d3 -r 1f6fb5310711 hg_delta_editor.py
> --- a/hg_delta_editor.py	Tue Sep 30 18:01:35 2008 -0500
> +++ b/hg_delta_editor.py	Thu Oct 02 20:10:48 2008 +0900
> @@ -27,6 +27,8 @@
>     except:
>         raise
>     else:
> +        if os.path.exists(file_path):
> +            os.remove(file_path)
>         os.rename(path, file_path)
>
> def stash_exception_on_self(fn):
> diff -r 89f88df794d3 -r 1f6fb5310711 svnwrap/svn_swig_wrapper.py
> --- a/svnwrap/svn_swig_wrapper.py	Tue Sep 30 18:01:35 2008 -0500
> +++ b/svnwrap/svn_swig_wrapper.py	Thu Oct 02 20:10:48 2008 +0900
> @@ -1,10 +1,11 @@
> import cStringIO
> import getpass
> import os
> -import pwd
> import shutil
> import sys
> import tempfile
> +
> +from mercurial.util import getuser
>
> from svn import client
> from svn import core
> @@ -89,7 +90,7 @@
>         # while we're in here we'll recreate our pool
>         self.pool = core.Pool()
>         self.client_context = client.create_context()
> -        self.uname = str(pwd.getpwuid(os.getuid())[0])
> +        self.uname = getuser()
>         core.svn_auth_set_parameter(self.auth_baton,
>                                      
> core.SVN_AUTH_PARAM_DEFAULT_USERNAME,
>                                     self.uname)
>
> -- 
> Shun-ichi GOTO



More information about the Mercurial-devel mailing list