On 17 Oct 2009, at 05:25, Jason Dagit wrote:
On Fri, Oct 16, 2009 at 6:31 PM, Dan Pascu <[email protected]>
wrote:
Is it normal to see this error, when running a darcs 2.2.0 binary on
a OSX system (case insensitive filesystem) and with a hashed
repository?
$ darcs wh -sl
darcs failed: Text.Regex.Posix.String died: (ReturnCode 14,"empty
(sub)expression")
This is speculation that requires investigation, but I bet you're
experiencing some sort of problem with regular expressions from
either the boring file or the binary file.
After some investigation it turned out to be something from the boring
file indeed. See below.
Have you set either of those files to reside outside of _darcs?
Yes. The boring file is set to .boring at the project top level and is
put under version control. The binaries file was not set, so it uses
_darcs/prefs/binaries.
If so, is it possible your other steps (such as the svn checkout) is
writing over those files with regular expressions that darcs doesn't
like? Really, it would be an expression that regex-posix doesn't
like.
No. As I said, the boring file is at top level, while the svn checkout
is done 2 directory levels below under build/temp.macosx-10.5-i386-2.5
(.boring and build/ are at the same level as _darcs). So whatever is
checked out from svn and built, cannot affect any of the toplevel files.
If you haven't changed the default boring and binaries files to
reside outside of _darcs, does anything change them in _darcs
No.
Can you do a diff between a repo where you get the error and an repo
where you do not? I'm thinking of the unix command diff, like:
diff -u good/_darcs/prefs/binaries bad/_darcs/prefs/binaries
The diff showed that there was a generated file that was present even
after running clean (a leftover it appears). This file was sipsimple/
core.c and as soon as it was removed the problem went away. Now I can
reproduce the problem by simply getting a fresh repository, then
running:
touch sisimple/core.c
darcs wh -sl
Also, it's possible that the regexes to match against .svn
directories is bad. I wonder how often they get tested. Those
regexes would be in the boring file, by the way.
Given that the core.c seem to give me troubles, I do not think it's
the .svn regexp, but the regexp for corefiles. My .boring file looks
like this:
# Boring file regexps:
(^|/)_darcs($|/)
(^|/)CVS($|/)
(^|/)\.svn($|/)
(^|/)\.DS_Store$
(^|/)Thumbs\.db$
\#
~$
(^|/)core(\.[0-9]+|)$
\.(pyc|pyo|o|so|orig|bak|BAK|prof|wpu|cvsignore)$
(^|/)build($|/)
(^|/)dist($|/)
^MANIFEST$
Does anyone spot anything wrong with then corefile regexp? As I read
it it should never match core.c, only core or core.NNNN with NNNN
being digits.
--
Dan
_______________________________________________
darcs-users mailing list
[email protected]
http://lists.osuosl.org/mailman/listinfo/darcs-users