neuralmonkey icon indicating copy to clipboard operation
neuralmonkey copied to clipboard

Increase pylint limits for too-many-arguments and too-many-locals

Open jindrahelcl opened this issue 6 years ago • 3 comments

We should increase pylint limits for too-many-arguments and too-many-locals (which is influenced by the arguments which count as well towards this number).

For example, the current maximum of arguments is 8. Since the ModelPart parent class has five of them, this leaves almost no space for classes that are derived from this class.

The maximum number of arguments used in neuralmonkey is in the RNN decoder constructor (23) and there is a bunch of other functions with arg number > 20. The mean argument number (of those larger than 8) is around 12-15.

I propose to raise this number globally to e.g. 15 or 20, because now the pylint warning about too many arguments is just not useful and everyone is ignoring it and the code is full with pylint: disable lines..

jindrahelcl avatar Oct 26 '18 16:10 jindrahelcl

Pokud by šlo ten limit nastavit jen pro konstruktory, tak bych to udělal, ale nevim, jestli to jde a jak by se to dělalo. @tomasmcz ?

jindrahelcl avatar Oct 26 '18 16:10 jindrahelcl

Nemyslím si, že Python ví, co je to konstruktor :-P Podle mne by se věci, které mají dvacet argumentů, měly refaktorovat (zkusit smysluplně rozdělit na menší části, které se nakonfigurují zvlášť a pak se spojí). Ale na druhou stranu uznávám, že v Pythonu je to asi idiomatické -- když čtu dokumentaci k matplotlibu, jsou tam všude konstruktory s desítkami arguementů.

tomasmcz avatar Nov 01 '18 00:11 tomasmcz

Dvacet už je na refaktor zralý, to jo, ale osm je prostě málo skoro na všechno.

jindrahelcl avatar Nov 01 '18 07:11 jindrahelcl