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
Fix config validation not erroring on global options in wrong scope #10950
Fix config validation not erroring on global options in wrong scope #10950
Conversation
# Rust tests and lints will be skipped. Delete if not intended. [ci skip-rust] # Building wheels and fs_util will be skipped. Delete if not intended. [ci skip-build-wheels]
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.
I plan to cherry-pick to 1.30.2.
This means that an option belonging to [cache]
will now error if it's in [cache.java]
. @benjyw is that correct behavior?
No, that is incorrect behavior. |
Hm, then this PR is incorrect. Until we remove the "enclosing scope" logic, we should probably special case the validation logic to ignore GLOBAL as a valid enclosing scope in this particular context. I'll revisit. |
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.
I think this is a fine short-term fix. Long-term, options and subsystems probably need some reworking and simplification, even if we want scoped subsystems to continue to exist.
# Rust tests and lints will be skipped. Delete if not intended. [ci skip-rust] # Building wheels and fs_util will be skipped. Delete if not intended. [ci skip-build-wheels]
…antsbuild#10950) This used to not complain: ```toml [source] backend_packages = ["pants.backend.python"] ``` Closes pantsbuild#3713. [ci skip-rust] [ci skip-build-wheels]
This used to not complain:
Closes #3713.
[ci skip-rust]
[ci skip-build-wheels]