Wed Mar 1 13:08:44 2017 UTC ()
Update devel/py-pylint to 1.6.5.

- Change to use ALTERNATIVES to avoid conflicts between Python versions.

Pylint 1.6.5
- Copyright and doc changes only

Pylint 1.6.4
- Recurse into all the ancestors when checking if an object is an
  exception

Pylint 1.6.3
- Do not crash when inferring uninferable exception types for docparams
  extension

Pylint 1.6.2
- Do not crash when printing the help of options with default regular
  expressions
- More granular versions for deprecated modules.
- Do not crash in docparams when we can't infer the exception types.


(fhajny)
diff -r0 -r1.1 pkgsrc/devel/py-pylint/ALTERNATIVES
diff -r1.13 -r1.14 pkgsrc/devel/py-pylint/Makefile
diff -r1.5 -r1.6 pkgsrc/devel/py-pylint/PLIST
diff -r1.4 -r1.5 pkgsrc/devel/py-pylint/distinfo
diff -r0 -r1.1 pkgsrc/devel/py-pylint/patches/patch-pylint_____pkginfo____.py
diff -r0 -r1.1 pkgsrc/devel/py-pylint/patches/patch-setup.py

File Added: pkgsrc/devel/py-pylint/ALTERNATIVES
bin/epylint @PREFIX@/bin/epylint@PYVERSSUFFIX@
bin/pylint @PREFIX@/bin/pylint@PYVERSSUFFIX@
bin/pylint-gui @PREFIX@/bin/pylint-gui@PYVERSSUFFIX@
bin/pyreverse @PREFIX@/bin/pyreverse@PYVERSSUFFIX@
bin/symilar @PREFIX@/bin/symilar@PYVERSSUFFIX@
man/man1/epylint.1 @PREFIX@/man/man1/epylint@PYVERSSUFFIX@.1
man/man1/pylint-gui.1 @PREFIX@/man/man1/pylint-gui@PYVERSSUFFIX@.1
man/man1/pylint.1 @PREFIX@/man/man1/pylint@PYVERSSUFFIX@.1
man/man1/pyreverse.1 @PREFIX@/man/man1/pyreverse@PYVERSSUFFIX@.1
man/man1/symilar.1 @PREFIX@/man/man1/symilar@PYVERSSUFFIX@.1

cvs diff -r1.13 -r1.14 pkgsrc/devel/py-pylint/Makefile (expand / switch to context diff)
--- pkgsrc/devel/py-pylint/Makefile 2017/01/03 13:23:02 1.13
+++ pkgsrc/devel/py-pylint/Makefile 2017/03/01 13:08:43 1.14
@@ -1,38 +1,45 @@
-# $NetBSD: Makefile,v 1.13 2017/01/03 13:23:02 jperkin Exp $
+# $NetBSD: Makefile,v 1.14 2017/03/01 13:08:43 fhajny Exp $
 
-DISTNAME=	pylint-1.6.1
+DISTNAME=	pylint-1.6.5
 PKGNAME=	${PYPKGPREFIX}-${DISTNAME}
 CATEGORIES=	devel python
 MASTER_SITES=	${MASTER_SITE_PYPI:=p/pylint/}
 
 MAINTAINER=	helgoman@users.sourceforge.net
 HOMEPAGE=	https://www.pylint.org/
-COMMENT=	Python code static checker
-LICENSE=    	gnu-gpl-v2
+COMMENT=	Python source code analyzer
+LICENSE=	gnu-gpl-v2
 
+.include "../../lang/python/pyversion.mk"
+
+DEPENDS+=	${PYPKGPREFIX}-astroid>=1.4.5<1.5.0:../../devel/py-astroid
+DEPENDS+=	${PYPKGPREFIX}-isort>=4.2.5:../../devel/py-isort
+DEPENDS+=	${PYPKGPREFIX}-mccabe-[0-9]*:../../devel/py-mccabe
+DEPENDS+=	${PYPKGPREFIX}-six-[0-9]*:../../lang/py-six
 DEPENDS+=	${PYPKGPREFIX}-Tk-[0-9]*:../../x11/py-Tk
-DEPENDS+=	${PYPKGPREFIX}-astroid>=1.3.6:../../devel/py-astroid
-DEPENDS+=	${PYPKGPREFIX}-logilab-common>=0.53.0:../../devel/py-logilab-common
+.if ${PYVERSSUFFIX} == "2.7"
+DEPENDS+=	${PYPKGPREFIX}-backports.functools_lru_cache-[0-9]*:../../devel/py-backports.functools_lru_cache
+DEPENDS+=	${PYPKGPREFIX}-configparser-[0-9]*:../../devel/py-configparser
+.endif
 
 USE_LANGUAGES=	# none
 
-DOCDIR=			${PREFIX}/share/doc/pylint
-INSTALLATION_DIRS=	${DOCDIR} ${PKGMANDIR}/man1
+SCRIPTS=	epylint pylint pylint-gui pyreverse symilar
 
-REPLACE_PYTHON+=	pylint/__main__.py pylint/test/data/ascript pylint/test/input/noext
+INSTALLATION_DIRS=	${PKGMANDIR}/man1
 
+REPLACE_PYTHON+=	pylint/test/data/ascript
+
+pre-configure:
+.for file in ${SCRIPTS}
+	${MV} ${WRKSRC}/bin/${file} ${WRKSRC}/bin/${file}${PYVERSSUFFIX}
+.endfor
+
 post-install:
-	${MV} ${DESTDIR}${PREFIX}/bin/epylint \
-		${DESTDIR}${PREFIX}/bin/epylint-${PYVERSSUFFIX} || ${TRUE}
-	${MV} ${DESTDIR}${PREFIX}/bin/pylint \
-		${DESTDIR}${PREFIX}/bin/pylint-${PYVERSSUFFIX} || ${TRUE}
-	${MV} ${DESTDIR}${PREFIX}/bin/pylint-gui \
-		${DESTDIR}${PREFIX}/bin/pylint-gui-${PYVERSSUFFIX} || ${TRUE}
-	${MV} ${DESTDIR}${PREFIX}/bin/pyreverse \
-		${DESTDIR}${PREFIX}/bin/pyreverse-${PYVERSSUFFIX} || ${TRUE}
-	${MV} ${DESTDIR}${PREFIX}/bin/symilar \
-		${DESTDIR}${PREFIX}/bin/symilar-${PYVERSSUFFIX} || ${TRUE}
-	${INSTALL_MAN} ${WRKSRC}/man/*.1 ${DESTDIR}${PREFIX}/${PKGMANDIR}/man1
+.for file in ${SCRIPTS}
+	${INSTALL_DATA} ${WRKSRC}/man/${file}.1 \
+		${DESTDIR}${PREFIX}/${PKGMANDIR}/man1/${file}${PYVERSSUFFIX}.1
+.endfor
 
 do-test:
 	${RUN} cd ${WRKSRC}/pylint/test; ${SETENV} ${TEST_ENV} ${PYTHONBIN} -m unittest discover -p "unittest*.py"

cvs diff -r1.5 -r1.6 pkgsrc/devel/py-pylint/PLIST (expand / switch to context diff)
--- pkgsrc/devel/py-pylint/PLIST 2016/08/29 16:19:04 1.5
+++ pkgsrc/devel/py-pylint/PLIST 2017/03/01 13:08:43 1.6
@@ -1,9 +1,9 @@
-@comment $NetBSD: PLIST,v 1.5 2016/08/29 16:19:04 wiz Exp $
-bin/epylint-${PYVERSSUFFIX}
-bin/pylint-${PYVERSSUFFIX}
-bin/pylint-gui-${PYVERSSUFFIX}
-bin/pyreverse-${PYVERSSUFFIX}
-bin/symilar-${PYVERSSUFFIX}
+@comment $NetBSD: PLIST,v 1.6 2017/03/01 13:08:43 fhajny Exp $
+bin/epylint${PYVERSSUFFIX}
+bin/pylint-gui${PYVERSSUFFIX}
+bin/pylint${PYVERSSUFFIX}
+bin/pyreverse${PYVERSSUFFIX}
+bin/symilar${PYVERSSUFFIX}
 ${PYSITELIB}/${EGG_INFODIR}/PKG-INFO
 ${PYSITELIB}/${EGG_INFODIR}/SOURCES.txt
 ${PYSITELIB}/${EGG_INFODIR}/dependency_links.txt
@@ -371,6 +371,9 @@
 ${PYSITELIB}/pylint/test/functional/init_not_called.txt
 ${PYSITELIB}/pylint/test/functional/invalid_all_object.py
 ${PYSITELIB}/pylint/test/functional/invalid_all_object.txt
+${PLIST.py2x}${PYSITELIB}/pylint/test/functional/invalid_encoded_data.py
+${PLIST.py2x}${PYSITELIB}/pylint/test/functional/invalid_encoded_data.rc
+${PLIST.py2x}${PYSITELIB}/pylint/test/functional/invalid_encoded_data.txt
 ${PYSITELIB}/pylint/test/functional/invalid_exceptions_caught.py
 ${PYSITELIB}/pylint/test/functional/invalid_exceptions_caught.txt
 ${PYSITELIB}/pylint/test/functional/invalid_exceptions_raised.py
@@ -607,6 +610,15 @@
 ${PYSITELIB}/pylint/test/functional/unidiomatic_typecheck.py
 ${PYSITELIB}/pylint/test/functional/unidiomatic_typecheck.txt
 ${PYSITELIB}/pylint/test/functional/uninferable_all_object.py
+${PLIST.py2x}${PYSITELIB}/pylint/test/functional/unknown_encoding_jython.py
+${PLIST.py2x}${PYSITELIB}/pylint/test/functional/unknown_encoding_jython.rc
+${PLIST.py2x}${PYSITELIB}/pylint/test/functional/unknown_encoding_jython.txt
+${PLIST.py2x}${PYSITELIB}/pylint/test/functional/unknown_encoding_py29.py
+${PLIST.py2x}${PYSITELIB}/pylint/test/functional/unknown_encoding_py29.rc
+${PLIST.py2x}${PYSITELIB}/pylint/test/functional/unknown_encoding_py29.txt
+${PLIST.py2x}${PYSITELIB}/pylint/test/functional/unknown_encoding_pypy.py
+${PLIST.py2x}${PYSITELIB}/pylint/test/functional/unknown_encoding_pypy.rc
+${PLIST.py2x}${PYSITELIB}/pylint/test/functional/unknown_encoding_pypy.txt
 ${PYSITELIB}/pylint/test/functional/unnecessary_lambda.py
 ${PYSITELIB}/pylint/test/functional/unnecessary_lambda.txt
 ${PYSITELIB}/pylint/test/functional/unnecessary_pass.py
@@ -919,20 +931,8 @@
 ${PYSITELIB}/pylint/utils.py
 ${PYSITELIB}/pylint/utils.pyc
 ${PYSITELIB}/pylint/utils.pyo
-man/man1/epylint.1
+man/man1/epylint${PYVERSSUFFIX}.1
-man/man1/pylint-gui.1
+man/man1/pylint-gui${PYVERSSUFFIX}.1
-man/man1/pylint.1
+man/man1/pylint${PYVERSSUFFIX}.1
-man/man1/pyreverse.1
+man/man1/pyreverse${PYVERSSUFFIX}.1
-man/man1/symilar.1
+man/man1/symilar${PYVERSSUFFIX}.1
-${PLIST.py2x}${PYSITELIB}/pylint/test/functional/invalid_encoded_data.py
-${PLIST.py2x}${PYSITELIB}/pylint/test/functional/invalid_encoded_data.rc
-${PLIST.py2x}${PYSITELIB}/pylint/test/functional/invalid_encoded_data.txt
-${PLIST.py2x}${PYSITELIB}/pylint/test/functional/unknown_encoding_jython.py
-${PLIST.py2x}${PYSITELIB}/pylint/test/functional/unknown_encoding_jython.rc
-${PLIST.py2x}${PYSITELIB}/pylint/test/functional/unknown_encoding_jython.txt
-${PLIST.py2x}${PYSITELIB}/pylint/test/functional/unknown_encoding_py29.py
-${PLIST.py2x}${PYSITELIB}/pylint/test/functional/unknown_encoding_py29.rc
-${PLIST.py2x}${PYSITELIB}/pylint/test/functional/unknown_encoding_py29.txt
-${PLIST.py2x}${PYSITELIB}/pylint/test/functional/unknown_encoding_pypy.py
-${PLIST.py2x}${PYSITELIB}/pylint/test/functional/unknown_encoding_pypy.rc
-${PLIST.py2x}${PYSITELIB}/pylint/test/functional/unknown_encoding_pypy.txt

cvs diff -r1.4 -r1.5 pkgsrc/devel/py-pylint/distinfo (expand / switch to context diff)
--- pkgsrc/devel/py-pylint/distinfo 2016/07/12 09:32:14 1.4
+++ pkgsrc/devel/py-pylint/distinfo 2017/03/01 13:08:43 1.5
@@ -1,6 +1,8 @@
-$NetBSD: distinfo,v 1.4 2016/07/12 09:32:14 wiz Exp $
+$NetBSD: distinfo,v 1.5 2017/03/01 13:08:43 fhajny Exp $
 
-SHA1 (pylint-1.6.1.tar.gz) = 91ece9e76ba247dc2c255605853041a855c0fe78
+SHA1 (pylint-1.6.5.tar.gz) = a84a0432d01010de6a5b3538d89637e6ad05fac7
-RMD160 (pylint-1.6.1.tar.gz) = a0b35f56386860b6a47cf8111896ec8239415039
+RMD160 (pylint-1.6.5.tar.gz) = c5728b08c586708ddfadce270710fd924db644e5
-SHA512 (pylint-1.6.1.tar.gz) = 1d8b787c1ae323f8849057bdbca54240999307ac44fbddb9b45c96381f06f961ab3429be2843a2d3d844e3a981d52350bd54eee8ca36e888412466498ae6cb16
+SHA512 (pylint-1.6.5.tar.gz) = 2fac352dc752b37f1ce4f7fefe5afbbc880d7e6c38f164d1c50734716af1dd6fe31f7d41e145a8256837d5a63b1989efec40c169fc14840cf8eb4e18d9bb2410
-Size (pylint-1.6.1.tar.gz) = 441506 bytes
+Size (pylint-1.6.5.tar.gz) = 465578 bytes
+SHA1 (patch-pylint_____pkginfo____.py) = 4e894db2fe068b2bff9a4787a685d16a46493521
+SHA1 (patch-setup.py) = 0102bf145ee82b99ee9ae0cfcf06db2e35882fd5

File Added: pkgsrc/devel/py-pylint/patches/Attic/patch-pylint_____pkginfo____.py
$NetBSD: patch-pylint_____pkginfo____.py,v 1.1 2017/03/01 13:08:44 fhajny Exp $

Add PYVERSSUFFIX to scripts.

--- pylint/__pkginfo__.py.orig	2017-01-22 14:06:23.000000000 +0000
+++ pylint/__pkginfo__.py
@@ -19,7 +19,7 @@
 from __future__ import absolute_import
 
 from os.path import join
-
+import sys
 
 modname = distname = 'pylint'
 
@@ -76,7 +76,7 @@ long_desc = """\
  Pylint is shipped with "pylint-gui", "pyreverse" (UML diagram generator)
  and "symilar" (an independent similarities checker)."""
 
-scripts = [join('bin', filename)
+scripts = [join('bin', filename + sys.version[0:3])
            for filename in ('pylint', 'pylint-gui', "symilar", "epylint",
                             "pyreverse")]
 

File Added: pkgsrc/devel/py-pylint/patches/Attic/patch-setup.py
$NetBSD: patch-setup.py,v 1.1 2017/03/01 13:08:44 fhajny Exp $

Add PYVERSSUFFIX to scripts.

--- setup.py.orig	2017-01-22 13:12:37.000000000 +0000
+++ setup.py
@@ -140,11 +140,11 @@ def install(**kwargs):
             kwargs['install_requires'] = install_requires
             kwargs['dependency_links'] = dependency_links
         kwargs['entry_points'] = {'console_scripts': [
-            'pylint = pylint:run_pylint',
-            'pylint-gui = pylint:run_pylint_gui',
-            'epylint = pylint:run_epylint',
-            'pyreverse = pylint:run_pyreverse',
-            'symilar = pylint:run_symilar',
+            'pylint' + sys.version[0:3] + ' = pylint:run_pylint',
+            'pylint-gui' + sys.version[0:3] + ' = pylint:run_pylint_gui',
+            'epylint' + sys.version[0:3] + ' = pylint:run_epylint',
+            'pyreverse' + sys.version[0:3] + ' = pylint:run_pyreverse',
+            'symilar' + sys.version[0:3] + ' = pylint:run_symilar',
         ]}
     kwargs['packages'] = packages
     cmdclass = {'install_lib': MyInstallLib,