Mercurial-devel Digest, Vol 2, Issue 25

Matt Mackall mpm at selenic.com
Mon Nov 20 18:00:25 CST 2006


On Mon, Nov 20, 2006 at 09:04:28PM +0100, Guenther Brunthaler wrote:
> >If you're going to need a hook to deal with them anyway, just check in
> >a .acl file that contains the information you need and have the hook
> >process it.
> 
> I have thought of that already.
> 
> But the problem is: The contents of that file needs to be synchronized 
> on file renames or moves.

No, that's only the tip of the iceberg. The semantic problems of
dealing with metadata are endless. How do I interpret this metadata in
the context of another user? Or on a platform that where it's not
relevant? What happens when a user on that platform commits? Do we
destroy the old metadata? What metadata should be inherited? What if
an historical piece of metadata is wrong? How can we correct it?
Should it be copied when a file gets copied? Is there some metadata
that is mandatory to interpret? What happens with merge?

Arbitrary metadata by definition has no defined semantics. All of the
questions above have multiple answers. Doing it right is impossibly
complex with little reward, and Mercurial aims to be simple. Which is
why the entire iceberg is staying out of Mercurial.

> I also like the idea that Mercurial stays simple.
> 
> So why implementing symlinks, or special support for the executable bit?

Because they have well-understood semantics and wide applicability.

> Yes. It's a braindamaged feature.
> 
> ...but some users like it.

They are free to download the source.

-- 
Mathematics is the supreme nostalgia of our time.


More information about the Mercurial-devel mailing list