Skip to content

PEP 825: add a short note for installing from a local directory#49

Open
mgorny wants to merge 2 commits intopep-wheel-variants-acceptancefrom
pep-825-install-from-dir
Open

PEP 825: add a short note for installing from a local directory#49
mgorny wants to merge 2 commits intopep-wheel-variants-acceptancefrom
pep-825-install-from-dir

Conversation

@mgorny
Copy link
Copy Markdown

@mgorny mgorny commented Apr 23, 2026


📚 Documentation preview 📚: https://wheelnext-peps--49.org.readthedocs.build/

Signed-off-by: Michał Górny <mgorny@quansight.com>
@read-the-docs-community
Copy link
Copy Markdown

read-the-docs-community Bot commented Apr 23, 2026

Comment thread peps/pep-0825.rst Outdated
wheels. The remaining steps correspond to the current installer
behavior.

When a local directory is provided rather than a remote index, the same
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As far as the standards are concerned, a local directory does not exist: PEP 508 only support version specifiers, repos and files, and from the other direction the local directory doesn't speak the index api. That's a spec concern though, tools do the evident thing and use the directory like an index.

What about: If a separate variants-<...>.json for all wheels in consideration isn't available, variant metadata must be read directly from each wheel.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's a non-normative part, so I wouldn't be that concerned. However, I don't think we want to encourage reading metadata directly from remote files — this will definitely be picked on.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We're already reading a file from a remote file for METADATA if PEP 658 isn't supported, I can defend this in the discussion, I don't think we need to yield on that.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hmm, but then we'd actually have to change the spec, since it says that it "MUST be present".

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I mainly wouldn't talk about local directories as a concept, but we can more generally say that if you obtain wheels from a source that doesn't give you a variants.json, you need to read the variant information from the wheel.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, I suppose that's a loophole we could use.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done.

Signed-off-by: Michał Górny <mgorny@quansight.com>
Copy link
Copy Markdown

@rgommers rgommers left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That seems clear, LGTM. Thanks @mgorny

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants