Skip to content

Commit e9b0a6d

Browse files
posixpath: Rearrange overloads
I think this may remove the false positives from #7939's mypy-primer output.
1 parent cb7742e commit e9b0a6d

File tree

1 file changed

+10
-10
lines changed

1 file changed

+10
-10
lines changed

stdlib/posixpath.pyi

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -72,9 +72,9 @@ devnull: LiteralString
7272

7373
# Overloads are necessary to work around python/mypy#3644.
7474
@overload
75-
def abspath(path: PathLike[AnyStr]) -> AnyStr: ...
75+
def abspath(path: StrPath) -> str: ...
7676
@overload
77-
def abspath(path: AnyStr) -> AnyStr: ...
77+
def abspath(path: BytesPath) -> bytes: ...
7878
@overload
7979
def basename(p: PathLike[AnyStr]) -> AnyStr: ...
8080
@overload
@@ -84,13 +84,13 @@ def dirname(p: PathLike[AnyStr]) -> AnyStr: ...
8484
@overload
8585
def dirname(p: AnyOrLiteralStr) -> AnyOrLiteralStr: ...
8686
@overload
87-
def expanduser(path: PathLike[AnyStr]) -> AnyStr: ...
87+
def expanduser(path: StrPath) -> str: ...
8888
@overload
89-
def expanduser(path: AnyStr) -> AnyStr: ...
89+
def expanduser(path: BytesPath) -> bytes: ...
9090
@overload
91-
def expandvars(path: PathLike[AnyStr]) -> AnyStr: ...
91+
def expandvars(path: StrPath) -> str: ...
9292
@overload
93-
def expandvars(path: AnyStr) -> AnyStr: ...
93+
def expandvars(path: BytesPath) -> bytes: ...
9494
@overload
9595
def normcase(s: PathLike[AnyStr]) -> AnyStr: ...
9696
@overload
@@ -118,15 +118,15 @@ def join(__a: BytesPath, *paths: BytesPath) -> bytes: ...
118118

119119
if sys.version_info >= (3, 10):
120120
@overload
121-
def realpath(filename: PathLike[AnyStr], *, strict: bool = ...) -> AnyStr: ...
121+
def realpath(filename: StrPath, *, strict: bool = ...) -> str: ...
122122
@overload
123-
def realpath(filename: AnyStr, *, strict: bool = ...) -> AnyStr: ...
123+
def realpath(filename: BytesPath, *, strict: bool = ...) -> bytes: ...
124124

125125
else:
126126
@overload
127-
def realpath(filename: PathLike[AnyStr]) -> AnyStr: ...
127+
def realpath(filename: StrPath) -> str: ...
128128
@overload
129-
def realpath(filename: AnyStr) -> AnyStr: ...
129+
def realpath(filename: BytesPath) -> bytes: ...
130130

131131
@overload
132132
def relpath(path: LiteralString, start: LiteralString | None = ...) -> LiteralString: ...

0 commit comments

Comments
 (0)