# HG changeset patch # User Bryan O'Sullivan # Date 1192000533 25200 # Node ID 4d34f8b12a9ebfb25ba52f4c9f5202964ce09c5f # Parent 0d154bce23419132d246b2b20b234216a47f48d8 convert: report errors more meaningfully if run with --traceback diff --git a/hgext/convert/hg.py b/hgext/convert/hg.py --- a/hgext/convert/hg.py +++ b/hgext/convert/hg.py @@ -174,7 +174,11 @@ class mercurial_source(converter_source) converter_source.__init__(self, ui, path, rev) try: self.repo = hg.repository(self.ui, path) - except: + # try to provoke an exception if this isn't really a hg + # repo, but some other bogus compatible-looking url + self.repo.heads() + except hg.RepoError: + ui.print_exc() raise NoRepo("could not open hg repo %s as source" % path) self.lastrev = None self.lastctx = None diff --git a/hgext/convert/subversion.py b/hgext/convert/subversion.py --- a/hgext/convert/subversion.py +++ b/hgext/convert/subversion.py @@ -128,6 +128,7 @@ class convert_svn(converter_source): self.paths = {} self.uuid = svn.ra.get_uuid(self.ra).decode(self.encoding) except SubversionException, e: + ui.print_exc() raise NoRepo("couldn't open SVN repo %s" % self.url) if rev: