Closed
Description
Since 6716254, attempting to create a pathlib.PurePath
or Path
object with mixed str
and bytes
arguments raises a TypeError (yay!) with a misleading message (booo!):
>>> import pathlib
>>> pathlib.Path('foo', b'bar')
TypeError: Can't mix strings and bytes in path components
This message implies that bytes are supported, as long as we don't mix them with strings. And yet when we try that:
>>> pathlib.Path(b'foo', b'bar')
TypeError: argument should be a str or an os.PathLike object where __fspath__ returns a str, not 'bytes'
This message is better, and should be used in the former case.