Skip to content

Commit

Permalink
CI/TYP: enable reportGeneralTypeIssues for subset of files (pandas-de…
Browse files Browse the repository at this point in the history
…v#47252)

* CI/TYP: enable reportGeneralTypeIssues for subset of files

* labels can be Iterable[str]

* fix no_default

* specify pyright version only once

* TYP: remove mypy ignore from localization.py (pandas-dev#47240)

* TYP: remove mypy ignore from localization.py

* fixup! TYP: remove mypy ignore from localization.py

* specify pyright version only once

* bump pyright

* Update pyright_reportGeneralTypeIssues.json

Co-authored-by: Thierry Moisan <[email protected]>
Co-authored-by: Matthew Roeschke <[email protected]>
  • Loading branch information
3 people authored and yehoshuadimarsky committed Jul 13, 2022
1 parent 9221880 commit e7b6a85
Show file tree
Hide file tree
Showing 5 changed files with 146 additions and 6 deletions.
14 changes: 13 additions & 1 deletion .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,19 @@ repos:
pass_filenames: false
types: [python]
stages: [manual]
additional_dependencies: ['[email protected]']
additional_dependencies: &pyright_dependencies
- [email protected]
- repo: local
hooks:
- id: pyright_reportGeneralTypeIssues
name: pyright reportGeneralTypeIssues
entry: pyright --skipunannotated -p pyright_reportGeneralTypeIssues.json
# note: assumes python env is setup and activated
language: node
pass_filenames: false
types: [python]
stages: [manual]
additional_dependencies: *pyright_dependencies
- repo: local
hooks:
- id: mypy
Expand Down
3 changes: 2 additions & 1 deletion pandas/_libs/lib.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
from typing import (
Any,
Callable,
Final,
Generator,
Hashable,
Literal,
Expand All @@ -26,7 +27,7 @@ from enum import Enum
class _NoDefault(Enum):
no_default = ...

no_default = _NoDefault.no_default
no_default: Final = _NoDefault.no_default
NoDefault = Literal[_NoDefault.no_default]

i8max: int
Expand Down
4 changes: 3 additions & 1 deletion pandas/util/_doctools.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
from __future__ import annotations

from typing import Iterable

import numpy as np

import pandas as pd
Expand Down Expand Up @@ -41,7 +43,7 @@ def _get_cells(self, left, right, vertical) -> tuple[int, int]:
hcells = sum([self._shape(df)[1] for df in left] + [self._shape(right)[1]])
return hcells, vcells

def plot(self, left, right, labels=None, vertical: bool = True):
def plot(self, left, right, labels: Iterable[str] = (), vertical: bool = True):
"""
Plot left / right DataFrames in specified layout.
Expand Down
127 changes: 127 additions & 0 deletions pyright_reportGeneralTypeIssues.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,127 @@
# this becomes obsolete when reportGeneralTypeIssues can be enabled in pyproject.toml
{
"typeCheckingMode": "off",
"reportGeneralTypeIssues": true,
"include":
[
"pandas",
"typings"
],
"exclude":
[
# exclude tests
"pandas/tests",
# and all files that currently don't pass
"pandas/_config/config.py",
"pandas/core/algorithms.py",
"pandas/core/apply.py",
"pandas/core/array_algos/take.py",
"pandas/core/arrays/_mixins.py",
"pandas/core/arrays/_ranges.py",
"pandas/core/arrays/arrow/array.py",
"pandas/core/arrays/base.py",
"pandas/core/arrays/boolean.py",
"pandas/core/arrays/categorical.py",
"pandas/core/arrays/datetimelike.py",
"pandas/core/arrays/datetimes.py",
"pandas/core/arrays/interval.py",
"pandas/core/arrays/masked.py",
"pandas/core/arrays/numeric.py",
"pandas/core/arrays/period.py",
"pandas/core/arrays/sparse/array.py",
"pandas/core/arrays/sparse/dtype.py",
"pandas/core/arrays/string_.py",
"pandas/core/arrays/string_arrow.py",
"pandas/core/arrays/timedeltas.py",
"pandas/core/common.py",
"pandas/core/computation/align.py",
"pandas/core/construction.py",
"pandas/core/describe.py",
"pandas/core/dtypes/base.py",
"pandas/core/dtypes/cast.py",
"pandas/core/dtypes/common.py",
"pandas/core/dtypes/concat.py",
"pandas/core/dtypes/dtypes.py",
"pandas/core/frame.py",
"pandas/core/generic.py",
"pandas/core/groupby/generic.py",
"pandas/core/groupby/groupby.py",
"pandas/core/groupby/grouper.py",
"pandas/core/groupby/ops.py",
"pandas/core/indexers/objects.py",
"pandas/core/indexers/utils.py",
"pandas/core/indexes/base.py",
"pandas/core/indexes/category.py",
"pandas/core/indexes/datetimelike.py",
"pandas/core/indexes/datetimes.py",
"pandas/core/indexes/extension.py",
"pandas/core/indexes/interval.py",
"pandas/core/indexes/multi.py",
"pandas/core/indexes/numeric.py",
"pandas/core/indexes/period.py",
"pandas/core/indexes/range.py",
"pandas/core/indexing.py",
"pandas/core/internals/api.py",
"pandas/core/internals/array_manager.py",
"pandas/core/internals/base.py",
"pandas/core/internals/blocks.py",
"pandas/core/internals/concat.py",
"pandas/core/internals/construction.py",
"pandas/core/internals/managers.py",
"pandas/core/missing.py",
"pandas/core/nanops.py",
"pandas/core/resample.py",
"pandas/core/reshape/concat.py",
"pandas/core/reshape/merge.py",
"pandas/core/reshape/pivot.py",
"pandas/core/reshape/reshape.py",
"pandas/core/reshape/tile.py",
"pandas/core/series.py",
"pandas/core/sorting.py",
"pandas/core/strings/accessor.py",
"pandas/core/tools/datetimes.py",
"pandas/core/tools/timedeltas.py",
"pandas/core/util/hashing.py",
"pandas/core/util/numba_.py",
"pandas/core/window/ewm.py",
"pandas/core/window/expanding.py",
"pandas/core/window/rolling.py",
"pandas/io/common.py",
"pandas/io/excel/_base.py",
"pandas/io/excel/_odfreader.py",
"pandas/io/excel/_odswriter.py",
"pandas/io/excel/_openpyxl.py",
"pandas/io/excel/_pyxlsb.py",
"pandas/io/excel/_xlrd.py",
"pandas/io/formats/csvs.py",
"pandas/io/formats/excel.py",
"pandas/io/formats/format.py",
"pandas/io/formats/info.py",
"pandas/io/formats/printing.py",
"pandas/io/formats/style.py",
"pandas/io/formats/style_render.py",
"pandas/io/formats/xml.py",
"pandas/io/json/_json.py",
"pandas/io/parquet.py",
"pandas/io/parsers/arrow_parser_wrapper.py",
"pandas/io/parsers/base_parser.py",
"pandas/io/parsers/c_parser_wrapper.py",
"pandas/io/parsers/python_parser.py",
"pandas/io/parsers/readers.py",
"pandas/io/pytables.py",
"pandas/io/sas/sas7bdat.py",
"pandas/io/sas/sasreader.py",
"pandas/io/sql.py",
"pandas/io/stata.py",
"pandas/io/xml.py",
"pandas/plotting/_core.py",
"pandas/plotting/_matplotlib/converter.py",
"pandas/plotting/_matplotlib/core.py",
"pandas/plotting/_matplotlib/hist.py",
"pandas/plotting/_matplotlib/misc.py",
"pandas/plotting/_matplotlib/style.py",
"pandas/plotting/_matplotlib/timeseries.py",
"pandas/plotting/_matplotlib/tools.py",
"pandas/tseries/frequencies.py",
],
}
4 changes: 1 addition & 3 deletions typings/numba.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,7 @@ from pandas._typing import F

def __getattr__(name: str) -> Any: ... # incomplete
@overload
def jit(
signature_or_function: F = ...,
) -> F: ...
def jit(signature_or_function: F) -> F: ...
@overload
def jit(
signature_or_function: str
Expand Down

0 comments on commit e7b6a85

Please sign in to comment.