GeezerVison is showing github.com — Reorganize `os.path` documentation · Issue #130536 · python/cpython
Reorganize os.path documentation #130536DescriptionThe os.path documentation is alphabetically sorted. That's great because it's easy to find a function. However, this also means that functions shouldn't reference other functions documented later as the reader may not have been aware of them before.
An alternative is to reorganize the documentation page so that we put at the top the most used functions such as os.path.join. The latter caused a bit of confusion in gh-130527, where neither the OP nor me remembered that os.path.join("/a", "/b") == "/b".
If reorganizing the documentation is not preferred, we should at least add .. seealso:: directives and clickable links so that any function mentioned but not yet documented at the time of reading can be easily looked up.
- os.path.abspath contains a reference to
os.path.join without a link.
- os.path.isabs could backlink to
os.path.abspath.
- os.path.split mentions
os.path.join but as it's far away, we could backlink it.
- os.path.join mentions "If a segment is an absolute path (which on Windows requires both a drive and a root), then all previous segments are ignored and joining continues from the absolute path segment.". We should add an example as it would be more explicit and teaching (e.g.,
os.path.join("/home/foo", "/home/bar") == "/home/bar".
Linked PRs
ActivityAA-Turner commented on Feb 25, 2025 I think seealso is probably the least disruptive to start with?
A picnixz commented on Feb 25, 2025 To me it's indeed the case. I know that we have Ctrl+F to find in the page, but I also know people that are happy when it's alphabetically organized. I'll quickly check which function needs cross-ref with seealso. picnixz commented on Feb 25, 2025 Ok, there's not much content to update. I've written down what needs to be done (roughly), maybe there are other places that could be improved. I'll stil mark this one as easy. barneygale commented on Feb 25, 2025 Maybe split the docs into lexical functions (split(), join(), etc) vs I/O functions (exists(), abspath(), etc)? See #119671 hridyasadanand commented on Mar 29, 2025 rozeappletree commented on Jul 9, 2025 Hey @picnixz if this is still open / stale can I get assigned for this? Would love to leave my footprint on os lib. AA-Turner commented on Jul 9, 2025 There's an open PR but no decision has been made yet. I would advise looking somewhere else to start contributing.
A AA-Turner commented on Jul 9, 2025
MetadataMetadataStatusShow more project fields StatusShow more project fields
DevelopmentNo branches or pull requestsIssue actions
|