Python: Keyword arguments and "Functions, methods and lambdas should not have too many parameters

It should hold also for a parameter that has no default value. The “mandatory keyword” name I chose to describe this relates to the fact that you must pass it as a keyword argument. You are right, this is ambiguous, I should have used the name “keyword-only argument”.

I think the point of this rule is to prevent brain overload, which is the case if you need to remember what argument position maps to which argument. But if the call is made with keyword arguments that makes it a lot clearer what is being passed to the function. Therefore it would be nice if sonarqube could distinguish between this case and just a plain methods with a large number of possible positional arguments.