1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
|
from __future__ import absolute_import
from pylint.checkers import BaseChecker
from pylint.checkers.utils import check_messages
from pylint_django.__pkginfo__ import BASE_ID
class DjangoInstalledChecker(BaseChecker):
name = 'django-installed-checker'
msgs = {
'F%s01' % BASE_ID: ("Django is not available on the PYTHONPATH",
'django-not-available',
"Django could not be imported by the pylint-django plugin, so most Django related "
"improvements to pylint will fail."),
'W%s99' % BASE_ID: ('Placeholder message to prevent disabling of checker',
'django-not-available-placeholder',
'PyLint does not recognise checkers as being enabled unless they have at least'
' one message which is not fatal...')
}
@check_messages('django-not-available')
def close(self):
try:
__import__('django')
except ImportError:
self.add_message('F%s01' % BASE_ID)
|