Mercurial > hg
annotate contrib/python3-ratchet.py @ 48085:6a78715e56c8
dirstate: add a `get_entry` method to the dirstate
This method give access to the underlying `DirstateEntry` object (or an empty
one if None was there). It should allow us to use the more semantic property of
the entry instead of the state where we needs it.
Differential Revision: https://phab.mercurial-scm.org/D11522
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Wed, 29 Sep 2021 02:37:24 +0200 |
parents | 89a2afe31e82 |
children | 6000f5b25c9b |
rev | line source |
---|---|
32855
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
1 # Copyright 2012 Facebook |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
2 # |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
3 # This software may be used and distributed according to the terms of the |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
4 # GNU General Public License version 2 or any later version. |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
5 """Find tests that newly pass under Python 3. |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
6 |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
7 The approach is simple: we maintain a whitelist of Python 3 passing |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
8 tests in the repository, and periodically run all the /other/ tests |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
9 and look for new passes. Any newly passing tests get automatically |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
10 added to the whitelist. |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
11 |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
12 You probably want to run it like this: |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
13 |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
14 $ cd tests |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
15 $ python3 ../contrib/python3-ratchet.py \ |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
16 > --working-tests=../contrib/python3-whitelist |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
17 """ |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
18 from __future__ import print_function |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
19 from __future__ import absolute_import |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
20 |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
21 import argparse |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
22 import json |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
23 import os |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
24 import subprocess |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
25 import sys |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
26 |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
27 _hgenv = dict(os.environ) |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
28 _hgenv.update( |
45942
89a2afe31e82
formating: upgrade to black 20.8b1
Augie Fackler <raf@durin42.com>
parents:
43506
diff
changeset
|
29 { |
89a2afe31e82
formating: upgrade to black 20.8b1
Augie Fackler <raf@durin42.com>
parents:
43506
diff
changeset
|
30 'HGPLAIN': '1', |
89a2afe31e82
formating: upgrade to black 20.8b1
Augie Fackler <raf@durin42.com>
parents:
43506
diff
changeset
|
31 } |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
32 ) |
32855
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
33 |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
34 _HG_FIRST_CHANGE = '9117c6561b0bd7792fa13b50d28239d51b78e51f' |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
35 |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
36 |
32855
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
37 def _runhg(*args): |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
38 return subprocess.check_output(args, env=_hgenv) |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
39 |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
40 |
32855
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
41 def _is_hg_repo(path): |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
42 return ( |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
43 _runhg('hg', 'log', '-R', path, '-r0', '--template={node}').strip() |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
44 == _HG_FIRST_CHANGE |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
45 ) |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
46 |
32855
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
47 |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
48 def _py3default(): |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
49 if sys.version_info[0] >= 3: |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
50 return sys.executable |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
51 return 'python3' |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
52 |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
53 |
32855
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
54 def main(argv=()): |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
55 p = argparse.ArgumentParser() |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
56 p.add_argument( |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
57 '--working-tests', help='List of tests that already work in Python 3.' |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
58 ) |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
59 p.add_argument( |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
60 '--commit-to-repo', |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
61 help='If set, commit newly fixed tests to the given repo', |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
62 ) |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
63 p.add_argument( |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
64 '-j', |
43506
9f70512ae2cf
cleanup: remove pointless r-prefixes on single-quoted strings
Augie Fackler <augie@google.com>
parents:
43076
diff
changeset
|
65 default=os.sysconf('SC_NPROCESSORS_ONLN'), |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
66 type=int, |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
67 help='Number of parallel tests to run.', |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
68 ) |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
69 p.add_argument( |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
70 '--python3', |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
71 default=_py3default(), |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
72 help='python3 interpreter to use for test run', |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
73 ) |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
74 p.add_argument( |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
75 '--commit-user', |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
76 default='python3-ratchet@mercurial-scm.org', |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
77 help='Username to specify when committing to a repo.', |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
78 ) |
32855
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
79 opts = p.parse_args(argv) |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
80 if opts.commit_to_repo: |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
81 if not _is_hg_repo(opts.commit_to_repo): |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
82 print('abort: specified repository is not the hg repository') |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
83 sys.exit(1) |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
84 if not opts.working_tests or not os.path.isfile(opts.working_tests): |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
85 print( |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
86 'abort: --working-tests must exist and be a file (got %r)' |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
87 % opts.working_tests |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
88 ) |
32855
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
89 sys.exit(1) |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
90 elif opts.commit_to_repo: |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
91 root = _runhg('hg', 'root').strip() |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
92 if not opts.working_tests.startswith(root): |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
93 print( |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
94 'abort: if --commit-to-repo is given, ' |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
95 '--working-tests must be from that repo' |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
96 ) |
32855
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
97 sys.exit(1) |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
98 try: |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
99 subprocess.check_call( |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
100 [ |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
101 opts.python3, |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
102 '-c', |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
103 'import sys ; ' |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
104 'assert ((3, 5) <= sys.version_info < (3, 6) ' |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
105 'or sys.version_info >= (3, 6, 2))', |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
106 ] |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
107 ) |
32855
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
108 except subprocess.CalledProcessError: |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
109 print( |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
110 'warning: Python 3.6.0 and 3.6.1 have ' |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
111 'a bug which breaks Mercurial' |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
112 ) |
32855
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
113 print('(see https://bugs.python.org/issue29714 for details)') |
36589
3790610c2793
py3: bail on ratcheting tests forward on 3.6.0 and 3.6.1
Kevin Bullock <kbullock+mercurial@ringworld.org>
parents:
32855
diff
changeset
|
114 sys.exit(1) |
32855
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
115 |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
116 rt = subprocess.Popen( |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
117 [ |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
118 opts.python3, |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
119 'run-tests.py', |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
120 '-j', |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
121 str(opts.j), |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
122 '--blacklist', |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
123 opts.working_tests, |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
124 '--json', |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
125 ] |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
126 ) |
32855
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
127 rt.wait() |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
128 with open('report.json') as f: |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
129 data = f.read() |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
130 report = json.loads(data.split('=', 1)[1]) |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
131 newpass = set() |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
132 for test, result in report.items(): |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
133 if result['result'] != 'success': |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
134 continue |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
135 # A new passing test! Huzzah! |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
136 newpass.add(test) |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
137 if newpass: |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
138 # We already validated the repo, so we can just dive right in |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
139 # and commit. |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
140 if opts.commit_to_repo: |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
141 print(len(newpass), 'new passing tests on Python 3!') |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
142 with open(opts.working_tests) as f: |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
143 oldpass = {l for l in f.read().splitlines() if l} |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
144 with open(opts.working_tests, 'w') as f: |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
145 for p in sorted(oldpass | newpass): |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
146 f.write('%s\n' % p) |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
147 _runhg( |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
148 'hg', |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
149 'commit', |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
150 '-R', |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
151 opts.commit_to_repo, |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
152 '--user', |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
153 opts.commit_user, |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
154 '--message', |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
155 'python3: expand list of passing tests', |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
156 ) |
32855
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
157 else: |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
158 print('Newly passing tests:', '\n'.join(sorted(newpass))) |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
159 sys.exit(2) |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
160 |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36589
diff
changeset
|
161 |
32855
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
162 if __name__ == '__main__': |
28f429d19a71
contrib: add a ratchet for tests in Python 3
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
163 main(sys.argv[1:]) |