Enforcing function keyword arguments in imported functions

Hello! Is it currently possible with Flake8 or any of its plugins to enforce the code to use keyword arguments in function calls, when the function is imported from a module/library? At least flake8-functions does not support this. If not, I would like to request this (most likely best suited as optional) rule to be added. My motivation is that it would make code more readable, as one would understand the role of the passed variables better without checking the target function or its documentation. Example: from foo import bar baz = "" bar(baz=baz) # Allowed bar(baz) # Not allowed Thank you for your time and all the work you do regarding Flake8. Markus

Hello, There's an old issue in pylint asking for something close to this (only if the passed values are litteral, but for all functions, not specifically for libraries) : https://github.com/PyCQA/pylint/issues/385 I think it makes more sense to not make any distinction between lib/external code but feel free to discuss the specifics of the feature in the issue itself. Pierre Le jeu. 14 avr. 2022 à 19:13, Daniel Pope <lord.mauve@gmail.com> a écrit :

Hello, There's an old issue in pylint asking for something close to this (only if the passed values are litteral, but for all functions, not specifically for libraries) : https://github.com/PyCQA/pylint/issues/385 I think it makes more sense to not make any distinction between lib/external code but feel free to discuss the specifics of the feature in the issue itself. Pierre Le jeu. 14 avr. 2022 à 19:13, Daniel Pope <lord.mauve@gmail.com> a écrit :
participants (4)
-
Daniel Pope
-
Ian Stapleton Cordasco
-
Markus Toivonen
-
Pierre Sassoulas