##// END OF EJS Templates
global: use python3 in shebangs...
global: use python3 in shebangs Python 3 is the future. We want Python scripts to be using Python 3 by default. This change updates all `#!/usr/bin/env python` shebangs to use `python3`. Does this mean all scripts use or require Python 3: no. In the test environment, the `PATH` environment variable in tests is updated to guarantee that the Python executable used to run run-tests.py is used. Since test scripts all now use `#!/usr/bin/env python3`, we had to update this code to install a `python3` symlink instead of `python`. It is possible there are some random scripts now executed with the incorrect Python interpreter in some contexts. However, I would argue that this was a pre-existing bug: we should almost always be executing new Python processes using the `sys.executable` from the originating Python script, as `python` or `python3` won't guarantee we'll use the same interpreter. Differential Revision: https://phab.mercurial-scm.org/D9273

File last commit:

r46434:c102b704 default
r46434:c102b704 default
Show More
seq.py
37 lines | 772 B | text/x-python | PythonLexer
Gregory Szorc
global: use python3 in shebangs...
r46434 #!/usr/bin/env python3
Matt Harbison
tests: introduce 'seq.py' as a portable replacement for 'seq'...
r24360 #
# A portable replacement for 'seq'
#
# Usage:
# seq STOP [1, STOP] stepping by 1
# seq START STOP [START, STOP] stepping by 1
# seq START STEP STOP [START, STOP] stepping by STEP
Robert Stanca
py3: use print_function in seq.py
r28722 from __future__ import absolute_import, print_function
Matt Harbison
tests: apply binary mode to output in seq.py...
r40809 import os
Matt Harbison
tests: introduce 'seq.py' as a portable replacement for 'seq'...
r24360 import sys
Matt Harbison
tests: apply binary mode to output in seq.py...
r40809 try:
import msvcrt
Augie Fackler
formatting: blacken the codebase...
r43346
Matt Harbison
tests: apply binary mode to output in seq.py...
r40809 msvcrt.setmode(sys.stdin.fileno(), os.O_BINARY)
msvcrt.setmode(sys.stdout.fileno(), os.O_BINARY)
msvcrt.setmode(sys.stderr.fileno(), os.O_BINARY)
except ImportError:
pass
Pulkit Goyal
py3: alias xrange to range in tests/seq.py...
r35151 if sys.version_info[0] >= 3:
xrange = range
Matt Harbison
tests: introduce 'seq.py' as a portable replacement for 'seq'...
r24360 start = 1
if len(sys.argv) > 2:
start = int(sys.argv[1])
step = 1
if len(sys.argv) > 3:
step = int(sys.argv[2])
stop = int(sys.argv[-1]) + 1
for i in xrange(start, stop, step):
Robert Stanca
py3: use print_function in seq.py
r28722 print(i)