From 3fc09d64f80b263e358bf5a40275ce43eeb5a887 Mon Sep 17 00:00:00 2001 From: Pat Myron Date: Mon, 7 Dec 2020 12:35:25 -0800 Subject: [PATCH 01/13] testing Python 3.9 fixes https://github.com/aws-cloudformation/cloudformation-cli-python-plugin/issues/139 https://github.com/python/mypy/issues/8614 https://github.com/python/mypy/releases https://github.com/pre-commit/mirrors-mypy/releases --- .github/workflows/pr-ci.yml | 2 +- .pre-commit-config.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/pr-ci.yml b/.github/workflows/pr-ci.yml index 23e4e5b..010a21a 100644 --- a/.github/workflows/pr-ci.yml +++ b/.github/workflows/pr-ci.yml @@ -16,7 +16,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - python: [3.6, 3.7, 3.8] + python: [3.6, 3.7, 3.8, 3.9] steps: - uses: actions/checkout@v2 - name: Set up Python ${{ matrix.python }} diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 4047c5c..e9281d9 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -49,7 +49,7 @@ repos: - id: bandit files: ^(src|python)/ - repo: https://github.com/pre-commit/mirrors-mypy - rev: v0.711 + rev: v0.790 hooks: - id: mypy files: ^src/ From a488eea1a616db33e34e60e8d16296bde1066171 Mon Sep 17 00:00:00 2001 From: Pat Myron Date: Mon, 7 Dec 2020 12:44:21 -0800 Subject: [PATCH 02/13] removing unused ignore type comment src/cloudformation_cli_python_lib/recast.py:130: error: unused 'type: ignore' comment https://github.com/aws-cloudformation/cloudformation-cli-python-plugin/pull/145/checks?check_run_id=1513282646 --- src/cloudformation_cli_python_lib/recast.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/cloudformation_cli_python_lib/recast.py b/src/cloudformation_cli_python_lib/recast.py index 16ecb75..02ce2ab 100644 --- a/src/cloudformation_cli_python_lib/recast.py +++ b/src/cloudformation_cli_python_lib/recast.py @@ -127,5 +127,5 @@ def get_forward_ref_type() -> Any: # introspection is valid: # https://docs.python.org/3/library/typing.html#typing.ForwardRef if "ForwardRef" in dir(typing): - return typing.ForwardRef # type: ignore + return typing.ForwardRef return typing._ForwardRef # type: ignore From 5c80931a91f66fb73b9d7ac9df24d4b95364277e Mon Sep 17 00:00:00 2001 From: Pat Myron Date: Mon, 7 Dec 2020 13:10:02 -0800 Subject: [PATCH 03/13] Revert "removing unused ignore type comment" This reverts commit d3772be48fcf5e5128f2ebbe26a3a8bea893ee0c. --- .pre-commit-config.yaml | 2 +- src/cloudformation_cli_python_lib/recast.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index e9281d9..3350e3b 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -49,7 +49,7 @@ repos: - id: bandit files: ^(src|python)/ - repo: https://github.com/pre-commit/mirrors-mypy - rev: v0.790 + rev: v0.780 hooks: - id: mypy files: ^src/ diff --git a/src/cloudformation_cli_python_lib/recast.py b/src/cloudformation_cli_python_lib/recast.py index 02ce2ab..16ecb75 100644 --- a/src/cloudformation_cli_python_lib/recast.py +++ b/src/cloudformation_cli_python_lib/recast.py @@ -127,5 +127,5 @@ def get_forward_ref_type() -> Any: # introspection is valid: # https://docs.python.org/3/library/typing.html#typing.ForwardRef if "ForwardRef" in dir(typing): - return typing.ForwardRef + return typing.ForwardRef # type: ignore return typing._ForwardRef # type: ignore From 5f5d7b10efdc008c84e9140d59a44efeb3ab9bd7 Mon Sep 17 00:00:00 2001 From: Pat Myron Date: Tue, 15 Dec 2020 14:14:02 -0800 Subject: [PATCH 04/13] ignoring unused ignore type comment https://mypy.readthedocs.io/en/stable/common_issues.html#silencing-linters --- src/cloudformation_cli_python_lib/recast.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/cloudformation_cli_python_lib/recast.py b/src/cloudformation_cli_python_lib/recast.py index 16ecb75..1fcf06f 100644 --- a/src/cloudformation_cli_python_lib/recast.py +++ b/src/cloudformation_cli_python_lib/recast.py @@ -127,5 +127,5 @@ def get_forward_ref_type() -> Any: # introspection is valid: # https://docs.python.org/3/library/typing.html#typing.ForwardRef if "ForwardRef" in dir(typing): - return typing.ForwardRef # type: ignore + return typing.ForwardRef # type: ignore # noqa return typing._ForwardRef # type: ignore From ffddae20526acfd1c588753c8aab72a472dbfadc Mon Sep 17 00:00:00 2001 From: Pat Myron Date: Tue, 15 Dec 2020 14:23:03 -0800 Subject: [PATCH 05/13] removing python-check-blanket-noqa --- .pre-commit-config.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 3350e3b..0aee391 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -40,7 +40,6 @@ repos: - repo: https://github.com/pre-commit/pygrep-hooks rev: v1.3.0 hooks: - - id: python-check-blanket-noqa - id: python-check-mock-methods - id: python-no-log-warn - repo: https://github.com/PyCQA/bandit From 71378db87d4417deb39506f70b1dc4a1796e80fc Mon Sep 17 00:00:00 2001 From: Pat Myron Date: Tue, 15 Dec 2020 14:26:36 -0800 Subject: [PATCH 06/13] removing noqa --- .pre-commit-config.yaml | 1 + src/cloudformation_cli_python_lib/recast.py | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 0aee391..3350e3b 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -40,6 +40,7 @@ repos: - repo: https://github.com/pre-commit/pygrep-hooks rev: v1.3.0 hooks: + - id: python-check-blanket-noqa - id: python-check-mock-methods - id: python-no-log-warn - repo: https://github.com/PyCQA/bandit diff --git a/src/cloudformation_cli_python_lib/recast.py b/src/cloudformation_cli_python_lib/recast.py index 1fcf06f..16ecb75 100644 --- a/src/cloudformation_cli_python_lib/recast.py +++ b/src/cloudformation_cli_python_lib/recast.py @@ -127,5 +127,5 @@ def get_forward_ref_type() -> Any: # introspection is valid: # https://docs.python.org/3/library/typing.html#typing.ForwardRef if "ForwardRef" in dir(typing): - return typing.ForwardRef # type: ignore # noqa + return typing.ForwardRef # type: ignore return typing._ForwardRef # type: ignore From 8d0c63fb30c6d0948f302789a302ac4ae308e43b Mon Sep 17 00:00:00 2001 From: Pat Myron Date: Tue, 15 Dec 2020 14:28:32 -0800 Subject: [PATCH 07/13] noqa without type ignore --- .pre-commit-config.yaml | 1 - src/cloudformation_cli_python_lib/recast.py | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 3350e3b..0aee391 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -40,7 +40,6 @@ repos: - repo: https://github.com/pre-commit/pygrep-hooks rev: v1.3.0 hooks: - - id: python-check-blanket-noqa - id: python-check-mock-methods - id: python-no-log-warn - repo: https://github.com/PyCQA/bandit diff --git a/src/cloudformation_cli_python_lib/recast.py b/src/cloudformation_cli_python_lib/recast.py index 16ecb75..7496cb2 100644 --- a/src/cloudformation_cli_python_lib/recast.py +++ b/src/cloudformation_cli_python_lib/recast.py @@ -127,5 +127,5 @@ def get_forward_ref_type() -> Any: # introspection is valid: # https://docs.python.org/3/library/typing.html#typing.ForwardRef if "ForwardRef" in dir(typing): - return typing.ForwardRef # type: ignore + return typing.ForwardRef # noqa return typing._ForwardRef # type: ignore From 7e1337f9e188a34d1e1a9ace6923b8950e5117d5 Mon Sep 17 00:00:00 2001 From: Pat Myron Date: Tue, 15 Dec 2020 14:32:08 -0800 Subject: [PATCH 08/13] Revert "noqa without type ignore" This reverts commit bd8bdea1d772ffd6a54f1a44cf85b91c697a7f0c. --- .pre-commit-config.yaml | 1 + src/cloudformation_cli_python_lib/recast.py | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 0aee391..3350e3b 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -40,6 +40,7 @@ repos: - repo: https://github.com/pre-commit/pygrep-hooks rev: v1.3.0 hooks: + - id: python-check-blanket-noqa - id: python-check-mock-methods - id: python-no-log-warn - repo: https://github.com/PyCQA/bandit diff --git a/src/cloudformation_cli_python_lib/recast.py b/src/cloudformation_cli_python_lib/recast.py index 7496cb2..16ecb75 100644 --- a/src/cloudformation_cli_python_lib/recast.py +++ b/src/cloudformation_cli_python_lib/recast.py @@ -127,5 +127,5 @@ def get_forward_ref_type() -> Any: # introspection is valid: # https://docs.python.org/3/library/typing.html#typing.ForwardRef if "ForwardRef" in dir(typing): - return typing.ForwardRef # noqa + return typing.ForwardRef # type: ignore return typing._ForwardRef # type: ignore From 8a071dfd9ec7930345c57d2d263116588379b20c Mon Sep 17 00:00:00 2001 From: Pat Myron Date: Tue, 15 Dec 2020 14:41:08 -0800 Subject: [PATCH 09/13] silence imports https://mypy.readthedocs.io/en/stable/running_mypy.html#following-imports --- .pre-commit-config.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 3350e3b..c9f7385 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -56,6 +56,7 @@ repos: args: - --strict - --implicit-reexport + - --follow-imports=silent - repo: local hooks: - id: pylint-local From 595d78fdf4a96701ca451d1ffb0dcc6955deeb73 Mon Sep 17 00:00:00 2001 From: Pat Myron Date: Tue, 15 Dec 2020 14:45:53 -0800 Subject: [PATCH 10/13] Revert "silence imports" This reverts commit a605069d5d9be9a3814f4bfc78c49f04795818d0. --- .pre-commit-config.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index c9f7385..3350e3b 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -56,7 +56,6 @@ repos: args: - --strict - --implicit-reexport - - --follow-imports=silent - repo: local hooks: - id: pylint-local From d3912b05201649b4436f7bcb2c910765120365ae Mon Sep 17 00:00:00 2001 From: Pat Myron Date: Tue, 15 Dec 2020 14:50:14 -0800 Subject: [PATCH 11/13] only ignoring type comment for Python version 3.6 https://mypy.readthedocs.io/en/stable/common_issues.html#python-version-and-system-platform-checks --- src/cloudformation_cli_python_lib/recast.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/cloudformation_cli_python_lib/recast.py b/src/cloudformation_cli_python_lib/recast.py index 16ecb75..a09c702 100644 --- a/src/cloudformation_cli_python_lib/recast.py +++ b/src/cloudformation_cli_python_lib/recast.py @@ -1,3 +1,4 @@ +import sys import typing from typing import Any, Dict, List, Mapping, Set @@ -127,5 +128,8 @@ def get_forward_ref_type() -> Any: # introspection is valid: # https://docs.python.org/3/library/typing.html#typing.ForwardRef if "ForwardRef" in dir(typing): - return typing.ForwardRef # type: ignore + if sys.version_info > (3, 6): + return typing.ForwardRef + else: + return typing.ForwardRef # type: ignore return typing._ForwardRef # type: ignore From e60fc6f57ff15805ff739bcf2ef2142091d901c5 Mon Sep 17 00:00:00 2001 From: Pat Myron Date: Tue, 15 Dec 2020 14:59:39 -0800 Subject: [PATCH 12/13] disabling --warn-unused-ignores https://mypy.readthedocs.io/en/stable/command_line.html#cmdoption-mypy-warn-unused-ignores --- .pre-commit-config.yaml | 1 + src/cloudformation_cli_python_lib/recast.py | 6 +----- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 3350e3b..a313a4e 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -56,6 +56,7 @@ repos: args: - --strict - --implicit-reexport + - --no-warn-unused-ignores - repo: local hooks: - id: pylint-local diff --git a/src/cloudformation_cli_python_lib/recast.py b/src/cloudformation_cli_python_lib/recast.py index a09c702..16ecb75 100644 --- a/src/cloudformation_cli_python_lib/recast.py +++ b/src/cloudformation_cli_python_lib/recast.py @@ -1,4 +1,3 @@ -import sys import typing from typing import Any, Dict, List, Mapping, Set @@ -128,8 +127,5 @@ def get_forward_ref_type() -> Any: # introspection is valid: # https://docs.python.org/3/library/typing.html#typing.ForwardRef if "ForwardRef" in dir(typing): - if sys.version_info > (3, 6): - return typing.ForwardRef - else: - return typing.ForwardRef # type: ignore + return typing.ForwardRef # type: ignore return typing._ForwardRef # type: ignore From 7142f6de51f5cfa30d72c12e57e41635c39765fb Mon Sep 17 00:00:00 2001 From: Pat Myron Date: Wed, 7 Apr 2021 13:09:58 -0700 Subject: [PATCH 13/13] ignoring new pylint check --- .pylintrc | 1 + 1 file changed, 1 insertion(+) diff --git a/.pylintrc b/.pylintrc index fdfba49..1a97f4e 100644 --- a/.pylintrc +++ b/.pylintrc @@ -13,6 +13,7 @@ disable= too-few-public-methods, # triggers when inheriting ungrouped-imports, # clashes with isort duplicate-code, # broken, setup.py + invalid-name, [BASIC]