-
-
Notifications
You must be signed in to change notification settings - Fork 273
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
Address pylint 3.3 messages #2575
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #2575 +/- ##
=======================================
Coverage 93.06% 93.06%
=======================================
Files 93 93
Lines 11064 11064
=======================================
Hits 10297 10297
Misses 767 767
Flags with carried forward coverage won't be shown. Click here to find out more.
|
# Maximum number of positional arguments for function / method. | ||
max-positional-arguments=8 | ||
|
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.
Kinda bad that we're forcing everyone upgrading to add this. Should we use the max-args value by default ?
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.
And release it in 3.3.1 asap
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 don't know, seems presumptuous to me. There are several options, fixing it, disabling it, adding inline disables for egregious cases. Doesn't seem any different to me than the usual pylint minor upgrade where each new check has to be evaluated. We called out in the release note that this new check has its own setting.
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.
Also, defaulting one setting to the other is pretty bad: the max-positional-arguments default should always be strictly lower than max-args. It's already not great that the defaults are the same.
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 agree with your point that the default should be less than max-args, but it seems like it's something that should be fixed in a major. If you already had max-args=12
in the code imo it means you wanted to disable all existing too-many-arguments while still guaranteeing that it's not getting worse either (i.e. your acceptable number of positional args is going to be high too). It also pretty much means that your going to have new too-many-positional-arguments
raised when upgrading which is bad for a minor.
Also, too-many-positional-arguments
is a refactor message: annoying to remove and probably not something that will be default when pylint become "sane" in 4.0.
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.e. your acceptable number of positional args is going to be high too)
I guess I don't think we can assume that.
I'm keeping an open mind, but I just think every pylint minor comes with estimating the cost of complying with every new message.
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.
Fair enough.
(cherry picked from commit 706fcdb)
No description provided.