This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

classification
Title: Update os.path documentation regarding recommended types
Type: Stage: patch review
Components: Documentation Versions: Python 3.9
process
Status: open Resolution:
Dependencies: Superseder:
Assigned To: docs@python Nosy List: docs@python, jack__d, lazka
Priority: normal Keywords: patch

Created on 2019-11-02 17:41 by lazka, last changed 2022-04-11 14:59 by admin.

Pull Requests
URL Status Linked Edit
PR 32232 open jack__d, 2022-04-01 13:31
Messages (1)
msg355878 - (view) Author: Christoph Reiter (lazka) * Date: 2019-11-02 17:41
At the very top of https://docs.python.org/3.9/library/os.path.html there is this section regarding str and bytes:

> The path parameters can be passed as either strings, or bytes.

They also accept path-like since Python 3.6, see https://www.python.org/dev/peps/pep-0519/ (Adding a file system path protocol). I'd add path-like to the list.

> Unfortunately, some file names may not be representable as strings on Unix, so applications that need to support arbitrary file names on Unix should use bytes objects to represent path names.

This is no longer true since Python 3.1 and https://www.python.org/dev/peps/pep-0383/ (Non-decodable Bytes in System Character Interfaces). I'd suggest to delete this.

> Vice versa, using bytes objects cannot represent all file names on Windows (in the standard mbcs encoding), hence Windows applications should use string objects to access all files.

This is no longer true since Python 3.6 and https://www.python.org/dev/peps/pep-0529/ (Change Windows filesystem encoding to UTF-8). I'd suggest to delete this as well.
History
Date User Action Args
2022-04-11 14:59:22adminsetgithub: 82849
2022-04-01 13:31:49jack__dsetkeywords: + patch
nosy: + jack__d

pull_requests: + pull_request30304
stage: patch review
2019-11-02 17:41:04lazkacreate