Skip to content

Commit

Permalink
Make stubgen respect MYPY_CACHE_DIR
Browse files Browse the repository at this point in the history
This is required when using stubgen in a parallel build system, such
as GNU make.
  • Loading branch information
jhbaarnh committed Apr 24, 2023
1 parent 0061d6e commit 11de599
Showing 1 changed file with 10 additions and 0 deletions.
10 changes: 10 additions & 0 deletions mypy/stubgen.py
Original file line number Diff line number Diff line change
Expand Up @@ -1588,6 +1588,13 @@ def mypy_options(stubgen_options: Options) -> MypyOptions:
options.python_version = stubgen_options.pyversion
options.show_traceback = True
options.transform_source = remove_misplaced_type_comments

# Override cache_dir if provided in the environment
environ_cache_dir = os.getenv("MYPY_CACHE_DIR", "")
if environ_cache_dir.strip():
options.cache_dir = environ_cache_dir
options.cache_dir = os.path.expanduser(options.cache_dir)

return options


Expand Down Expand Up @@ -1751,6 +1758,9 @@ def generate_stubs(options: Options) -> None:
manual changes. This directory is assumed to exist.
"""

FOOTER: Final = """Environment variables:
Define MYPY_CACHE_DIR to override configuration cache_dir path."""


def parse_options(args: list[str]) -> Options:
parser = argparse.ArgumentParser(prog="stubgen", usage=HEADER, description=DESCRIPTION)
Expand Down

0 comments on commit 11de599

Please sign in to comment.