Skip to content

PEP 771: Amendments following discussion #4428

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

Merged
merged 19 commits into from
Jun 8, 2025
Merged

Conversation

astrofrog
Copy link
Contributor

@astrofrog astrofrog commented May 20, 2025

Following the initial publication of PEP 771, there has been a lot of discussion in this DPO thread. This PR makes changes to PEP 771 that hopefully addresses most of the concerns there.

The main changes are:

  • package[] is now considered to be the primary way to specify that a package without any default extras is being requested
  • The alternative approach of splitting packages into two has now been added, and given a reasonably extensive section as it appears to be the main alternative
  • Added text regarding packages that have both multiple backends and frontends and might want at least one default for each
  • Added a reference to PEP 751 since that PEP in principle solves the current pip freeze issues that might arise from PEP 771
  • Added text on how maintainers should document default extras

In addition to this, there are other smaller additions that aim to address some of the concerns in the DPO discussion.

Once this PR is merged, I'll then open a new discussion thread and open a trivial PR here to add the link to the PR.

cc @pradyunsg @DEKHTIARJonathan @henryiii

@willingc @hugovk @AA-Turner - just thought I'd also tag you since you were involved in the reviews of the previous iterations.


📚 Documentation preview 📚: https://pep-previews--4428.org.readthedocs.build/

Copy link
Contributor

@willingc willingc left a comment

Choose a reason for hiding this comment

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

Thanks for the update @astrofrog. I think you have done a great job clarifying points. I had some confusion when reading the pytest and 1500 plugins example. Otherwise, I found the changes improved clarity and understanding.

@DEKHTIARJonathan
Copy link

Thanks a lot @astrofrog for the revision. All good with me 👌

astrofrog and others added 2 commits May 31, 2025 21:44
Co-authored-by: Carol Willing <carolcode@willingconsulting.com>
Co-authored-by: Pradyun Gedam <pradyunsg@gmail.com>
@astrofrog
Copy link
Contributor Author

@willingc - thank you for the review, I think all the issues/suggestions you raised should be addressed.

@pradyunsg - thank you for the rewording suggestion!

Copy link
Contributor

@willingc willingc left a comment

Choose a reason for hiding this comment

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

Thanks for the additional updates @astrofrog.

@astrofrog
Copy link
Contributor Author

@willingc - thank you for approving! Once this is deemed ready to merge, based on previous iterations it would be easier to merge and I can then open a new DPO thread and open a PR to add the new DPO link to the PEP.

Copy link

@warsawnv warsawnv left a comment

Choose a reason for hiding this comment

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

LGTM, with various suggestions and comments.

@astrofrog
Copy link
Contributor Author

@warsawnv - thanks for the review! I've implemented your suggestions/comments.

@astrofrog
Copy link
Contributor Author

Just to check, what are the next steps here - do we need @pradyunsg to approve the changes before this can be merged?

@hugovk
Copy link
Member

hugovk commented Jun 8, 2025

I didn't review but there are enough approvals here, let's merge :)

@hugovk hugovk merged commit 4c41501 into python:main Jun 8, 2025
5 checks passed
@astrofrog
Copy link
Contributor Author

Thank you all! I'll open a new DPO thread tomorrow and will open a PR here to add the link.

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.

7 participants