Skip to content

Reorganize os.path documentation #130536

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
picnixz opened this issue Feb 25, 2025 · 5 comments
Open

Reorganize os.path documentation #130536

picnixz opened this issue Feb 25, 2025 · 5 comments
Labels
docs Documentation in the Doc dir easy

Comments

@picnixz
Copy link
Member

picnixz commented Feb 25, 2025

The 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

@picnixz picnixz added the docs Documentation in the Doc dir label Feb 25, 2025
@AA-Turner
Copy link
Member

I think seealso is probably the least disruptive to start with?

A

@picnixz
Copy link
Member Author

picnixz commented 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
Copy link
Member Author

picnixz commented 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.

@picnixz picnixz added the easy label Feb 25, 2025
@barneygale
Copy link
Contributor

Maybe split the docs into lexical functions (split(), join(), etc) vs I/O functions (exists(), abspath(), etc)? See #119671

@hridyasadanand

This comment has been minimized.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
docs Documentation in the Doc dir easy
Projects
Status: Todo
Development

No branches or pull requests

4 participants