On 12/14/2011 07:11 AM, Eric S. Raymond wrote:
> Which brings up a question: should a delete on a non-empty directory succeed
> or fail?
> IMO, part of the reason this stuff is confusing is that your
> terminology is inadequate; see previous note to Daniel Shahaf. I get
> what you mean by "container" but I think that label confuses more than
> it enlightens. In the draft I'm using the term "flow" for a sequence
> of actions on a path.
I agree about the terminology. I was trying (and failing, it seems) to
adapt to your own terminology. What a tangled web we weave...
> I'm actually pretty sure this is all correct - but it leaves open the question
> of whether "change" can have copyfrom, and what that means in the case
> of directories.
> I checked, and "change" is what's used for a normal file content
> modification - see for example the change to bar/foo.c in sussman's
> example in the notes file.
> There are a couple of different possibilities here. One is that change with
> a copyfrom is illegal. In that case, every directory change is required
> to be a property change, since directory nodes can't have text. This is
> what my draft currently says.
> Another possibility is that copyfrom does its history-attachment thing and
> the note is afterwards part of two flows. That would be rather like a
> baby version of a DVCS merge.
The copyfrom attribute was designed to be valid only on "add" and "replace",
not "change" (or "delete"). And yes, directory changes may only contain
properties after the header block -- no text.
>> This is still an addition of sorts in that the object is newly
>> added to the set of its parent directory's list of children.
> For what operations is this list of children significant, and how? Which
> circles back to my first question about D on a directory.
Let's not go here. I was trying to justify the use of the term "add" in the
context of a copied item (which, in one sense, isn't a new thing at all).
My attempt can only possibly create confusion, so I advise that we all just
forget I said it. :-)
C. Michael Pilato <cmpilato_at_collab.net>
CollabNet <> www.collab.net <> Distributed Development On Demand
Received on 2011-12-14 15:21:10 CET