[py-dev] py.path.svnwc ensure problems
Martijn Faassen
faassen at startifact.com
Tue Feb 19 20:49:08 CET 2008
Hi there,
Here's an argument why .ensure() should add directories automatically.
Imagine the following sequence of events:
two checkouts of the same stuff, a and b
In a:
create a directory foo
create a content object bar in foo
svn add foo and bar
svn commit
In b:
svn up
get foo and its contents, bar
Back to a:
svn remove foo
svn commit
Back to b:
change foo/bar
svn up
What happens now is that the foo directory will remain in b, and the
changed 'bar' file will remain as well. Both will however be considered
to be unknown.
One can reproduce this sequence of events working with py.path.svnwc. In
fact, I have. :) My code has an .ensure() to make sure that foo/bar
exists. This ensure() fails as 'foo' isn't known to SVN anymore after
the last SVN up. If ensure() instead re-added 'foo' to SVN, things would
proceed properly. You would think that ensure() in the case of svnwc
would need to ensure that the whole path exists in SVN instead of
bailing out with an error.
One question is what .ensure() should do with any other content in foo
should foo be automatically added. I guess it should not automatically
re-add it. Actually in my use case it should actually probably be doing
so, so I have some thinking to do...
Regards,
Martijn
More information about the Pytest-dev
mailing list