99 lines
3.5 KiB
Python
99 lines
3.5 KiB
Python
![]() |
# Copyright (c) 2006-2015 LOGILAB S.A. (Paris, FRANCE) <contact@logilab.fr>
|
||
|
# Copyright (c) 2013-2014 Google, Inc.
|
||
|
# Copyright (c) 2014-2016 Claudiu Popa <pcmanticore@gmail.com>
|
||
|
|
||
|
# 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')]
|