Hi John,
On 2006-01-31, at 19:02, John Meacham wrote:
I propose no change to the repo format or new patch types or
anything that
would break compatability.
basically, I want to be able to declare 'domains' which are simply
mutually
exclusive sets of files in a repository. The main new behavior is
that 'darcs
record' will refuse to create a patch that crosses domain boundries.
...
utilities Util/
doc Doc/
boolean Boolean/
cmm Language/Cmm/
genutil GenUtil.hs
I like your suggestion. I like Tomasz's extension even more.
What would be the behavior as the domainfile or domainscript changes?
If, after some time, the domain file is changed to read:
utilities Util/ GenUtil.hs # <-- Change here
doc Doc/
boolean Boolean/
cmm Language/Cmm/
then what happens to older patches? Can patches on the 'genutil'
domain now be applied to 'utilities'? Can new 'utilities' patches,
which operate on both Util/ and GenUtil.hs, be applied to
repositories that still contain the old domain layout?
darcs push, pull, record, whatsnew, and changes will have a --
domain option, which will
cause them to just consider patches that touch files in the given
domain or
files in the given domain as appropriate. otherwise they behave
identically.
For this to work, you'd either need to change the patch format to
store the domain in the patch, or recompute the domain at patch read-
time. (You'd probably want to store the domain in an inventory/
context file too.) If you compute the domain on-the-fly, then one
solution to the above problem is to always use the current contents
of the domainfile. I feel there are some advantages (besides speed)
for storing the domain in the patch, but I can't articulate them at
the moment. But my point is that you may not be able to avoid
changing the patch format.
Jonathon Mah
[EMAIL PROTECTED]
_______________________________________________
darcs-users mailing list
[email protected]
http://www.abridgegame.org/mailman/listinfo/darcs-users