-
-
Notifications
You must be signed in to change notification settings - Fork 31.3k
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
bpo-40334: Add What's New sections for PEP 617 and PEP 585 #19704
Merged
Merged
Changes from all commits
Commits
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Are there no new features that PEG allowed in the current state? Is this 100% 1:1 with the LL-1 parser?
One thing you might mention is why this work was done in the first place. "It's more flexible" isn't the entire truth. The truth is that Python's actual grammar even pre-3.9 was not really LL-1 anymore and the current parser overstayed its welcome, leading to tricky maintenance.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There are two Easter eggs; the new parser produces a syntax error if you use
__new_parser__
(this is for us so we can ensure a code path is actually using the new parser), and it supportswith (ctxmgr1 as var1, ctxmgr2 as var2, ...): block
. But I think neither should be documented (and maybe we should remove the latter during the beta cycle, before people start relying on it).I'd prefer not to go into a long discussion about the "why" here, people can read the PEP. Honestly, it's hardly worth a mention in "what's new" except people need to be aware and we need to advertise the ways to disable it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please no, that was one of the motivators behind me nagging you about this at the core sprint in 2017 and 2018 :-)