summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-python/mypy')
-rw-r--r--dev-python/mypy/Manifest1
-rw-r--r--dev-python/mypy/files/mypy-0.782-conftest.patch24
-rw-r--r--dev-python/mypy/files/mypy-0.782-py39-fixes.patch138
-rw-r--r--dev-python/mypy/files/mypy-0.782-pytest-6.patch210
-rw-r--r--dev-python/mypy/mypy-0.782.ebuild58
5 files changed, 0 insertions, 431 deletions
diff --git a/dev-python/mypy/Manifest b/dev-python/mypy/Manifest
index 75ba045782b8..c0fe8427dd14 100644
--- a/dev-python/mypy/Manifest
+++ b/dev-python/mypy/Manifest
@@ -1,3 +1,2 @@
-DIST mypy-0.782.tar.gz 2529814 BLAKE2B c75771fb40524c2c8675236eaaddd6e39d13b4fd4f6f15f279b2e0be75eb0630987cb90f31bd7c65c4a322de4915d3a260e8f6f375b49157fea4b6362316f333 SHA512 f94433f79ea76b53ebb70589ca04ba3f39847050f73cf6deac00a3db13d742613a8ecb1a11fb84a878458025c6776b236b074e93e577c1b597e31d1300974767
DIST mypy-0.790.tar.gz 2082487 BLAKE2B f8efcb701b4b7533306948721968c9a01ab6c6e56ec99fe6c36e35aca50b52f29f518aee2268a628539a372b8024094ef2d4d87da580b4dd667f41133351596e SHA512 be670456bb64cd197bb6a73832b7e0fd6439ae4af128212328a41cd93d9f644a82e79ffb05bf4695e99bd9788244a24916bf765cf30a6f162cf3b471f45c25b8
DIST mypy-typeshed-5be9c91.tar.gz 583006 BLAKE2B 08ab2b6d479ccc66493524482051e825c65c0a94ea5cac8e56a8ea1dca85eda6104e4ed3188b7d5ce1ea99058019d66a21a7e270e3ad9df694be67ea1e6a7ce9 SHA512 2912bcf66e0f550941eb9c1f34979644857448a4bec478cfc0d662e9a401ade93ccfb2f57b5348504b4d6f0f23e576da609167f1ec3a0861414fc9c7dea80243
diff --git a/dev-python/mypy/files/mypy-0.782-conftest.patch b/dev-python/mypy/files/mypy-0.782-conftest.patch
deleted file mode 100644
index 08da1b1b690a..000000000000
--- a/dev-python/mypy/files/mypy-0.782-conftest.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-diff --git a/conftest.py b/conftest.py
-new file mode 100644
-index 00000000..83a6689f
---- /dev/null
-+++ b/conftest.py
-@@ -0,0 +1,18 @@
-+import os.path
-+
-+pytest_plugins = [
-+ 'mypy.test.data',
-+]
-+
-+
-+def pytest_configure(config):
-+ mypy_source_root = os.path.dirname(os.path.abspath(__file__))
-+ if os.getcwd() != mypy_source_root:
-+ os.chdir(mypy_source_root)
-+
-+
-+# This function name is special to pytest. See
-+# http://doc.pytest.org/en/latest/writing_plugins.html#initialization-command-line-and-configuration-hooks
-+def pytest_addoption(parser) -> None:
-+ parser.addoption('--bench', action='store_true', default=False,
-+ help='Enable the benchmark test runs')
diff --git a/dev-python/mypy/files/mypy-0.782-py39-fixes.patch b/dev-python/mypy/files/mypy-0.782-py39-fixes.patch
deleted file mode 100644
index 16c12daecae5..000000000000
--- a/dev-python/mypy/files/mypy-0.782-py39-fixes.patch
+++ /dev/null
@@ -1,138 +0,0 @@
-From 13ae58ffe8bedb7da9f4c657297f0d61e681d671 Mon Sep 17 00:00:00 2001
-From: Shantanu <12621235+hauntsaninja@users.noreply.github.com>
-Date: Sun, 30 Aug 2020 18:11:57 -0700
-Subject: [PATCH] mypy: get CI green for py39 (#9376)
-
-Due to Python 3.9's new parser, this has a different (and better) error
-message on Python 3.9.
-
-This is effectively a test of typed_ast / ast, so I don't think it
-matters too much. I'm happy to alternatively just get rid of the test
-altogether, or if people feel strongly, come up with a way to run the
-test when run with older Pythons.
-
-Co-authored-by: hauntsaninja <>
----
- .travis.yml | 3 ---
- mypy/test/testcheck.py | 2 ++
- test-data/unit/check-kwargs.test | 7 -------
- test-data/unit/check-python39.test | 9 +++++++++
- 4 files changed, 11 insertions(+), 10 deletions(-)
- create mode 100644 test-data/unit/check-python39.test
-
-diff --git a/mypy/test/testcheck.py b/mypy/test/testcheck.py
-index 49a85861b6..39a35c7280 100644
---- a/mypy/test/testcheck.py
-+++ b/mypy/test/testcheck.py
-@@ -94,6 +94,8 @@
- # Tests that use Python 3.8-only AST features (like expression-scoped ignores):
- if sys.version_info >= (3, 8):
- typecheck_files.append('check-python38.test')
-+if sys.version_info >= (3, 9):
-+ typecheck_files.append('check-python39.test')
-
- # Special tests for platforms with case-insensitive filesystems.
- if sys.platform in ('darwin', 'win32'):
-diff --git a/test-data/unit/check-kwargs.test b/test-data/unit/check-kwargs.test
-index 1dd450caae..a587be3e06 100644
---- a/test-data/unit/check-kwargs.test
-+++ b/test-data/unit/check-kwargs.test
-@@ -53,13 +53,6 @@ f(b=[], a=A())
- class A: pass
- [builtins fixtures/list.pyi]
-
--[case testGivingSameKeywordArgumentTwice]
--import typing
--def f(a: 'A', b: 'B') -> None: pass
--f(a=A(), b=B(), a=A()) # E: keyword argument repeated
--class A: pass
--class B: pass
--
- [case testGivingArgumentAsPositionalAndKeywordArg]
- import typing
- def f(a: 'A', b: 'B' = None) -> None: pass
-diff --git a/test-data/unit/check-python39.test b/test-data/unit/check-python39.test
-new file mode 100644
-index 0000000000..0e9ec683ae
---- /dev/null
-+++ b/test-data/unit/check-python39.test
-@@ -0,0 +1,9 @@
-+[case testGivingSameKeywordArgumentTwice]
-+# This test was originally in check-kwargs.test
-+# Python 3.9's new parser started producing a different error message here. Since this isn't the
-+# most important test, to deal with this we'll only run this test with Python 3.9 and later.
-+import typing
-+def f(a: 'A', b: 'B') -> None: pass
-+f(a=A(), b=B(), a=A()) # E: "f" gets multiple values for keyword argument "a"
-+class A: pass
-+class B: pass
-From da4430119255ac9205c96d54deb2e2ebed0ce8ce Mon Sep 17 00:00:00 2001
-From: Shantanu <12621235+hauntsaninja@users.noreply.github.com>
-Date: Fri, 31 Jul 2020 09:58:15 -0700
-Subject: [PATCH] mypyc: ignore deprecation (#9107)
-
-PyUnicode_AsUnicodeAndSize has been deprecated since 3.3
-
-Python 3.9 has compiler warnings for this deprecated function, and we
-compile with Werror, causing Python 3.9 builds to fail.
-
-I've just copied over the relevant deprecation ignoring code from the
-original getargs.c (including the TODO, but I can remove that)
-
-Co-authored-by: hauntsaninja <>
----
- mypyc/lib-rt/getargs.c | 27 +++++++++++++++++++++++++++
- 1 file changed, 27 insertions(+)
-
-diff --git a/mypyc/lib-rt/getargs.c b/mypyc/lib-rt/getargs.c
-index 32b387c8ab..e6b1a0c937 100644
---- a/mypyc/lib-rt/getargs.c
-+++ b/mypyc/lib-rt/getargs.c
-@@ -18,6 +18,29 @@
- * and is responsible for decrefing them.
- */
-
-+// These macro definitions are copied from pyport.h in Python 3.9 and later
-+// https://bugs.python.org/issue19569
-+#if defined(__clang__)
-+#define _Py_COMP_DIAG_PUSH _Pragma("clang diagnostic push")
-+#define _Py_COMP_DIAG_IGNORE_DEPR_DECLS \
-+ _Pragma("clang diagnostic ignored \"-Wdeprecated-declarations\"")
-+#define _Py_COMP_DIAG_POP _Pragma("clang diagnostic pop")
-+#elif defined(__GNUC__) \
-+ && ((__GNUC__ >= 5) || (__GNUC__ == 4) && (__GNUC_MINOR__ >= 6))
-+#define _Py_COMP_DIAG_PUSH _Pragma("GCC diagnostic push")
-+#define _Py_COMP_DIAG_IGNORE_DEPR_DECLS \
-+ _Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"")
-+#define _Py_COMP_DIAG_POP _Pragma("GCC diagnostic pop")
-+#elif defined(_MSC_VER)
-+#define _Py_COMP_DIAG_PUSH __pragma(warning(push))
-+#define _Py_COMP_DIAG_IGNORE_DEPR_DECLS __pragma(warning(disable: 4996))
-+#define _Py_COMP_DIAG_POP __pragma(warning(pop))
-+#else
-+#define _Py_COMP_DIAG_PUSH
-+#define _Py_COMP_DIAG_IGNORE_DEPR_DECLS
-+#define _Py_COMP_DIAG_POP
-+#endif
-+
- #include "Python.h"
- #include "pythonsupport.h"
-
-@@ -756,6 +779,9 @@ convertsimple(PyObject *arg, const char **p_format, va_list *p_va, int flags,
- case 'u': /* raw unicode buffer (Py_UNICODE *) */
- case 'Z': /* raw unicode buffer or None */
- {
-+ // TODO: Raise DeprecationWarning
-+_Py_COMP_DIAG_PUSH
-+_Py_COMP_DIAG_IGNORE_DEPR_DECLS
- Py_UNICODE **p = va_arg(*p_va, Py_UNICODE **);
-
- if (*format == '#') {
-@@ -795,6 +821,7 @@ convertsimple(PyObject *arg, const char **p_format, va_list *p_va, int flags,
- arg, msgbuf, bufsize);
- }
- break;
-+_Py_COMP_DIAG_POP
- }
-
- case 'e': {/* encoded string */
diff --git a/dev-python/mypy/files/mypy-0.782-pytest-6.patch b/dev-python/mypy/files/mypy-0.782-pytest-6.patch
deleted file mode 100644
index 0252d1138807..000000000000
--- a/dev-python/mypy/files/mypy-0.782-pytest-6.patch
+++ /dev/null
@@ -1,210 +0,0 @@
-From 3e77959eacf3d445a0cb4db5a4bc6dcf606fc040 Mon Sep 17 00:00:00 2001
-From: Lawrence Chan <llchan@users.noreply.github.com>
-Date: Tue, 4 Aug 2020 18:14:55 -0500
-Subject: [PATCH] Use pytest Node.from_parent if available (#9263)
-
-* Use pytest Node.from_parent if available
-
-* Use pytest Node.from_parent unconditionally (requires pytest 5.4+)
-
-* Bump pytest test requirements
-
-* Require pytest 6.0 and remove unused type ignores
-
-* Make flake8 happy
----
- mypy/test/data.py | 37 ++++++++++++++++++++++--------------
- mypy/test/helpers.py | 2 +-
- mypy/test/testfinegrained.py | 2 +-
- mypy/test/testipc.py | 2 +-
- mypy/test/testparse.py | 2 +-
- mypy/test/testpep561.py | 2 +-
- mypy/test/testpythoneval.py | 2 +-
- mypyc/test/testutil.py | 2 +-
- pytest.ini | 3 +--
- test-requirements.txt | 9 ++++-----
- 10 files changed, 35 insertions(+), 28 deletions(-)
-
-diff --git a/mypy/test/data.py b/mypy/test/data.py
-index 5484fd99e9..a4f2d798b1 100644
---- a/mypy/test/data.py
-+++ b/mypy/test/data.py
-@@ -9,7 +9,7 @@
- from abc import abstractmethod
- import sys
-
--import pytest # type: ignore # no pytest in typeshed
-+import pytest
- from typing import List, Tuple, Set, Optional, Iterator, Any, Dict, NamedTuple, Union
-
- from mypy.test.config import test_data_prefix, test_temp_dir, PREFIX
-@@ -160,9 +160,12 @@ def parse_test_case(case: 'DataDrivenTestCase') -> None:
- case.expected_fine_grained_targets = targets
-
-
--class DataDrivenTestCase(pytest.Item): # type: ignore # inheriting from Any
-+class DataDrivenTestCase(pytest.Item):
- """Holds parsed data-driven test cases, and handles directory setup and teardown."""
-
-+ # Override parent member type
-+ parent = None # type: DataSuiteCollector
-+
- input = None # type: List[str]
- output = None # type: List[str] # Output for the first pass
- output2 = None # type: Dict[int, List[str]] # Output for runs 2+, indexed by run number
-@@ -266,7 +269,7 @@ def repr_failure(self, excinfo: Any, style: Optional[Any] = None) -> str:
- # call exit() and they already print out a stack trace.
- excrepr = excinfo.exconly()
- else:
-- self.parent._prunetraceback(excinfo)
-+ self.parent._prunetraceback(excinfo) # type: ignore[no-untyped-call]
- excrepr = excinfo.getrepr(style='short')
-
- return "data: {}:{}:\n{}".format(self.file, self.line, excrepr)
-@@ -510,7 +513,9 @@ def pytest_pycollect_makeitem(collector: Any, name: str,
- # Non-None result means this obj is a test case.
- # The collect method of the returned DataSuiteCollector instance will be called later,
- # with self.obj being obj.
-- return DataSuiteCollector(name, parent=collector)
-+ return DataSuiteCollector.from_parent( # type: ignore[no-untyped-call]
-+ parent=collector, name=name
-+ )
- return None
-
-
-@@ -535,19 +540,23 @@ def split_test_cases(parent: 'DataSuiteCollector', suite: 'DataSuite',
- for i in range(1, len(cases), 6):
- name, writescache, only_when, platform_flag, skip, data = cases[i:i + 6]
- platform = platform_flag[1:] if platform_flag else None
-- yield DataDrivenTestCase(parent, suite, file,
-- name=add_test_name_suffix(name, suite.test_name_suffix),
-- writescache=bool(writescache),
-- only_when=only_when,
-- platform=platform,
-- skip=bool(skip),
-- data=data,
-- line=line_no)
-+ yield DataDrivenTestCase.from_parent(
-+ parent=parent,
-+ suite=suite,
-+ file=file,
-+ name=add_test_name_suffix(name, suite.test_name_suffix),
-+ writescache=bool(writescache),
-+ only_when=only_when,
-+ platform=platform,
-+ skip=bool(skip),
-+ data=data,
-+ line=line_no,
-+ )
- line_no += data.count('\n') + 1
-
-
--class DataSuiteCollector(pytest.Class): # type: ignore # inheriting from Any
-- def collect(self) -> Iterator[pytest.Item]: # type: ignore
-+class DataSuiteCollector(pytest.Class):
-+ def collect(self) -> Iterator[pytest.Item]:
- """Called by pytest on each of the object returned from pytest_pycollect_makeitem"""
-
- # obj is the object for which pytest_pycollect_makeitem returned self.
-diff --git a/mypy/test/helpers.py b/mypy/test/helpers.py
-index 46c01114c4..91c5ff6ab2 100644
---- a/mypy/test/helpers.py
-+++ b/mypy/test/helpers.py
-@@ -10,7 +10,7 @@
- from mypy import defaults
- import mypy.api as api
-
--import pytest # type: ignore # no pytest in typeshed
-+import pytest
-
- # Exporting Suite as alias to TestCase for backwards compatibility
- # TODO: avoid aliasing - import and subclass TestCase directly
-diff --git a/mypy/test/testfinegrained.py b/mypy/test/testfinegrained.py
-index 596391da44..d4ed18cab0 100644
---- a/mypy/test/testfinegrained.py
-+++ b/mypy/test/testfinegrained.py
-@@ -35,7 +35,7 @@
- from mypy.config_parser import parse_config_file
- from mypy.find_sources import create_source_list
-
--import pytest # type: ignore # no pytest in typeshed
-+import pytest
-
- # Set to True to perform (somewhat expensive) checks for duplicate AST nodes after merge
- CHECK_CONSISTENCY = False
-diff --git a/mypy/test/testipc.py b/mypy/test/testipc.py
-index 1d4829d561..7dd829a590 100644
---- a/mypy/test/testipc.py
-+++ b/mypy/test/testipc.py
-@@ -3,7 +3,7 @@
-
- from mypy.ipc import IPCClient, IPCServer
-
--import pytest # type: ignore
-+import pytest
- import sys
- import time
-
-diff --git a/mypy/test/testparse.py b/mypy/test/testparse.py
-index e990a403a5..e9ff6839bc 100644
---- a/mypy/test/testparse.py
-+++ b/mypy/test/testparse.py
-@@ -2,7 +2,7 @@
-
- import sys
-
--from pytest import skip # type: ignore[import]
-+from pytest import skip
-
- from mypy import defaults
- from mypy.test.helpers import assert_string_arrays_equal, parse_options
-diff --git a/mypy/test/testpep561.py b/mypy/test/testpep561.py
-index a8eabd7702..aadf01ae5f 100644
---- a/mypy/test/testpep561.py
-+++ b/mypy/test/testpep561.py
-@@ -1,6 +1,6 @@
- from contextlib import contextmanager
- import os
--import pytest # type: ignore
-+import pytest
- import re
- import subprocess
- from subprocess import PIPE
-diff --git a/mypy/test/testpythoneval.py b/mypy/test/testpythoneval.py
-index 7586a3854e..e7e9f16183 100644
---- a/mypy/test/testpythoneval.py
-+++ b/mypy/test/testpythoneval.py
-@@ -18,7 +18,7 @@
- import sys
- from tempfile import TemporaryDirectory
-
--import pytest # type: ignore # no pytest in typeshed
-+import pytest
-
- from typing import List
-
-diff --git a/mypyc/test/testutil.py b/mypyc/test/testutil.py
-index 18ab39a103..c1ce8626ba 100644
---- a/mypyc/test/testutil.py
-+++ b/mypyc/test/testutil.py
-@@ -7,7 +7,7 @@
- import shutil
- from typing import List, Callable, Iterator, Optional, Tuple
-
--import pytest # type: ignore[import]
-+import pytest
-
- from mypy import build
- from mypy.errors import CompileError
-diff --git a/pytest.ini b/pytest.ini
-index 81586a2370..ed76809091 100644
---- a/pytest.ini
-+++ b/pytest.ini
-@@ -1,6 +1,5 @@
- [pytest]
--# testpaths is new in 2.8
--minversion = 2.8
-+minversion = 6.0.0
-
- testpaths = mypy/test mypyc/test
-
diff --git a/dev-python/mypy/mypy-0.782.ebuild b/dev-python/mypy/mypy-0.782.ebuild
deleted file mode 100644
index c5290e4f5d94..000000000000
--- a/dev-python/mypy/mypy-0.782.ebuild
+++ /dev/null
@@ -1,58 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6..9} )
-DISTUTILS_USE_SETUPTOOLS=rdepend
-
-inherit distutils-r1
-
-DESCRIPTION="Optional static typing for Python"
-HOMEPAGE="http://www.mypy-lang.org/"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 arm64 ~ia64 x86"
-
-# stubgen collides with this package: https://bugs.gentoo.org/585594
-RDEPEND="
- !dev-util/stubgen
- >=dev-python/psutil-4[${PYTHON_USEDEP}]
- >=dev-python/typed-ast-1.4.0[${PYTHON_USEDEP}]
- <dev-python/typed-ast-1.5.0[${PYTHON_USEDEP}]
- >=dev-python/typing-extensions-3.7.4[${PYTHON_USEDEP}]
- >=dev-python/mypy_extensions-0.4.3[${PYTHON_USEDEP}]
- <dev-python/mypy_extensions-0.5.0[${PYTHON_USEDEP}]
-"
-BDEPEND="
- test? (
- >=dev-python/attrs-18.0[${PYTHON_USEDEP}]
- >=dev-python/lxml-4.4.0[${PYTHON_USEDEP}]
- >=dev-python/pytest-6.0.0[${PYTHON_USEDEP}]
- >=dev-python/pytest-xdist-1.18[${PYTHON_USEDEP}]
- >=dev-python/py-1.5.2[${PYTHON_USEDEP}]
- >=dev-python/virtualenv-16.0.0[${PYTHON_USEDEP}]
- )
-"
-
-PATCHES=(
- # The first two patches are backports from upstream commits
- # They should be removed during the next bump
- "${FILESDIR}/${P}-py39-fixes.patch"
- "${FILESDIR}/${P}-pytest-6.patch"
- # Needed to collect all tests
- # https://github.com/python/mypy/pull/9543
- "${FILESDIR}/${P}-conftest.patch"
-)
-
-distutils_enable_sphinx docs/source dev-python/sphinx_rtd_theme
-distutils_enable_tests pytest
-
-python_prepare_all() {
- # https://github.com/python/mypy/commit/2f291f2e312dd3bf2c05c45da0b032b240bfd7ab
- # Avoid a big patch by deleting the file manually
- rm test-data/samples/crawl.py || die
- distutils-r1_python_prepare_all
-}