Mercurial > hg
view contrib/tmplrewrite.py @ 10189:e451e599fbcf
patch: support diff data loss detection and upgrade
In worst case, generating diff in upgrade mode can be two times more expensive
than generating it in git mode directly: we may have to regenerate the whole
diff again whenever a git feature is detected. Also, the first diff attempt is
completely buffered instead of being streamed. That said, even without having
profiled it yet, I am convinced we can fast-path the upgrade mode if necessary
were it to be used in regular diff commands, and not only in mq where avoiding
data loss is worth the price.
author | Patrick Mezard <pmezard@gmail.com> |
---|---|
date | Fri, 01 Jan 2010 20:54:05 +0100 |
parents | 94ef2c8ce683 |
children |
line wrap: on
line source
#!/usr/bin/python import sys, os, re IGNORE = ['.css', '.py'] oldre = re.compile('#([\w\|%]+)#') def rewrite(fn): f = open(fn) new = open(fn + '.new', 'wb') for ln in f: new.write(oldre.sub('{\\1}', ln)) new.close() f.close() os.rename(new.name, f.name) if __name__ == '__main__': if len(sys.argv) < 2: print 'usage: python tmplrewrite.py [file [file [file]]]' for fn in sys.argv[1:]: if os.path.splitext(fn) in IGNORE: continue print 'rewriting %s...' % fn rewrite(fn)