handle missing tags?

Issue #70 resolved
Eric Firing
created an issue

In trying to make a mirror of the numpy repo, http://svn.scipy.org/svn/numpy, I ran into an error: the numpy tags directory starts with 0.6.0 but evidently there is a reference to "beta-0.4.2", the subdirectory for which is not found. If this could be handled gracefully, then the conversion could proceed. This may be low priority; I don't know how common this situation is in svn repos.

Here is the result from a pull, which shows the same warnings and error as I got in the original clone attempt: {{{

efiring@manini:~/programs/py/numpy_hg$ hg pull [r1245] oliphant: Added doc to distribution. WARNING: Opening non-existant file tags/beta-0.4.2/MANIFEST.in WARNING: Opening non-existant file tags/beta-0.4.2/doc/CAPI.txt WARNING: Opening non-existant file tags/beta-0.4.2/scipy/core_version.py WARNING: Opening non-existant file tags/beta-0.4.2/setup.py unknown exception encountered, details follow report bug details to http://www.selenic.com/mercurial/bts or mercurial@selenic.com Mercurial Distributed SCM (version 55bd03e2e13c) Extensions loaded: fetch, bookmarks, convert, extdiff, hgk, mq, record, rebase, svn, transplant Traceback (most recent call last): File "/usr/local/bin/hg", line 27, in <module> mercurial.dispatch.run() File "/usr/local/lib/python2.5/site-packages/mercurial/dispatch.py", line 16, in run sys.exit(dispatch(sys.argv[1:])) File "/usr/local/lib/python2.5/site-packages/mercurial/dispatch.py", line 25, in dispatch return _runcatch(u, args) File "/usr/local/lib/python2.5/site-packages/mercurial/dispatch.py", line 41, in _runcatch return _dispatch(ui, args) File "/usr/local/lib/python2.5/site-packages/mercurial/dispatch.py", line 372, in _dispatch return runcommand(lui, repo, cmd, fullargs, ui, options, d) File "/usr/local/lib/python2.5/site-packages/mercurial/dispatch.py", line 247, in runcommand ret = _runcommand(ui, options, cmd, d) File "/usr/local/lib/python2.5/site-packages/mercurial/dispatch.py", line 417, in _runcommand return checkargs() File "/usr/local/lib/python2.5/site-packages/mercurial/dispatch.py", line 377, in checkargs return cmdfunc() File "/usr/local/lib/python2.5/site-packages/mercurial/dispatch.py", line 371, in <lambda> d = lambda: util.checksignature(func)(ui, *args, cmdoptions) File "/usr/local/lib/python2.5/site-packages/mercurial/util.py", line 718, in check return func(args, kwargs) File "/usr/local/lib/python2.5/site-packages/mercurial/extensions.py", line 100, in wrap util.checksignature(origfn), *args, kwargs) File "/usr/local/lib/python2.5/site-packages/mercurial/util.py", line 718, in check return func(args, **kwargs) File "/home/efiring/programs/py/hgsubversion/wrappers.py", line 289, in pull hg_editor.update_branch_tag_map_for_rev(r) File "/home/efiring/programs/py/hgsubversion/hg_delta_editor.py", line 486, in update_branch_tag_map_for_rev branch, src_rev = self.tags[from_tag] KeyError: 'beta-0.4.2/doc'


Comments (4)

  1. Augie Fackler repo owner

    It's not as simple as just handling a missing tag "gracefully" necessarily, because it appears the code is trying to handle a copy *from* the tag we don't have...

  2. Log in to comment