Используя Pylint для кода Django, я часто получаю предупреждение W0613. 90% случаев имеют значение, когда переменная объявлена и не используется. Но иногда я думаю, что это не так.
W0613: Unused argument 'kwargs' (unused-argument)
Пример, который вызывает предупреждение, представление, которое обрабатывает ошибку 500:
def error_500(request, *args, **kwargs):
'''
A 500 error handling view
'''
data = {}
return render(request, '500.html', data)
В приведенном выше случае, если мы удаляем ** kwargs, начиная с Django 2 (насколько я помню), любая ситуация с 500 ошибками приводит к необработанному исключению, которое превращается в сбой.
Так что я смущен, если Пилинт действительно понимает все ситуации, которые могут возникнуть или нет.
Должен ли я всегда рассматривать предупреждение как реальное предупреждение, потому что в моем коде чего-то не хватает, или я должен знать об этих исключительных случаях и заставить замолчать предупреждение?
Я заметил, что при использовании специального Pylint для Django этот тип предупреждения обычно появляется не так часто (pylint-django).
Но иногда это все же происходит.