Files
typeshed/tests/pyright_test.py
Eric Traut c92e3cb228 Update pyright CI test to use the latest version of pyright (1.1.118). (#5092)
Update pyright CI test to use the latest version of pyright (1.1.118). Enable all but one of pyright's strictest checks. Add a "# type: ignore" to `__new__` method in `weakref.KeyRef` because it uses a non-standard name for the `cls` parameter, which is flagged as an error by pyright.

Co-authored-by: Eric Traut <erictr@microsoft.com>
2021-03-05 12:12:18 -08:00

38 lines
907 B
Python
Executable File

#!/usr/bin/env python3
import shutil
import subprocess
import sys
from pathlib import Path
_PYRIGHT_VERSION = "1.1.118"
_WELL_KNOWN_FILE = Path("tests", "pyright_test.py")
def main() -> None:
if not _WELL_KNOWN_FILE.exists():
print("pyright_test.py must be run from the typeshed root directory", file=sys.stderr)
sys.exit(1)
# subprocess.run on Windows does not look in PATH.
npx = shutil.which("npx")
if npx is None:
print("error finding npx; is Node.js installed?", file=sys.stderr)
sys.exit(1)
try:
subprocess.run([npx, "--version"])
except OSError:
print("error running npx; is Node.js installed?", file=sys.stderr)
sys.exit(1)
command = [npx, "-p", "pyright@" + _PYRIGHT_VERSION, "pyright"] + sys.argv[1:]
ret = subprocess.run(command).returncode
sys.exit(ret)
if __name__ == "__main__":
main()