Branko Čibej wrote:
> The object lifetime and implicit close are very well defined indeed in
> CPython, which we use. We don't use "modern Pythons on other virtual
> machines."
> If this were indeed the source of the problem, a number of
> other tests would be failing randomly on that bot, and elsewhere too,
> I'm sure. But ...
> 
> >   with open(path, mode) as f:
> >     f.write(contents)
> 
> ... on the other hand, making this suggested change won't hurt [...]

Done ... and it didn't fix the problem.

> It's quite likely a timing problem between cache flush and file open.
> For a while I was looking at the shelve code to see if there was a
> missing sync(), but that actually doesn't make sense in the context of
> the test suite, since 'svn' is invoked as an external process which ends
> before the tests continue 

It's the other way around:
* Python writes to a file,
* Python calls 'svn' as a subprocess,
* 'svn' opens the file and doesn't see the change

Could it be that we need to run 'sync' immediately *before* calling 'svn' as a 
subprocess?

- Julian

Reply via email to