[darcs-devel] Any answers for IsiSetup's concerns?

John Meacham john at repetae.net
Sat Dec 22 01:30:24 UTC 2007


On Thu, Dec 20, 2007 at 07:15:33AM -0500, David Roundy wrote:
> Except that your proposal requires that we set up a database and define
> three new darcs commands (two to add and remove flags and one to query
> them).  The execute bit alone requires no new darcs commands (although
> it does require a format flag for telling darcs whether to manage the
> execute bit), and users can use chmod as usual.

Ah, okay. I see what the objection is, I was assuming the difficulty
would like in creating a new patch format, not the
interface/representation.

> And as I mentioned in my response to Ian (whose proposal was similar to
> yours, but involved darcs interpreting the flags via a lookup table of
> sorts), why not move the entire business into a posthook script? Darcs can
> manage this database much more easily if it's just a text file in the
> repository.

Well, the main advantage would be much smarter patch handling. 

For instance, If there were just a file with a file name and flags then
patches that change flags would not commute properly with those that
rename the affected files when in theory they should be able to.

likewise, different patches that add the same flag but in a different
order would be marked as conflicting, when they should just be
considered the same primitive patch.

Whether these advantages are worth the code cost I don't know.


I always thought it would be nice if darcs could have primitive objects
that were more interesting than the flat file.

Like, you could have a 'set' which is represented on disk as a file with
one element per line, where darcs knows that its contents are a simple
line delimited set (in the matchematical sense) and the actual ordering
of the lines, or duplicate entries don't matter. so patches that simply
add the same value, or reorder lines, or delete the same value can be
treated intelligently rather than just marked as conflicting or adding
duplicate entries (or erronious single ones).

I am not sure if I am interested in this feature for theoretical or
practical reasons...

        John

-- 
John Meacham - ⑆repetae.net⑆john⑈


More information about the darcs-devel mailing list