PEP 817: Final set of pre-split updates#4867
Conversation
This is a set of updates to PEP 817 that were prepared prior to the decision to split it into smaller PEPs. We do not intend to pursue PEP 817 in this updated form. However, we would like to get the changes committed to the repository so that the history of changes is not lost. The changes include refocusing of the security details, some clarifications, tool behavior outlines and update for the images to respect dark theme. We are not marking the PEP as withdrawn, as our current plan is to eventually replace the specification part with an index listing the split PEPs. Signed-off-by: Michał Górny <mgorny@quansight.com>
rgommers
left a comment
There was a problem hiding this comment.
This was reviewed in detail by multiple co-authors before opening this PR. It contains important clarifications, as well as the diagram that multiple reviewers found really helpful.
PEP editors, can this please be merged?
There was a problem hiding this comment.
@mgorny I thought we fixed the light/dark mode behavior?
There was a problem hiding this comment.
SVG portability ... sigh. On macOS, it renders fine on Safari, and badly on Firefox and Chrome.
There was a problem hiding this comment.
For https://pypackaging-native.github.io/ I took the easy way out and just committed two .svg files, with the selected one depending on dark mode yes/no. Not sure if that's acceptable here. Can also just accept that it's imperfect in one of the modes and commit the white-background one, if that would be okay (there's already another image that's white-only because screenshot).
There was a problem hiding this comment.
That's Firefox on Linux? It doesn't show for me on Chrome/Safari/Firefox/Opera on macOS, or Chrome on Android.
https://pep-previews--4867.org.readthedocs.build/pep-0817/#installing-a-package-from-an-index
If you want to use PNG, you can put :class: invert-in-dark-mode on it to invert via CSS (see other PEPs).
There was a problem hiding this comment.
Two SVG files sound like a good workaround, but I don't know if we can implement switching between them via Sphinx.
Either way, I'm fine with any of the solutions, please decide for me :-).
There was a problem hiding this comment.
If you want to use PNG, you can put
:class: invert-in-dark-modeon it to invert via CSS (see other PEPs).
This sounds nice. PNG is much easier to work with, so if it's that easy, I'd prefer that - will not be the last time we'll need this.
There was a problem hiding this comment.
Done. I've also added the class to PyTorch selector screenshot.
@hugovk, could you check if the same problem applies to the GROMACS bar graph? If yes, I can also replace it with a PNG.
Signed-off-by: Michał Górny <mgorny@quansight.com>
Signed-off-by: Michał Górny <mgorny@quansight.com>
Signed-off-by: Michał Górny <mgorny@quansight.com>
Signed-off-by: Michał Górny <mgorny@quansight.com>
Documentation build overview
698 files changed ·
|
willingc
left a comment
There was a problem hiding this comment.
Thanks. Let's try to land this since it adds useful diagrams which readers will benefit from viewing
| When asked to install a version of a package from an index, the proposed | ||
| behavior would be to: | ||
|
|
||
| 1. Query the remote index for the package in question. |
There was a problem hiding this comment.
| 1. Query the remote index for the package in question. | |
| 1. Query the remote index for the desired package. |
| 2. Initially select a package version meeting the version constraints, | ||
| as usual (this does not need to take variant metadata into account). |
There was a problem hiding this comment.
| 2. Initially select a package version meeting the version constraints, | |
| as usual (this does not need to take variant metadata into account). | |
| 2. Select an initial match for a package version meeting the version constraints, | |
| as usual (this does not need to take variant metadata into account). |
| as usual (this does not need to take variant metadata into account). | ||
| 3. Filter available wheels based on Platform Compatibility Tags. | ||
| 4. Determine if any of the remaining wheels are variant wheels. | ||
| If not, proceed as with non-variant wheels. |
There was a problem hiding this comment.
proceed as with non-variant wheels
This would use the initial match. Correct?
| non-variant wheels as well. | ||
|
|
||
|
|
||
| Suggested implementation logic per type of packaging tool |
There was a problem hiding this comment.
Can we simplify this language?
| Suggested implementation logic per type of packaging tool | |
| Suggested implementation logic for a packaging tool |
| When asked to install a version of a package from an index, the proposed | ||
| behavior would be to: |
There was a problem hiding this comment.
| When asked to install a version of a package from an index, the proposed | |
| behavior would be to: | |
| When asked to install a version of a package from an index, the proposed | |
| tool behavior would be to: |
| 2. Initially select a package version meeting the version constraints, | ||
| as usual (this does not need to take variant metadata into account). | ||
| 3. Filter available wheels based on Platform Compatibility Tags. | ||
| 4. Determine if any of the remaining wheels are variant wheels. |
There was a problem hiding this comment.
| 4. Determine if any of the remaining wheels are variant wheels. | |
| 4. Determine if any of the filtered wheels are variant wheels. |
| When asked to install a local wheel file, the proposed behavior would be | ||
| to: |
There was a problem hiding this comment.
| When asked to install a local wheel file, the proposed behavior would be | |
| to: | |
| When asked to install a local wheel file, the tool's proposed behavior would be | |
| to: |



PEP 123: Summary of changes)This is a set of updates to PEP 817 that were prepared prior to the decision to split it into smaller PEPs. We do not intend to pursue PEP 817 in this updated form. However, we would like to get the changes committed to the repository so that the history of changes is not lost.
The changes include refocusing of the security details, some clarifications, tool behavior outlines and update for the images to respect dark theme.
We are not marking the PEP as withdrawn, as our current plan is to eventually replace the specification part with an index listing the split PEPs.
📚 Documentation preview 📚: https://pep-previews--4867.org.readthedocs.build/pep-0817/