From 690870048a59f4bdef68a49b8f60715ac02a4b37 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Tue, 13 Sep 2022 17:14:06 +0200 Subject: [PATCH 1/2] python311Packages.mypy_extensions: Skip failing test --- .../python-modules/mypy/extensions.nix | 21 +++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/pkgs/development/python-modules/mypy/extensions.nix b/pkgs/development/python-modules/mypy/extensions.nix index 37257efe5edc..ba0a079fee1d 100644 --- a/pkgs/development/python-modules/mypy/extensions.nix +++ b/pkgs/development/python-modules/mypy/extensions.nix @@ -2,7 +2,8 @@ , fetchFromGitHub , buildPythonPackage , typing -, unittestCheckHook +, pytestCheckHook +, pythonAtLeast , pythonOlder }: @@ -19,11 +20,23 @@ buildPythonPackage rec { propagatedBuildInputs = lib.optional (pythonOlder "3.5") typing; - checkInputs = [ unittestCheckHook ]; + # make the testsuite run with pytest, so we can disable individual tests + checkInputs = [ + pytestCheckHook + ]; - unittestFlagsArray = [ "tests" ]; + pytestFlagsArray = [ + "tests/testextensions.py" + ]; - pythonImportsCheck = [ "mypy_extensions" ]; + disabledTests = lib.optionals (pythonAtLeast "3.11") [ + # https://github.com/python/mypy_extensions/issues/24 + "test_typeddict_errors" + ]; + + pythonImportsCheck = [ + "mypy_extensions" + ]; meta = with lib; { description = "Experimental type system extensions for programs checked with the mypy typechecker"; From 8fc29621b7ff0f85ee1b6790f926bec066eb8d2c Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Tue, 13 Sep 2022 18:20:15 +0200 Subject: [PATCH 2/2] python3Packages.mypy: 0.961 -> 0.971 https://mypy-lang.blogspot.com/2022/07/mypy-0971-released.html --- .../python-modules/mypy/default.nix | 44 +++++++++++-------- 1 file changed, 26 insertions(+), 18 deletions(-) diff --git a/pkgs/development/python-modules/mypy/default.nix b/pkgs/development/python-modules/mypy/default.nix index 7d2df7e316ba..a517427d8033 100644 --- a/pkgs/development/python-modules/mypy/default.nix +++ b/pkgs/development/python-modules/mypy/default.nix @@ -1,50 +1,58 @@ { lib , stdenv , fetchFromGitHub -, fetchpatch +, attrs , buildPythonPackage +, filelock +, lxml , mypy-extensions +, psutil +, py +, pytest-forked +, pytest-xdist +, pytestCheckHook , python , pythonOlder +, six , typed-ast , typing-extensions , tomli , types-typed-ast +, virtualenv }: buildPythonPackage rec { pname = "mypy"; - version = "0.961"; - disabled = pythonOlder "3.6"; + version = "0.971"; + format = "pyproject"; + disabled = pythonOlder "3.7"; src = fetchFromGitHub { owner = "python"; repo = "mypy"; - rev = "v${version}"; - hash = "sha256-K6p73+/SeWniMSD/mP09qwqFOBr/Pqohl+PaTDVpvZI="; + rev = "refs/tags/v${version}"; + hash = "sha256-J1lUnJco9rLYgFpJkfujGfVq1CfC4pdvvDzoan3jGkU="; }; - patches = [ - # FIXME: Remove patch after upstream has decided the proper solution. - # https://github.com/python/mypy/pull/11143 - (fetchpatch { - url = "https://github.com/python/mypy/commit/2004ae023b9d3628d9f09886cbbc20868aee8554.patch"; - hash = "sha256-y+tXvgyiECO5+66YLvaje8Bz5iPvfWNIBJcsnZ2nOdI="; - }) - ]; - - buildInputs = [ + nativeBuildInputs = [ types-typed-ast ]; propagatedBuildInputs = [ mypy-extensions - tomli - typed-ast typing-extensions + ] ++ lib.optionals (pythonOlder "3.11") [ + tomli + ] ++ lib.optionals (pythonOlder "3.8") [ + typed-ast ]; - # Tests not included in pip package. + passthru.optional-dependencies = { + dmypy = [ psutil ]; + reports = [ lxml ]; + }; + + # TODO: enable tests doCheck = false; pythonImportsCheck = [