Skip to content

馃搫 docs(py_info): cover system_exe in all four dimensions - #128

Merged
gaborbernat merged 1 commit into
mainfrom
docs/system-exe
Aug 28, 2026
Merged

馃搫 docs(py_info): cover system_exe in all four dimensions#128
gaborbernat merged 1 commit into
mainfrom
docs/system-exe

Conversation

@gaborbernat

Copy link
Copy Markdown
Member

#127 added system_exe with reference coverage alone, since automodule picks the docstring up on its own. 馃摎 The tutorial, the how-to guide and the explanation said nothing about it, so a reader meets the property only after going looking for it in the API listing. The how-to class diagram was also wrong in a way that matters here. It typed system_executable as str when the field is str | None, which is the claim the new property exists to work around.

The tutorial gains resolution as a named concept beside interpreter, spec, discovery and cache, then shows executable and system_exe returning one path outside a virtual environment and two paths inside one. The how-to guide reads system_exe in its metadata walkthrough and says when the raw field is still what you want, which is a hand-built PythonInfo or from_exe(resolve_to_host=False). A new explanation section, Resolving a virtual environment to its base, covers the two states a PythonInfo arrives in and diagrams the prefix walk between them.

One paragraph needed no new prose. The deduplication note described this fallback as "the resolved real path of each candidate's system_executable (falling back to executable)", so it now names the property that means just that.

`system_exe` arrived with reference coverage alone, since autodoc picks
the docstring up. The other three dimensions said nothing. Worse, the
how-to class diagram typed `system_executable` as `str`, which is the
very claim the property exists to work around.

The tutorial names resolution as a concept and shows the two paths
parting company inside a virtual environment. The how-to guide points at
`system_exe`, and says when the raw field is still the one you want. A
new explanation section covers the two states a `PythonInfo` arrives in,
diagrams the walk between them, and says why the annotation cannot carry
that ordering.
@gaborbernat gaborbernat added the documentation Improvements or additions to documentation label Aug 28, 2026
@gaborbernat
gaborbernat merged commit cbf85fc into main Aug 28, 2026
19 checks passed
@gaborbernat
gaborbernat deleted the docs/system-exe branch August 28, 2026 18:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant