Mercurial > public > mercurial-scm > hg-stable
diff contrib/python3-ratchet.py @ 43076:2372284d9457
formatting: blacken the codebase
This is using my patch to black
(https://github.com/psf/black/pull/826) so we don't un-wrap collection
literals.
Done with:
hg files 'set:**.py - mercurial/thirdparty/** - "contrib/python-zstandard/**"' | xargs black -S
# skip-blame mass-reformatting only
# no-check-commit reformats foo_bar functions
Differential Revision: https://phab.mercurial-scm.org/D6971
author | Augie Fackler <augie@google.com> |
---|---|
date | Sun, 06 Oct 2019 09:45:02 -0400 |
parents | 3790610c2793 |
children | 9f70512ae2cf |
line wrap: on
line diff
--- a/contrib/python3-ratchet.py Sat Oct 05 10:29:34 2019 -0400 +++ b/contrib/python3-ratchet.py Sun Oct 06 09:45:02 2019 -0400 @@ -25,65 +25,103 @@ import sys _hgenv = dict(os.environ) -_hgenv.update({ - 'HGPLAIN': '1', - }) +_hgenv.update( + {'HGPLAIN': '1',} +) _HG_FIRST_CHANGE = '9117c6561b0bd7792fa13b50d28239d51b78e51f' + def _runhg(*args): return subprocess.check_output(args, env=_hgenv) + def _is_hg_repo(path): - return _runhg('hg', 'log', '-R', path, - '-r0', '--template={node}').strip() == _HG_FIRST_CHANGE + return ( + _runhg('hg', 'log', '-R', path, '-r0', '--template={node}').strip() + == _HG_FIRST_CHANGE + ) + def _py3default(): if sys.version_info[0] >= 3: return sys.executable return 'python3' + def main(argv=()): p = argparse.ArgumentParser() - p.add_argument('--working-tests', - help='List of tests that already work in Python 3.') - p.add_argument('--commit-to-repo', - help='If set, commit newly fixed tests to the given repo') - p.add_argument('-j', default=os.sysconf(r'SC_NPROCESSORS_ONLN'), type=int, - help='Number of parallel tests to run.') - p.add_argument('--python3', default=_py3default(), - help='python3 interpreter to use for test run') - p.add_argument('--commit-user', - default='python3-ratchet@mercurial-scm.org', - help='Username to specify when committing to a repo.') + p.add_argument( + '--working-tests', help='List of tests that already work in Python 3.' + ) + p.add_argument( + '--commit-to-repo', + help='If set, commit newly fixed tests to the given repo', + ) + p.add_argument( + '-j', + default=os.sysconf(r'SC_NPROCESSORS_ONLN'), + type=int, + help='Number of parallel tests to run.', + ) + p.add_argument( + '--python3', + default=_py3default(), + help='python3 interpreter to use for test run', + ) + p.add_argument( + '--commit-user', + default='python3-ratchet@mercurial-scm.org', + help='Username to specify when committing to a repo.', + ) opts = p.parse_args(argv) if opts.commit_to_repo: if not _is_hg_repo(opts.commit_to_repo): print('abort: specified repository is not the hg repository') sys.exit(1) if not opts.working_tests or not os.path.isfile(opts.working_tests): - print('abort: --working-tests must exist and be a file (got %r)' % - opts.working_tests) + print( + 'abort: --working-tests must exist and be a file (got %r)' + % opts.working_tests + ) sys.exit(1) elif opts.commit_to_repo: root = _runhg('hg', 'root').strip() if not opts.working_tests.startswith(root): - print('abort: if --commit-to-repo is given, ' - '--working-tests must be from that repo') + print( + 'abort: if --commit-to-repo is given, ' + '--working-tests must be from that repo' + ) sys.exit(1) try: - subprocess.check_call([opts.python3, '-c', - 'import sys ; ' - 'assert ((3, 5) <= sys.version_info < (3, 6) ' - 'or sys.version_info >= (3, 6, 2))']) + subprocess.check_call( + [ + opts.python3, + '-c', + 'import sys ; ' + 'assert ((3, 5) <= sys.version_info < (3, 6) ' + 'or sys.version_info >= (3, 6, 2))', + ] + ) except subprocess.CalledProcessError: - print('warning: Python 3.6.0 and 3.6.1 have ' - 'a bug which breaks Mercurial') + print( + 'warning: Python 3.6.0 and 3.6.1 have ' + 'a bug which breaks Mercurial' + ) print('(see https://bugs.python.org/issue29714 for details)') sys.exit(1) - rt = subprocess.Popen([opts.python3, 'run-tests.py', '-j', str(opts.j), - '--blacklist', opts.working_tests, '--json']) + rt = subprocess.Popen( + [ + opts.python3, + 'run-tests.py', + '-j', + str(opts.j), + '--blacklist', + opts.working_tests, + '--json', + ] + ) rt.wait() with open('report.json') as f: data = f.read() @@ -104,12 +142,20 @@ with open(opts.working_tests, 'w') as f: for p in sorted(oldpass | newpass): f.write('%s\n' % p) - _runhg('hg', 'commit', '-R', opts.commit_to_repo, - '--user', opts.commit_user, - '--message', 'python3: expand list of passing tests') + _runhg( + 'hg', + 'commit', + '-R', + opts.commit_to_repo, + '--user', + opts.commit_user, + '--message', + 'python3: expand list of passing tests', + ) else: print('Newly passing tests:', '\n'.join(sorted(newpass))) sys.exit(2) + if __name__ == '__main__': main(sys.argv[1:])