Enable pyright's reportUnnecessaryTypeIgnoreComment setting for the whole test_cases directory (#8683)

This commit is contained in:
Alex Waygood
2022-09-05 14:20:04 +01:00
committed by GitHub
parent 3a397a2252
commit fd4feba2c9
10 changed files with 62 additions and 19 deletions

View File

@@ -105,6 +105,13 @@ jobs:
python-platform: ${{ matrix.python-platform }}
python-version: ${{ matrix.python-version }}
no-comments: ${{ matrix.python-version != '3.10' || matrix.python-platform != 'Linux' }} # Having each job create the same comment is too noisy.
project: ./pyrightconfig.testcases.json
- uses: jakebailey/pyright-action@v1
with:
version: ${{ env.PYRIGHT_VERSION }}
python-platform: ${{ matrix.python-platform }}
python-version: ${{ matrix.python-version }}
no-comments: ${{ matrix.python-version != '3.10' || matrix.python-platform != 'Linux' }} # Having each job create the same comment is too noisy.
stubtest-third-party:
name: Check third party stubs with stubtest

View File

@@ -2,8 +2,7 @@
"typeshedPath": ".",
"include": [
"stdlib",
"stubs",
"test_cases"
"stubs"
],
"typeCheckingMode": "basic",
"strictListInference": true,

View File

@@ -3,8 +3,7 @@
"typeshedPath": ".",
"include": [
"stdlib",
"stubs",
"test_cases"
"stubs"
],
"exclude": [
"stdlib/distutils/command",

View File

@@ -0,0 +1,51 @@
{
"$schema": "https://raw.githubusercontent.com/microsoft/pyright/main/packages/vscode-pyright/schemas/pyrightconfig.schema.json",
"typeshedPath": ".",
"include": [
"test_cases"
],
"typeCheckingMode": "basic",
"strictListInference": true,
"strictDictionaryInference": true,
"strictParameterNoneValue": true,
"reportFunctionMemberAccess": "error",
"reportMissingModuleSource": "none",
"reportMissingTypeStubs": "error",
"reportUnusedImport": "error",
"reportUnusedClass": "error",
"reportUnusedFunction": "error",
"reportUnusedVariable": "error",
"reportDuplicateImport": "error",
"reportOptionalSubscript": "error",
"reportOptionalMemberAccess": "error",
"reportOptionalCall": "error",
"reportOptionalIterable": "error",
"reportOptionalContextManager": "error",
"reportOptionalOperand": "error",
"reportUntypedFunctionDecorator": "error",
"reportUntypedClassDecorator": "error",
"reportUntypedBaseClass": "error",
"reportUntypedNamedTuple": "error",
"reportPrivateUsage": "none",
"reportConstantRedefinition": "error",
"reportInvalidStringEscapeSequence": "error",
"reportUnknownParameterType": "error",
"reportUnknownArgumentType": "error",
"reportUnknownLambdaType": "error",
"reportUnknownVariableType": "error",
"reportUnknownMemberType": "error",
"reportMissingTypeArgument": "error",
"reportUndefinedVariable": "error",
"reportUnboundVariable": "error",
"reportInvalidStubStatement": "error",
"reportInvalidTypeVarUse": "error",
"reportPropertyTypeMismatch": "error",
"reportSelfClsParameterName": "error",
"reportUnsupportedDunderAll": "error",
"reportIncompatibleMethodOverride": "error",
"reportIncompatibleVariableOverride": "error",
"reportOverlappingOverload": "error",
"reportUnnecessaryTypeIgnoreComment": "error",
"reportMissingTypeStubs": "error",
"reportMatchNotExhaustive": "error"
}

View File

@@ -40,11 +40,8 @@ mypy's
setting and pyright's
[`reportUnnecessaryTypeIgnoreComment`](https://github.com/microsoft/pyright/blob/main/docs/configuration.md#type-check-diagnostics-settings)
setting) to test instances where a type checker *should* emit some kind of
error, if the stubs are correct. Note that mypy's `--warn-unused-ignores`
setting is enabled for the entire subdirectory; however, the pyright setting
must be enabled on a per-file basis with
`# pyright: reportUnnecessaryTypeIgnoreComment=true` at the the top of the
file.
error, if the stubs are correct. Both settings are enabled by default for the entire
subdirectory.
For more information on using `assert_type` and
`--warn-unused-ignores`/`reportUnnecessaryTypeIgnoreComment` to test type

View File

@@ -1,5 +1,3 @@
# pyright: reportUnnecessaryTypeIgnoreComment=true
from typing import Dict, Generic, Iterable, Tuple, TypeVar
from typing_extensions import assert_type

View File

@@ -1,5 +1,3 @@
# pyright: reportUnnecessaryTypeIgnoreComment=true
from decimal import Decimal
from fractions import Fraction
from typing import Any

View File

@@ -1,5 +1,3 @@
# pyright: reportUnnecessaryTypeIgnoreComment=true
from typing import Any, List, Union
from typing_extensions import Literal, assert_type

View File

@@ -1,5 +1,3 @@
# pyright: reportUnnecessaryTypeIgnoreComment=true
import codecs
from typing_extensions import assert_type

View File

@@ -1,5 +1,3 @@
# pyright: reportUnnecessaryTypeIgnoreComment=true
import unittest
from datetime import datetime, timedelta
from decimal import Decimal