From b64313d313723c62f173f750f2d699ebf169e01f Mon Sep 17 00:00:00 2001 From: Helmut Grohne Date: Wed, 21 Feb 2024 10:15:26 +0100 Subject: revoke the false promise that bytes would be convertible to Path pathlib.Path(somebytes) fails. Hence bytes is not actually convertible and should not be included in PathConvertible. Then, we can simplify matters in quite a few places by knowing that the thing we work with is not bytes. --- linuxnamespaces/atlocation.py | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) (limited to 'linuxnamespaces/atlocation.py') diff --git a/linuxnamespaces/atlocation.py b/linuxnamespaces/atlocation.py index 2c827a2..5871db8 100644 --- a/linuxnamespaces/atlocation.py +++ b/linuxnamespaces/atlocation.py @@ -17,7 +17,7 @@ import typing AT_FDCWD = -100 -PathConvertible = typing.Union[bytes, str, os.PathLike] +PathConvertible = typing.Union[str, os.PathLike] class AtFlags(enum.IntFlag): @@ -124,12 +124,6 @@ class AtLocation: ) if not self.location: return AtLocation(self.fd, name, self.flags) - if isinstance(self.location, bytes) or isinstance(name, bytes): - return AtLocation( - self.fd, - os.path.join(os.fsencode(self.location), os.fsencode(name)), - self.flags, - ) return AtLocation( self.fd, pathlib.Path(self.location).joinpath(name), self.flags ) @@ -344,7 +338,7 @@ class AtLocation: """ self.close() - def __fspath__(self) -> str | bytes: + def __fspath__(self) -> str: """Return the underlying location if it uniquely defines this object. Otherwise raise a ValueError. """ -- cgit v1.2.3