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