compileall: update for py39 (#3956)

* compileall: add stripdir, prependdir and limit_sl_dest

* compileall: compile_dir's default value is now None

* compileall: update for current py39 (as of beta1)

Co-authored-by: hauntsaninja <>
This commit is contained in:
Shantanu
2020-05-27 20:18:19 -07:00
committed by GitHub
parent 7ba59719b6
commit 2a13ba9415

View File

@@ -13,6 +13,39 @@ else:
if sys.version_info >= (3, 7):
from py_compile import PycInvalidationMode
if sys.version_info >= (3, 9):
def compile_dir(
dir: _Path,
maxlevels: Optional[int] = ...,
ddir: Optional[_Path] = ...,
force: bool = ...,
rx: Optional[Pattern[Any]] = ...,
quiet: int = ...,
legacy: bool = ...,
optimize: int = ...,
workers: int = ...,
invalidation_mode: Optional[PycInvalidationMode] = ...,
*,
stripdir: Optional[str] = ..., # TODO: change to Optional[_Path] once https://bugs.python.org/issue40447 is resolved
prependdir: Optional[_Path] = ...,
limit_sl_dest: Optional[_Path] = ...,
) -> _SuccessType: ...
def compile_file(
fullname: _Path,
ddir: Optional[_Path] = ...,
force: bool = ...,
rx: Optional[Pattern[Any]] = ...,
quiet: int = ...,
legacy: bool = ...,
optimize: int = ...,
invalidation_mode: Optional[PycInvalidationMode] = ...,
*,
stripdir: Optional[str] = ..., # TODO: change to Optional[_Path] once https://bugs.python.org/issue40447 is resolved
prependdir: Optional[_Path] = ...,
limit_sl_dest: Optional[_Path] = ...,
) -> _SuccessType: ...
elif sys.version_info >= (3, 7):
def compile_dir(
dir: _Path,
maxlevels: int = ...,
@@ -35,15 +68,6 @@ if sys.version_info >= (3, 7):
optimize: int = ...,
invalidation_mode: Optional[PycInvalidationMode] = ...,
) -> _SuccessType: ...
def compile_path(
skip_curdir: bool = ...,
maxlevels: int = ...,
force: bool = ...,
quiet: int = ...,
legacy: bool = ...,
optimize: int = ...,
invalidation_mode: Optional[PycInvalidationMode] = ...,
) -> _SuccessType: ...
else:
# rx can be any object with a 'search' method; once we have Protocols we can change the type
@@ -67,6 +91,18 @@ else:
legacy: bool = ...,
optimize: int = ...,
) -> _SuccessType: ...
if sys.version_info >= (3, 7):
def compile_path(
skip_curdir: bool = ...,
maxlevels: int = ...,
force: bool = ...,
quiet: int = ...,
legacy: bool = ...,
optimize: int = ...,
invalidation_mode: Optional[PycInvalidationMode] = ...,
) -> _SuccessType: ...
else:
def compile_path(
skip_curdir: bool = ...,
maxlevels: int = ...,