From c40b7afc148580cf323236c3e8f401c3a39c4ff6 Mon Sep 17 00:00:00 2001 From: Jelle Zijlstra Date: Mon, 21 Aug 2017 13:54:22 -0700 Subject: [PATCH] accept PathLike in os.scandir (#1546) --- stdlib/3/os/__init__.pyi | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/stdlib/3/os/__init__.pyi b/stdlib/3/os/__init__.pyi index 1aa3390c2..bafa8242d 100644 --- a/stdlib/3/os/__init__.pyi +++ b/stdlib/3/os/__init__.pyi @@ -342,11 +342,16 @@ def renames(old: _PathType, new: _PathType) -> None: ... if sys.version_info >= (3, 3): def replace(src: _PathType, dst: _PathType) -> None: ... def rmdir(path: _PathType) -> None: ... -if sys.version_info >= (3, 5): +if sys.version_info >= (3, 6): @overload - def scandir(path: str = ...) -> Iterator[DirEntry[str]]: ... + def scandir() -> Iterator[DirEntry[str]]: ... @overload - def scandir(path: bytes) -> Iterator[DirEntry[bytes]]: ... + def scandir(path: Union[AnyStr, PathLike[AnyStr]]) -> Iterator[DirEntry[AnyStr]]: ... +elif sys.version_info >= (3, 5): + @overload + def scandir() -> Iterator[DirEntry[str]]: ... + @overload + def scandir(path: AnyStr) -> Iterator[DirEntry[AnyStr]]: ... def stat(path: _PathType) -> stat_result: ... def stat_float_times(newvalue: Union[bool, None] = ...) -> bool: ... def statvfs(path: _PathType) -> statvfs_result: ... # Unix only