convert/svn: stop using svn bindings when pushing to svn
authorPatrick Mezard <pmezard@gmail.com>
Thu, 03 Mar 2011 22:41:38 +0100
changeset 13530 5f69af0d2fb3
parent 13529 9b62cbe81f44
child 13532 d4c2f2ac3ff7
convert/svn: stop using svn bindings when pushing to svn
hgext/convert/subversion.py
tests/test-convert-svn-sink.t
--- a/hgext/convert/subversion.py	Thu Mar 03 22:19:28 2011 +0100
+++ b/hgext/convert/subversion.py	Thu Mar 03 22:41:38 2011 +0100
@@ -942,6 +942,7 @@
 
 class svn_sink(converter_sink, commandline):
     commit_re = re.compile(r'Committed revision (\d+).', re.M)
+    uuid_re = re.compile(r'Repository UUID:\s*(\S+)', re.M)
 
     def prerun(self):
         if self.wc:
@@ -962,8 +963,6 @@
 
     def __init__(self, ui, path):
 
-        if svn is None:
-            raise MissingTool(_('Could not load Subversion python bindings'))
         converter_sink.__init__(self, ui, path)
         commandline.__init__(self, ui, 'svn')
         self.delete = []
@@ -1010,8 +1009,8 @@
             fp.close()
             util.set_flags(hook, False, True)
 
-        xport = transport.SvnRaTransport(url=geturl(path))
-        self.uuid = svn.ra.get_uuid(xport.ra)
+        output = self.run0('info')
+        self.uuid = self.uuid_re.search(output).group(1).strip()
 
     def wjoin(self, *names):
         return os.path.join(self.wc, *names)
--- a/tests/test-convert-svn-sink.t	Thu Mar 03 22:19:28 2011 +0100
+++ b/tests/test-convert-svn-sink.t	Thu Mar 03 22:41:38 2011 +0100
@@ -1,5 +1,5 @@
 
-  $ "$TESTDIR/hghave" svn svn-bindings no-outer-repo || exit 80
+  $ "$TESTDIR/hghave" svn no-outer-repo || exit 80
 
   $ fixpath()
   > {