-
-
Notifications
You must be signed in to change notification settings - Fork 646
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
Remove the option inheritance and recursive options features. #12519
Conversation
c324dc5
to
41309bb
Compare
[ci skip-rust] [ci skip-build-wheels]
41309bb
to
cea5a1f
Compare
A follow-up change may clean up, simplify or even remove ParserHierarchy, but this PR is big enough already. |
scope: str, | ||
inherit_from_enclosing_scope: bool = True, | ||
) -> OptionValueContainer: | ||
def for_scope(self, scope: str, check_deprecations: bool = True) -> OptionValueContainer: |
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.
Previously we piggybacked off inherit_from_enclosing_scope
as a heuristic to avoid checking deprecations prematurely. Now we're explicit about this.
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.
Thanks!
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.
Nice! Great to see this go.
This is not needed in v2, and simplifies the options handling code and tests quite a bit.
It also simplifies things for end users, who don't have to understand these concepts any more.
This should also improve invalidation, since scopes don't all inherit global scope options any more.
[ci skip-rust]
[ci skip-build-wheels]