From 8376ef56580626e9c0f796d5b85b53a0a1c7d5f5 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sat, 14 Jul 2018 21:03:06 +0100 Subject: gentoo resync : 14.07.2018 --- dev-python/pyflakes/Manifest | 10 + .../pyflakes/files/1.0.0-fix-pypy-tests.patch | 282 +++++++++++++++++++++ dev-python/pyflakes/metadata.xml | 20 ++ dev-python/pyflakes/pyflakes-0.8.1.ebuild | 26 ++ dev-python/pyflakes/pyflakes-1.0.0.ebuild | 25 ++ dev-python/pyflakes/pyflakes-1.2.3.ebuild | 23 ++ dev-python/pyflakes/pyflakes-1.6.0.ebuild | 22 ++ 7 files changed, 408 insertions(+) create mode 100644 dev-python/pyflakes/Manifest create mode 100644 dev-python/pyflakes/files/1.0.0-fix-pypy-tests.patch create mode 100644 dev-python/pyflakes/metadata.xml create mode 100644 dev-python/pyflakes/pyflakes-0.8.1.ebuild create mode 100644 dev-python/pyflakes/pyflakes-1.0.0.ebuild create mode 100644 dev-python/pyflakes/pyflakes-1.2.3.ebuild create mode 100644 dev-python/pyflakes/pyflakes-1.6.0.ebuild (limited to 'dev-python/pyflakes') diff --git a/dev-python/pyflakes/Manifest b/dev-python/pyflakes/Manifest new file mode 100644 index 000000000000..8fd0857c50ab --- /dev/null +++ b/dev-python/pyflakes/Manifest @@ -0,0 +1,10 @@ +AUX 1.0.0-fix-pypy-tests.patch 9242 BLAKE2B 3a3c015dab48d3c671189ad656b6f208812b4ffa8805d9a27d581167c1b36ff0cc6219e0ed6688c21d8ec25d247b3c6fa7cbe92d06889b60eca1bd7e40c148af SHA512 4772c32ea90e163030953f3ade2bd2434a10cf0e3c9234f4acaf596a44a812581ba92ef1498998566a7bf78e1bb8c7051260ebf8aca4ca2cd3a04e21e307bbfc +DIST pyflakes-0.8.1.tar.gz 32981 BLAKE2B a4d02202e5cc9e1174d9296834edae7bc2c3d66e0081979438ceaa80dab9dcf41710b23015f8fcabea062d7dbb249ffc7521657d0860fd115cf58b441721b778 SHA512 b9843637891f3e82a8430121395ceb4ec5df48b5ba73b96a307ebcb4a393e8cebee1681e094ee1f71a85b58bd2f32562b78fbd61d3fa85634f3ac448b1244637 +DIST pyflakes-1.0.0.tar.gz 35365 BLAKE2B 7b0f676fcb1f77f85a4fa85f02dd26f181f7d8085ef3226cd06b3f1d33b9b235384c7da835b07b8128ac5ba56e8b5e4f0cb5736b25e18bd50c76c6ace9491368 SHA512 89a9ee2e5be87d32d5c259c0cb88bbeadb96d27a3bc5eb3cf6f86afa51907ea01107a5336decbf003679b7de65ed9a16d7fbf55a457e0c9bbb1b53500f719bcb +DIST pyflakes-1.2.3.tar.gz 44776 BLAKE2B 9effec80b58ebac140a6a8b2f5f31a32c4fdf9e842d3fbd2858a3e74f33920925f10b6377300d962d1e2b1931efe8bb5318b97ef51c99aeb003a3434d08810db SHA512 e0b49b4cd388b39c4f4f5ab836520cfc2ee940ce24de084fbeca0a2f13beca23b3ca89741e297a6f450d211ec27ebd91a7d23a80105e50d14960a3888d7693f2 +DIST pyflakes-1.6.0.tar.gz 48184 BLAKE2B a5762c23521aa68ea92537fbc2903bb7af64faf8d1fafc97e48e003f529f8c16ae8dca444c9122fc5c50618fec7120b2f2b2e6682e1d86e502ab49096cb42bfc SHA512 7e9c2aad6ebed638a1354cef51c7e1f68b25e59f8caf4694997a9afecd7cd8baa629a9363297ac0d961430f007fd22dcae7dae1bcbd7838a3b5d4285063bc7c5 +EBUILD pyflakes-0.8.1.ebuild 733 BLAKE2B 88b338be8ff4743e188990da8e456ab7adf8bfa40fa7c8f467214fa42ef758e92ccbc0973983e003e53ca68fde27a2193e9cb7fb0c4e686d53c60add16c13467 SHA512 0d0ea37fd024b21aa38065b0d682664d33da561f06a6797c27b3a3caf8fc090e9d05c07ec291fb65e6f471530bcec7eb2144b4f79dfa465b9a28a5701d6fb87b +EBUILD pyflakes-1.0.0.ebuild 764 BLAKE2B 81c0ec78d4e7db2587867db1c605a490612155bacb4eaf43c89d23d4197fb73816d9971b1542f53bdb5f37d77bcf0a1d9da3b1b516bc9308351b7b74895cc53e SHA512 bd4cd95c8a301a3fefe8d40b449418959c013bacd868db124b2edfe42b718466fc8775c19935d131866b2fc13f76917ed48027cee6e58bd171932cef4c1910e4 +EBUILD pyflakes-1.2.3.ebuild 706 BLAKE2B c19ab4a3313f35ac831055dcc0ce04e42010bf994aae67e962ef958a5552d37ce65fc5d49c159382ccfc71669392d63a5223055be6a1ba9222ab4f9bc66b41c9 SHA512 14e083390f0369ee84183348f53943d0c34fce941d457eec707cf72b5846355f1648237b01c609ffd02daf1cad991ef7c7d55d0d0795e187c33f29efa601be9f +EBUILD pyflakes-1.6.0.ebuild 719 BLAKE2B 12e8081864a189db55053eaeebf11da4dd73f589ceb672f884219960ce97d906b93f1cbc178e966b29e486ac524fbf84d6dd6ed5838c344a3c911f3c928bd961 SHA512 69e73ec2b4d8856db0d03d36e6488dff3814bba1bfcc40eddc2924cc7307f2961cc4ffff49c9d79d84533d1846c3912c7455718a4b56a55a016eba18e868fbb5 +MISC metadata.xml 738 BLAKE2B 5c1e0cb1452f9aebbefe7edd7a054cad85373344f834fb88ea37414ef69b12a36f774e6da05e73b898d6300a56189ec80891eca7a3c225c95b0fc8755daf18b6 SHA512 6ac45c3c5d1fd3eeae5c8ad9950a2c97ef31d0bb72e6034a1f8b75d2a28e997660df20719431ee138a76544942bc20d609fb6e4a26a77f0ef30f912c6d2c0257 diff --git a/dev-python/pyflakes/files/1.0.0-fix-pypy-tests.patch b/dev-python/pyflakes/files/1.0.0-fix-pypy-tests.patch new file mode 100644 index 000000000000..41d1fa8ca86d --- /dev/null +++ b/dev-python/pyflakes/files/1.0.0-fix-pypy-tests.patch @@ -0,0 +1,282 @@ +#https://github.com/jayvdb/pyflakes/commit/3088ffbd6256521e0213b361bc2294c1e218e6fb +diff --git a/pyflakes/api.py b/pyflakes/api.py #index 3bc2330..2a46a0d 100644 +--- a/pyflakes/api.py ++++ b/pyflakes/api.py +@@ -41,6 +41,18 @@ def check(codeString, filename, reporter=None): + + (lineno, offset, text) = value.lineno, value.offset, value.text + ++ if checker.PYPY: ++ if text is None: ++ lines = codeString.splitlines() ++ if len(lines) >= lineno: ++ text = lines[lineno - 1] ++ if sys.version_info >= (3, ) and isinstance(text, bytes): ++ try: ++ text = text.decode('ascii') ++ except UnicodeDecodeError: ++ text = None ++ offset -= 1 ++ + # If there's an encoding problem with the file, the text is None. + if text is None: + # Avoid using msg, since for the only known case, it contains a +diff --git a/pyflakes/checker.py b/pyflakes/checker.py +index 753fa9b..f538d3f 100644 +--- a/pyflakes/checker.py ++++ b/pyflakes/checker.py +@@ -11,6 +11,12 @@ + PY2 = sys.version_info < (3, 0) + PY32 = sys.version_info < (3, 3) # Python 2.5 to 3.2 + PY33 = sys.version_info < (3, 4) # Python 2.5 to 3.3 ++try: ++ sys.pypy_version_info ++ PYPY = True ++except AttributeError: ++ PYPY = False ++ + builtin_vars = dir(__import__('__builtin__' if PY2 else 'builtins')) + + try: +@@ -594,8 +600,13 @@ def getDocstring(self, node): + node = node.value + if not isinstance(node, ast.Str): + return (None, None) +- # Computed incorrectly if the docstring has backslash +- doctest_lineno = node.lineno - node.s.count('\n') - 1 ++ ++ if PYPY: ++ doctest_lineno = node.lineno - 1 ++ else: ++ # Computed incorrectly if the docstring has backslash ++ doctest_lineno = node.lineno - node.s.count('\n') - 1 ++ + return (node.s, doctest_lineno) + + def handleNode(self, node, parent): +@@ -642,6 +653,8 @@ def handleDoctests(self, node): + tree = compile(example.source, "", "exec", ast.PyCF_ONLY_AST) + except SyntaxError: + e = sys.exc_info()[1] ++ if PYPY: ++ e.offset += 1 + position = (node_lineno + example.lineno + e.lineno, + example.indent + 4 + (e.offset or 0)) + self.report(messages.DoctestSyntaxError, node, position) +diff --git a/pyflakes/test/test_api.py b/pyflakes/test/test_api.py +index 34a59bc..d2a5036 100644 +--- a/pyflakes/test/test_api.py ++++ b/pyflakes/test/test_api.py +@@ -23,6 +23,14 @@ + from io import StringIO + unichr = chr + ++try: ++ sys.pypy_version_info ++ PYPY = True ++except AttributeError: ++ PYPY = False ++ ++ERROR_HAS_COL_NUM = ERROR_HAS_LAST_LINE = sys.version_info >= (3, 2) or PYPY ++ + + def withStderrTo(stderr, f, *args, **kwargs): + """ +@@ -312,18 +320,25 @@ def evaluate(source): + evaluate(source) + except SyntaxError: + e = sys.exc_info()[1] +- self.assertTrue(e.text.count('\n') > 1) ++ if not PYPY: ++ self.assertTrue(e.text.count('\n') > 1) + else: + self.fail() + + sourcePath = self.makeTempFile(source) ++ ++ if PYPY: ++ message = 'EOF while scanning triple-quoted string literal' ++ else: ++ message = 'invalid syntax' ++ + self.assertHasErrors( + sourcePath, + ["""\ +-%s:8:11: invalid syntax ++%s:8:11: %s + '''quux''' + ^ +-""" % (sourcePath,)]) ++""" % (sourcePath, message)]) + + def test_eofSyntaxError(self): + """ +@@ -331,13 +346,22 @@ def test_eofSyntaxError(self): + syntax error reflects the cause for the syntax error. + """ + sourcePath = self.makeTempFile("def foo(") +- self.assertHasErrors( +- sourcePath, +- ["""\ ++ if PYPY: ++ result = """\ ++%s:1:7: parenthesis is never closed ++def foo( ++ ^ ++""" % (sourcePath,) ++ else: ++ result = """\ + %s:1:9: unexpected EOF while parsing + def foo( + ^ +-""" % (sourcePath,)]) ++""" % (sourcePath,) ++ ++ self.assertHasErrors( ++ sourcePath, ++ [result]) + + def test_eofSyntaxErrorWithTab(self): + """ +@@ -345,13 +369,16 @@ def test_eofSyntaxErrorWithTab(self): + syntax error reflects the cause for the syntax error. + """ + sourcePath = self.makeTempFile("if True:\n\tfoo =") ++ column = 5 if PYPY else 7 ++ last_line = '\t ^' if PYPY else '\t ^' ++ + self.assertHasErrors( + sourcePath, + ["""\ +-%s:2:7: invalid syntax ++%s:2:%s: invalid syntax + \tfoo = +-\t ^ +-""" % (sourcePath,)]) ++%s ++""" % (sourcePath, column, last_line)]) + + def test_nonDefaultFollowsDefaultSyntaxError(self): + """ +@@ -364,8 +391,8 @@ def foo(bar=baz, bax): + pass + """ + sourcePath = self.makeTempFile(source) +- last_line = ' ^\n' if sys.version_info >= (3, 2) else '' +- column = '8:' if sys.version_info >= (3, 2) else '' ++ last_line = ' ^\n' if ERROR_HAS_LAST_LINE else '' ++ column = '8:' if ERROR_HAS_COL_NUM else '' + self.assertHasErrors( + sourcePath, + ["""\ +@@ -383,8 +410,8 @@ def test_nonKeywordAfterKeywordSyntaxError(self): + foo(bar=baz, bax) + """ + sourcePath = self.makeTempFile(source) +- last_line = ' ^\n' if sys.version_info >= (3, 2) else '' +- column = '13:' if sys.version_info >= (3, 2) else '' ++ last_line = ' ^\n' if ERROR_HAS_LAST_LINE else '' ++ column = '13:' if ERROR_HAS_COL_NUM or PYPY else '' + + if sys.version_info >= (3, 5): + message = 'positional argument follows keyword argument' +@@ -407,8 +434,15 @@ def test_invalidEscape(self): + sourcePath = self.makeTempFile(r"foo = '\xyz'") + if ver < (3,): + decoding_error = "%s: problem decoding source\n" % (sourcePath,) ++ elif PYPY: ++ # pypy3 only ++ decoding_error = """\ ++%s:1:6: %s: ('unicodeescape', b'\\\\xyz', 0, 2, 'truncated \\\\xXX escape') ++foo = '\\xyz' ++ ^ ++""" % (sourcePath, 'UnicodeDecodeError') + else: +- last_line = ' ^\n' if ver >= (3, 2) else '' ++ last_line = ' ^\n' if ERROR_HAS_LAST_LINE else '' + # Column has been "fixed" since 3.2.4 and 3.3.1 + col = 1 if ver >= (3, 3, 1) or ((3, 2, 4) <= ver < (3, 3)) else 2 + decoding_error = """\ +@@ -474,8 +508,21 @@ def test_misencodedFileUTF8(self): + x = "%s" + """ % SNOWMAN).encode('utf-8') + sourcePath = self.makeTempFile(source) ++ ++ if PYPY and sys.version_info < (3, ): ++ message = ('\'ascii\' codec can\'t decode byte 0xe2 ' ++ 'in position 21: ordinal not in range(128)') ++ result = """\ ++%s:0:0: %s ++x = "\xe2\x98\x83" ++ ^\n""" % (sourcePath, message) ++ ++ else: ++ message = 'problem decoding source' ++ result = "%s: problem decoding source\n" % (sourcePath,) ++ + self.assertHasErrors( +- sourcePath, ["%s: problem decoding source\n" % (sourcePath,)]) ++ sourcePath, [result]) + + def test_misencodedFileUTF16(self): + """ +diff --git a/pyflakes/test/test_doctests.py b/pyflakes/test/test_doctests.py +index f15acb8..6793da9 100644 +--- a/pyflakes/test/test_doctests.py ++++ b/pyflakes/test/test_doctests.py +@@ -1,3 +1,4 @@ ++import sys + import textwrap + + from pyflakes import messages as m +@@ -11,6 +12,12 @@ + from pyflakes.test.test_undefined_names import Test as TestUndefinedNames + from pyflakes.test.harness import TestCase, skip + ++try: ++ sys.pypy_version_info ++ PYPY = True ++except AttributeError: ++ PYPY = False ++ + + class _DoctestMixin(object): + +@@ -273,12 +280,22 @@ def doctest_stuff(): + exc = exceptions[0] + self.assertEqual(exc.lineno, 4) + self.assertEqual(exc.col, 26) ++ ++ # PyPy error column offset is 0, ++ # for the second and third line of the doctest ++ # i.e. at the beginning of the line + exc = exceptions[1] + self.assertEqual(exc.lineno, 5) +- self.assertEqual(exc.col, 16) ++ if PYPY: ++ self.assertEqual(exc.col, 13) ++ else: ++ self.assertEqual(exc.col, 16) + exc = exceptions[2] + self.assertEqual(exc.lineno, 6) +- self.assertEqual(exc.col, 18) ++ if PYPY: ++ self.assertEqual(exc.col, 13) ++ else: ++ self.assertEqual(exc.col, 18) + + def test_indentationErrorInDoctest(self): + exc = self.flakes(''' +@@ -289,7 +306,10 @@ def doctest_stuff(): + """ + ''', m.DoctestSyntaxError).messages[0] + self.assertEqual(exc.lineno, 5) +- self.assertEqual(exc.col, 16) ++ if PYPY: ++ self.assertEqual(exc.col, 13) ++ else: ++ self.assertEqual(exc.col, 16) + + def test_offsetWithMultiLineArgs(self): + (exc1, exc2) = self.flakes( + diff --git a/dev-python/pyflakes/metadata.xml b/dev-python/pyflakes/metadata.xml new file mode 100644 index 000000000000..e863869c3e50 --- /dev/null +++ b/dev-python/pyflakes/metadata.xml @@ -0,0 +1,20 @@ + + + + + python@gentoo.org + Python + + + PyFlakes is a Lint-like tool for Python, like PyChecker. It is focused + on identifying common errors quickly without executing Python code. + + Its primary advantage over PyChecker is that it is fast. You don't have + to sit around for minutes waiting for the checker to run; it runs on + most large projects in only a few seconds. + + + pyflakes + PyCQA/pyflakes + + diff --git a/dev-python/pyflakes/pyflakes-0.8.1.ebuild b/dev-python/pyflakes/pyflakes-0.8.1.ebuild new file mode 100644 index 000000000000..e746c0fade6a --- /dev/null +++ b/dev-python/pyflakes/pyflakes-0.8.1.ebuild @@ -0,0 +1,26 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=5 + +PYTHON_COMPAT=( python2_7 python3_{4,5,6} ) + +inherit distutils-r1 + +DESCRIPTION="Passive checker for Python programs" +HOMEPAGE="https://launchpad.net/pyflakes https://pypi.org/project/pyflakes/" +SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 sparc x86 ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +IUSE="" + +DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]" +RDEPEND="${DEPEND}" + +DOCS=(AUTHORS NEWS.txt README.rst) + +python_test() { + esetup.py test --quiet +} diff --git a/dev-python/pyflakes/pyflakes-1.0.0.ebuild b/dev-python/pyflakes/pyflakes-1.0.0.ebuild new file mode 100644 index 000000000000..47702137e1b6 --- /dev/null +++ b/dev-python/pyflakes/pyflakes-1.0.0.ebuild @@ -0,0 +1,25 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=5 +PYTHON_COMPAT=( python2_7 python3_{4,5,6} pypy ) + +inherit distutils-r1 + +DESCRIPTION="Passive checker for Python programs" +HOMEPAGE="https://launchpad.net/pyflakes https://pypi.org/project/pyflakes/" +SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +IUSE="" + +DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]" +RDEPEND="${DEPEND}" + +PATCHES=( "${FILESDIR}"/${PV}-fix-pypy-tests.patch ) + +python_test() { + esetup.py test --quiet +} diff --git a/dev-python/pyflakes/pyflakes-1.2.3.ebuild b/dev-python/pyflakes/pyflakes-1.2.3.ebuild new file mode 100644 index 000000000000..d63fb5820a01 --- /dev/null +++ b/dev-python/pyflakes/pyflakes-1.2.3.ebuild @@ -0,0 +1,23 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +PYTHON_COMPAT=( python2_7 python3_{4,5,6} pypy pypy3 ) + +inherit distutils-r1 + +DESCRIPTION="Passive checker for Python programs" +HOMEPAGE="https://launchpad.net/pyflakes https://pypi.org/project/pyflakes/" +SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="alpha amd64 arm arm64 hppa ia64 ppc ppc64 sparc x86 ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +IUSE="" + +DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]" +RDEPEND="${DEPEND}" + +python_test() { + esetup.py test --quiet +} diff --git a/dev-python/pyflakes/pyflakes-1.6.0.ebuild b/dev-python/pyflakes/pyflakes-1.6.0.ebuild new file mode 100644 index 000000000000..608ab744407e --- /dev/null +++ b/dev-python/pyflakes/pyflakes-1.6.0.ebuild @@ -0,0 +1,22 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +PYTHON_COMPAT=( python2_7 python3_{4,5,6} pypy pypy3 ) + +inherit distutils-r1 + +DESCRIPTION="Passive checker for Python programs" +HOMEPAGE="https://github.com/PyCQA/pyflakes https://pypi.org/project/pyflakes/" +SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 sparc x86 ~amd64-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" + +DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]" +RDEPEND="${DEPEND}" + +python_test() { + esetup.py test --quiet +} -- cgit v1.2.3