handle missing tags?

Create issue
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. Dirkjan Ochtman

    Actually, this looks like it's updating the tag, which we don't handle yet.

    That's just stupid, but it seems to be fairly common.

  3. Log in to comment