mirror of
https://github.com/davidhalter/typeshed.git
synced 2025-12-07 04:34:28 +08:00
Fixes #4288. - Default imports to THIRD_PARTY, so in effect we merge the FIRST_PARTY and THIRD_PARTY stubs. This means import order is no longer affected by whether typing_extensions is installed locally. - Treat typing_extensions, _typeshed and some others as standard library modules. Note that isort master is very different from the latest release; we'll have to do something different if and when the next isort release comes out.
114 lines
3.4 KiB
Python
114 lines
3.4 KiB
Python
import sys
|
|
from _typeshed import AnyPath
|
|
from typing import Any, Optional, Pattern
|
|
|
|
if sys.version_info < (3, 6):
|
|
_SuccessType = bool
|
|
else:
|
|
_SuccessType = int
|
|
|
|
if sys.version_info >= (3, 7):
|
|
from py_compile import PycInvalidationMode
|
|
|
|
if sys.version_info >= (3, 9):
|
|
def compile_dir(
|
|
dir: AnyPath,
|
|
maxlevels: Optional[int] = ...,
|
|
ddir: Optional[AnyPath] = ...,
|
|
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[AnyPath] once https://bugs.python.org/issue40447 is resolved
|
|
prependdir: Optional[AnyPath] = ...,
|
|
limit_sl_dest: Optional[AnyPath] = ...,
|
|
hardlink_dupes: bool = ...,
|
|
) -> _SuccessType: ...
|
|
def compile_file(
|
|
fullname: AnyPath,
|
|
ddir: Optional[AnyPath] = ...,
|
|
force: bool = ...,
|
|
rx: Optional[Pattern[Any]] = ...,
|
|
quiet: int = ...,
|
|
legacy: bool = ...,
|
|
optimize: int = ...,
|
|
invalidation_mode: Optional[PycInvalidationMode] = ...,
|
|
*,
|
|
stripdir: Optional[str] = ..., # TODO: change to Optional[AnyPath] once https://bugs.python.org/issue40447 is resolved
|
|
prependdir: Optional[AnyPath] = ...,
|
|
limit_sl_dest: Optional[AnyPath] = ...,
|
|
hardlink_dupes: bool = ...,
|
|
) -> _SuccessType: ...
|
|
|
|
elif sys.version_info >= (3, 7):
|
|
def compile_dir(
|
|
dir: AnyPath,
|
|
maxlevels: int = ...,
|
|
ddir: Optional[AnyPath] = ...,
|
|
force: bool = ...,
|
|
rx: Optional[Pattern[Any]] = ...,
|
|
quiet: int = ...,
|
|
legacy: bool = ...,
|
|
optimize: int = ...,
|
|
workers: int = ...,
|
|
invalidation_mode: Optional[PycInvalidationMode] = ...,
|
|
) -> _SuccessType: ...
|
|
def compile_file(
|
|
fullname: AnyPath,
|
|
ddir: Optional[AnyPath] = ...,
|
|
force: bool = ...,
|
|
rx: Optional[Pattern[Any]] = ...,
|
|
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
|
|
def compile_dir(
|
|
dir: AnyPath,
|
|
maxlevels: int = ...,
|
|
ddir: Optional[AnyPath] = ...,
|
|
force: bool = ...,
|
|
rx: Optional[Pattern[Any]] = ...,
|
|
quiet: int = ...,
|
|
legacy: bool = ...,
|
|
optimize: int = ...,
|
|
workers: int = ...,
|
|
) -> _SuccessType: ...
|
|
def compile_file(
|
|
fullname: AnyPath,
|
|
ddir: Optional[AnyPath] = ...,
|
|
force: bool = ...,
|
|
rx: Optional[Pattern[Any]] = ...,
|
|
quiet: int = ...,
|
|
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 = ...,
|
|
force: bool = ...,
|
|
quiet: int = ...,
|
|
legacy: bool = ...,
|
|
optimize: int = ...,
|
|
) -> _SuccessType: ...
|