# Copyright (c) 2006-2015 LOGILAB S.A. (Paris, FRANCE) # Copyright (c) 2013-2014 Google, Inc. # Copyright (c) 2014-2016 Claudiu Popa # Licensed under the GPL: https://www.gnu.org/licenses/old-licenses/gpl-2.0.html # For details: https://github.com/PyCQA/pylint/blob/master/COPYING # pylint: disable=W0622,C0103 """pylint packaging information""" from __future__ import absolute_import from os.path import join from sys import version_info as py_version from pkg_resources import parse_version from setuptools import __version__ as setuptools_version modname = distname = 'pylint' numversion = (1, 7, 4) version = '.'.join([str(num) for num in numversion]) install_requires = [ 'astroid>=1.5.1', 'six', 'isort >= 4.2.5', 'mccabe', ] dependency_links = [] extras_require = {} extras_require[':sys_platform=="win32"'] = ['colorama'] def has_environment_marker_range_operators_support(): """Code extracted from 'pytest/setup.py' https://github.com/pytest-dev/pytest/blob/7538680c/setup.py#L31 The first known release to support environment marker with range operators it is 17.1, see: https://setuptools.readthedocs.io/en/latest/history.html#id113 """ return parse_version(setuptools_version) >= parse_version('17.1') if has_environment_marker_range_operators_support(): extras_require[':python_version=="2.7"'] = ['configparser', 'backports.functools_lru_cache'] extras_require[':python_version<"3.4"'] = ['singledispatch'] else: if (py_version.major, py_version.minor) == (2, 7): install_requires.extend(['configparser', 'backports.functools_lru_cache']) if py_version < (3, 4): install_requires.extend(['singledispatch']) license = 'GPL' description = "python code static checker" web = 'https://github.com/PyCQA/pylint' mailinglist = "mailto:code-quality@python.org" author = 'Python Code Quality Authority' author_email = 'code-quality@python.org' classifiers = ['Development Status :: 4 - Beta', 'Environment :: Console', 'Intended Audience :: Developers', 'License :: OSI Approved :: GNU General Public License (GPL)', 'Operating System :: OS Independent', 'Programming Language :: Python', 'Programming Language :: Python :: 2', 'Programming Language :: Python :: 3', 'Topic :: Software Development :: Debuggers', 'Topic :: Software Development :: Quality Assurance', 'Topic :: Software Development :: Testing' ] long_desc = """\ Pylint is a Python source code analyzer which looks for programming errors, helps enforcing a coding standard and sniffs for some code smells (as defined in Martin Fowler's Refactoring book) . Pylint can be seen as another PyChecker since nearly all tests you can do with PyChecker can also be done with Pylint. However, Pylint offers some more features, like checking length of lines of code, checking if variable names are well-formed according to your coding standard, or checking if declared interfaces are truly implemented, and much more. . Additionally, it is possible to write plugins to add your own checks. . Pylint is shipped with "pyreverse" (UML diagram generator) and "symilar" (an independent similarities checker).""" scripts = [join('bin', filename) for filename in ('pylint', "symilar", "epylint", "pyreverse")] include_dirs = [join('pylint', 'test')]