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
Treat --errors-only
as a disable, not a paired enable/disable
#6937
Treat --errors-only
as a disable, not a paired enable/disable
#6937
Conversation
I'm not really sure if this language implies that we enable all other messages. Either way, this is a backwards incompatible change. With all the issues people had with their configuration files in the |
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.
Thank you !
Pull Request Test Coverage Report for Build 2499995642
💛 - Coveralls |
I see where Daniel is coming from, but I think it could be considered a fix. I don't have strong opinion about it though. |
I think I'm not following you. As in, I'm not sure what that has to do with the bug report or the PR. So I must be missing something :-)
It's worth getting this right, for sure, but every bug fix is backwards incompatible. I think this is a bug, not behavior people would reasonably depend on. It's the equivalent of treating |
That's the description of this option. I'm wondering if that implies that we turn on all
Agreed that this is a bug. I'm only worried about people depending on this. I can see (new) users try and do |
This comment has been minimized.
This comment has been minimized.
Gotcha. Sorry for sounding annoying. Was dashing off a quick reply before stepping out -- but I follow you now 👍🏻 So let's take backporting off the table. I feel like the flag is pretty surprising/unusable as is, though. We probably don't get issues reported about it because folks decide immediately not to use it when they see it ignores all their disables. You can't use this flag with a pylintrc that disables any errors, right? Here is the README:
Imagine adopting pylint on a legacy project and starting with a pylintc you know and like from other projects that disables, I don't know, no-member or something. Now you can't follow our advice, because For things that are undefined and feel like bugs, I feel like we don't have to wait for 3.X but I'm not a zealous advocate here, so I'm open. |
This comment has been minimized.
This comment has been minimized.
No worries!
You could by doing
No I agree with you. I just wanted to make sure we were all on the same page and conscious of any potential breakage. Even though I have become more aware of it I keep surprising myself how much we can break with each minor version 😄
If we consider this a bug let's do the backport. It would also help take the load of explaining this decision from the |
We might be better off actually releasing a major and officially break things. There's quite a lot of changes to apply at this point. |
I'd hold off on releasing |
+1
Sure.
Right, okay, so for my scenario with an existing config file being brought to a new project, that means having to explicitly re-disable everything. I think we're on the same page, but just mentioning it here for "posterity" i.e. next month. |
This comment has been minimized.
This comment has been minimized.
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.
LGTM, are you ok to backport in 2.14.2 @DanielNoord ?
Yes! |
7a9b7a9
to
d16f765
Compare
Rebased on main because I think the CI issue might come from #6945 |
🤖 According to the primer, this change has no effect on the checked open source code. 🤖🎉 This comment was generated for commit d16f765 |
…nt-dev#6937) Co-authored-by: Pierre Sassoulas <pierre.sassoulas@gmail.com>
Co-authored-by: Pierre Sassoulas <pierre.sassoulas@gmail.com>
Type of Changes
Description
Closes #6811
Now,
--errors-only
is interpreted as a disable of non-error/fatal messages, not a paired disable of non-errors and enable of every error. Prevents canceling out prior disables. (In other words, it was acting as "enable all and only errors", not "disable non-errors").