[darcs-devel] [issue1978] get does not correctly treat _darcs/format

Florent Becker bugs at darcs.net
Mon Nov 8 18:56:43 UTC 2010


Florent Becker <florent.becker at ens-lyon.org> added the comment:

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

> The convention of having lines that contain alternatives is abused at
> the moment we write things like "hashed|no-working-dir", since it does
> not make sense for a darcs client to understand "no-working-dir" and
> not "hashed". From the beginning we interpret "hashed|no-working-dir"
> as "hashed support is necessary to read, and hashed and no-working-dir
> support is necessary to write".
> 
> So, what about agreeing to interpret _darcs/format lines "A|B|..|X"
> as: A is necessary to read the repos, and A, B ... to X are necessary
> to write to it?
> 
I thought about it, but this means breaking compatbility: we'd have to
write it under _darcs/format2, and have _darcs/format be the single line
'format2'. The problem is that we cannot change how darcs 2.5 (or 2.4)
reads _darcs/format, so we cannot afford to have a "new semantics"
alternative with already known properties (for instance, no
darcs3|hashed). That should not be an insurmontable problem, given that
darcs 2.5 understands very few format strings, but it is bug prone.

Stupid question: does '|' ever appear in current repositories?

> This change of semantic could go into 2.5.1, in the same time that
> your "resolve issue1978" patch, to fix the "minced|no-working-dir"
> case.
> (The function Darcs.Repository.Format.readProblem would have to be modified).
> 
> Otherwise, keeping the current semantics of _darcs/format, I believe a
> variant of (c) would be the best solution by writing
> 
> minced
> minced|no-working-dir
> 
> Which sort of "encodes" my proposed semantics in the current
> interpretation of _darcs/format.
> 
I think this is the most elegant solution.

Florent
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAkzW7xcACgkQTCPcDztjGo4BrgCdG4AjaCBxCxcvI0MGTyrfc0uB
4jwAnAnuv6mSb8Q87WsXohYL5p4I5sqz
=k42D
-----END PGP SIGNATURE-----

__________________________________
Darcs bug tracker <bugs at darcs.net>
<http://bugs.darcs.net/issue1978>
__________________________________


More information about the darcs-devel mailing list