.hgignore crashes Mercurial

Guido Ostkamp hg at ostkamp.fastmail.fm
Mon Aug 20 08:12:19 UTC 2007


Hello Matt,

> On Sat, Aug 18, 2007 at 08:29:22PM +0200, Guido Ostkamp wrote:
> > On Sat, 18 Aug 2007, Matt Mackall wrote:
> > >What Python version and distribution are you using?
> > 
> > It's the latest Python 2.5.1 self-compiled from standard tarball got at 
> > <http://www.python.org/download>, 'configure' was used without any options 
> > so that the outcome installed to /usr/local. It runs on a SuSE SLES 9 
> > Linux system.
> > 
> > >Apparently Python can be compiled with puny regex support and we don't 
> > >have a workaround yet. But here's a quick stab at one, lemme know if it 
> > >works:
> > 
> > Thanks for the patch, I can confirm that it works.
> > 
> > Are you going to integrate it into the official build?
> 
> Yep, thanks for the testing.

I just checked again in another environment with on older Python version 
(2.4.1) and there it seems that the patch does not work. I'm getting 
the following results:

** unknown exception encountered, details follow
** report bug details to http://www.selenic.com/mercurial/bts
** or mercurial at selenic.com
** Mercurial Distributed SCM (version 1108c952cca1+20070820)
Traceback (most recent call last):
  File "/home/ostkamp/local/bin/hg", line 14, in ?
    mercurial.dispatch.run()
  File
  "/home/ostkamp/local/lib/python2.4/site-packages/mercurial/dispatch.py",
  line 20, in run
    sys.exit(dispatch(sys.argv[1:]))
  File
  "/home/ostkamp/local/lib/python2.4/site-packages/mercurial/dispatch.py",
  line 29, in dispatch
    return _runcatch(u, args)
  File
  "/home/ostkamp/local/lib/python2.4/site-packages/mercurial/dispatch.py",
  line 45, in _runcatch
    return _dispatch(ui, args)
  File
  "/home/ostkamp/local/lib/python2.4/site-packages/mercurial/dispatch.py",
  line 348, in _dispatch
    ret = _runcommand(ui, options, cmd, d)
  File
  "/home/ostkamp/local/lib/python2.4/site-packages/mercurial/dispatch.py",
  line 401, in _runcommand
    return checkargs()
  File
  "/home/ostkamp/local/lib/python2.4/site-packages/mercurial/dispatch.py",
  line 357, in checkargs
    return cmdfunc()
  File
  "/home/ostkamp/local/lib/python2.4/site-packages/mercurial/dispatch.py",
  line 340, in <lambda>
    d = lambda: func(ui, repo, *args, **cmdoptions)
  File
  "/home/ostkamp/local/lib/python2.4/site-packages/mercurial/commands.py",
  line 2539, in status
    list_clean=all or opts['clean'])]
  File
  "/home/ostkamp/local/lib/python2.4/site-packages/mercurial/localrepo.py",
  line 905, in status
    list_ignored, list_clean)
  File
  "/home/ostkamp/local/lib/python2.4/site-packages/mercurial/dirstate.py",
  line 494, in status
    for src, fn, st in self.statwalk(files, match,
    ignored=list_ignored):
  File
  "/home/ostkamp/local/lib/python2.4/site-packages/mercurial/dirstate.py",
  line 454, in statwalk
    for f, src, st in findfiles(f):
  File
  "/home/ostkamp/local/lib/python2.4/site-packages/mercurial/dirstate.py",
  line 425, in findfiles
    elif imatch(np):
  File
  "/home/ostkamp/local/lib/python2.4/site-packages/mercurial/dirstate.py",
  line 360, in imatch
    if file_ not in dc and self._ignore(file_):
RuntimeError: internal error in regular expression engine

The Mercurial version used was the same with both Python versions.

I have solved the problem for me by updating Python to 2.5.1 but maybe
you
want to take a look at this again for other users. Possibly the Python 
internals changed between those versions.

Best regards

Guido



More information about the Mercurial mailing list