view tests/svn-safe-append.py @ 21004:27ab4b8d2503

bundle2: comment to clarify why the handler call is where it is The reason why it is here is not obvious. I'm the one who wrote it there in the first place and almost moved it 2 weeks later.
author Pierre-Yves David <pierre-yves.david@fb.com>
date Fri, 11 Apr 2014 16:43:01 -0400
parents c1b47c0fd2b6
children bdba6a2015d0
line wrap: on
line source

#!/usr/bin/env python

__doc__ = """Same as `echo a >> b`, but ensures a changed mtime of b.
Without this svn will not detect workspace changes."""

import sys, os

text = sys.argv[1]
fname = sys.argv[2]

f = open(fname, "ab")
try:
    before = os.fstat(f.fileno()).st_mtime
    f.write(text)
    f.write("\n")
finally:
    f.close()
inc = 1
now = os.stat(fname).st_mtime
while now == before:
    t = now + inc
    inc += 1
    os.utime(fname, (t, t))
    now = os.stat(fname).st_mtime