[MERGE] line-endings support: part 1 of 2: versioned properties
Neil Martinsen-Burrell
nmb at wartburg.edu
Mon Apr 14 21:53:50 BST 2008
Alexander Belchenko wrote:
> Accepting only filemasks in the form '*.ext' is deliberate decision.
> Because if I will allow to using something like:
>
> dir/subdir/*.c
>
> Then I'll get potential problems with renames/moves. And I don't want to
> have this pain.
>
> No, I think restriction for *.ext is right here.
In what sense do you not need to deal with renaming now? Consider the
hypthetical sequence of commands:
bzr prop-set bzr:special-property 'special value' '*.txt'
bzr add help.txt
bzr ci -m ''
bzr mv help.txt help.rst
bzr ci -m ''
# does help.rst have the appropriate property set still?
It seems like wildcarding property values will always have the problem
of renaming losing properties, unless you deal with it explicitly. I
think that properties should conceptually be a mapping from file-ids to
vpdicts. If this is implemented by referring to some collection of
file-ids in terms of a glob pattern, that's fine, but it shouldn't break
the conceptual abstraction that versioned properties adhere to file
objects. This seems to be the model suggested in
http://bazaar-vcs.org/VersionedProperties, and I think there should be
wider discussion before we abandon that idea in favor of something less
cohesive.
Perhaps you could rewrite the VersionedProperties spec and post it to
the list for discussion before presenting an implementation of an
unwritten version of the specification.
-Neil
More information about the bazaar
mailing list