[Bug 6139] New: CVS import fails on CVS-log-like commit message
mercurial-bugs at mercurial-scm.org
mercurial-bugs at mercurial-scm.org
Thu May 16 11:07:47 UTC 2019
https://bz.mercurial-scm.org/show_bug.cgi?id=6139
Bug ID: 6139
Summary: CVS import fails on CVS-log-like commit message
Product: Mercurial
Version: 5.0
Hardware: PC
OS: NetBSD
Status: UNCONFIRMED
Severity: bug
Priority: wish
Component: convert
Assignee: bugzilla at mercurial-scm.org
Reporter: ng0 at n0.is
CC: durin42 at gmail.com, mercurial-devel at mercurial-scm.org
I have tested the hg convert command with 4.9.1 and 5.0 release on NetBSD's
pkgsrc CVS repository.
Invocation command with hg 5.0 release: hg convert /usr/pkgsrc pkgsrc
Where /usr/pkgsrc is my CVS checkout of pkgsrc.
[...]
468300 graphics/dcraw/Makefile
** unknown exception encountered, please report by visiting
** https://mercurial-scm.org/wiki/BugTracker
** Python 2.7.16 (default, May 11 2019, 14:23:25) [GCC 7.4.0]
** Mercurial Distributed SCM (version 5.0)
** Extensions loaded: rebase, convert, pager
Traceback (most recent call last):
File "/usr/pkg/bin/hg", line 43, in <module>
dispatch.run()
File "/usr/pkg/lib/python2.7/site-packages/mercurial/dispatch.py", line 99,
in run
status = dispatch(req)
File "/usr/pkg/lib/python2.7/site-packages/mercurial/dispatch.py", line 225,
in dispatch
ret = _runcatch(req) or 0
File "/usr/pkg/lib/python2.7/site-packages/mercurial/dispatch.py", line 376,
in _runcatch
return _callcatch(ui, _runcatchfunc)
File "/usr/pkg/lib/python2.7/site-packages/mercurial/dispatch.py", line 384,
in _callcatch
return scmutil.callcatch(ui, func)
File "/usr/pkg/lib/python2.7/site-packages/mercurial/scmutil.py", line 167,
in callcatch
return func()
File "/usr/pkg/lib/python2.7/site-packages/mercurial/dispatch.py", line 367,
in _runcatchfunc
return _dispatch(req)
File "/usr/pkg/lib/python2.7/site-packages/mercurial/dispatch.py", line 1021,
in _dispatch
cmdpats, cmdoptions)
File "/usr/pkg/lib/python2.7/site-packages/mercurial/dispatch.py", line 756,
in runcommand
ret = _runcommand(ui, options, cmd, d)
File "/usr/pkg/lib/python2.7/site-packages/hgext/pager.py", line 77, in
pagecmd
return orig(ui, options, cmd, cmdfunc)
File "/usr/pkg/lib/python2.7/site-packages/mercurial/dispatch.py", line 1030,
in _runcommand
return cmdfunc()
File "/usr/pkg/lib/python2.7/site-packages/mercurial/dispatch.py", line 1018,
in <lambda>
d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)
File "/usr/pkg/lib/python2.7/site-packages/mercurial/util.py", line 1680, in
check
return func(*args, **kwargs)
File "/usr/pkg/lib/python2.7/site-packages/hgext/convert/__init__.py", line
450, in convert
return convcmd.convert(ui, src, dest, revmapfile, **opts)
File "/usr/pkg/lib/python2.7/site-packages/hgext/convert/convcmd.py", line
616, in convert
c.convert(sortmode)
File "/usr/pkg/lib/python2.7/site-packages/hgext/convert/convcmd.py", line
503, in convert
heads = self.source.getheads()
File "/usr/pkg/lib/python2.7/site-packages/hgext/convert/cvs.py", line 224,
in getheads
self._parse()
File "/usr/pkg/lib/python2.7/site-packages/hgext/convert/cvs.py", line 83, in
_parse
db = cvsps.createlog(self.ui, cache=cache)
File "/usr/pkg/lib/python2.7/site-packages/hgext/convert/cvsps.py", line 336,
in createlog
assert match, _('revision must be followed by date line')
AssertionError: revision must be followed by date line
A bit of insight into why this happens:
http://cvsweb.netbsd.org/bsdweb.cgi/pkgsrc/graphics/dcraw/Makefile is "messed
up" in anything which tries to parse CVS to display it (including the NetBSD
bsdweb.cgi script).
The timeline goes from 1.21 -> 1.268 -> 1.22.
Furthermore what happened is that someone has committed a commit message that
looks exactly like a CVS log entry.
So in the cvs log output it will -look- like a commit of an out of order
revision is nested but it's actually a just the message.
--
You are receiving this mail because:
You are on the CC list for the bug.
More information about the Mercurial-devel
mailing list