[PATCH 1 of 3] scripts: docs-headings: improve performance by grouping 'hg diff' invocations
Thomas De Schampheleire
patrickdepinguin at gmail.com
Sun Dec 30 12:56:29 UTC 2018
# HG changeset patch
# User Thomas De Schampheleire <thomas.de_schampheleire at nokia.com>
# Date 1546166728 -3600
# Sun Dec 30 11:45:28 2018 +0100
# Node ID 99c28d4459286261f7e798ab3fe60be3b0be2e7e
# Parent e7d6373631c4f41fc6eed16a670b576d94777ea5
scripts: docs-headings: improve performance by grouping 'hg diff' invocations
With SSD, this change reduces the execution time of this script from 8 to
0.5 seconds
diff --git a/scripts/docs-headings.py b/scripts/docs-headings.py
--- a/scripts/docs-headings.py
+++ b/scripts/docs-headings.py
@@ -30,7 +30,8 @@ headermatch = re.compile(r'''\n*(.+)\n([
def main():
- for fn in subprocess.check_output(['hg', 'loc', 'set:**.rst+kallithea/i18n/how_to']).splitlines():
+ filenames = subprocess.check_output(['hg', 'loc', 'set:**.rst+kallithea/i18n/how_to']).splitlines()
+ for fn in filenames:
print 'processing %s:' % fn
s = open(fn).read()
@@ -72,8 +73,8 @@ def main():
s = re.sub(r'''\n+((?:\.\. _[^\n]*\n)+)$''', r'\n\n\n\1', s)
open(fn, 'w').write(s)
- print subprocess.check_output(['hg', 'diff', fn])
- print
+
+ print subprocess.check_output(['hg', 'diff'] + filenames)
if __name__ == '__main__':
main()
More information about the kallithea-general
mailing list