TissueImageAnalytics / tiatoolbox

Computational Pathology Toolbox developed by TIA Centre, University of Warwick.
https://warwick.ac.uk/tia
Other
340 stars 71 forks source link

:white_check_mark: Add `mypy` checks to `image.py` #753

Closed shaneahmed closed 6 months ago

shaneahmed commented 7 months ago
codecov[bot] commented 7 months ago

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (a4463ee) 99.85% compared to head (4af2c06) 99.85%. Report is 1 commits behind head on develop.

Additional details and impacted files ```diff @@ Coverage Diff @@ ## develop #753 +/- ## ======================================== Coverage 99.85% 99.85% ======================================== Files 65 65 Lines 7532 7541 +9 Branches 1460 1461 +1 ======================================== + Hits 7521 7530 +9 Misses 4 4 Partials 7 7 ```

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

Jiaqi-Lv commented 6 months ago

Strangely when I run mypy locally it says there are 10 errors. I don't know why this is happening.

tiatoolbox/utils/image.py:283: error: No overload variant of "pad" matches argument types "Any", "ndarray[Any, Any]", "str", "Union[int, Tuple[Any, ...]]" [call-overload] tiatoolbox/utils/image.py:283: note: Possible overload variants: tiatoolbox/utils/image.py:283: note: def [_SCT <: generic] pad(array: Any, pad_width: Any, mode: Literal['constant', 'edge', 'linear_ramp', 'maximum', 'mean', 'median', 'minimum', 'reflect', 'symmetric', 'wrap', 'empty'] = ..., , stat_length: Optional[Any] = ..., constant_values: Any = ..., end_values: Any = ..., reflect_type: Literal['odd', 'even'] = ...) -> Any tiatoolbox/utils/image.py:283: note: def pad(array: Any, pad_width: Any, mode: Literal['constant', 'edge', 'linear_ramp', 'maximum', 'mean', 'median', 'minimum', 'reflect', 'symmetric', 'wrap', 'empty'] = ..., , stat_length: Optional[Any] = ..., constant_values: Any = ..., end_values: Any = ..., reflect_type: Literal['odd', 'even'] = ...) -> Any tiatoolbox/utils/image.py:283: note: def [_SCT <: generic] pad(array: Any, pad_width: Any, mode: _ModeFunc, kwargs: Any) -> Any tiatoolbox/utils/image.py:283: note: def pad(array: Any, pad_width: Any, mode: _ModeFunc, kwargs: Any) -> Any tiatoolbox/utils/image.py:284: error: No overload variant of "pad" matches argument types "Any", "ndarray[Any, Any]", "str" [call-overload] tiatoolbox/utils/image.py:284: note: Possible overload variants: tiatoolbox/utils/image.py:284: note: def [_SCT <: generic] pad(array: Any, pad_width: Any, mode: Literal['constant', 'edge', 'linear_ramp', 'maximum', 'mean', 'median', 'minimum', 'reflect', 'symmetric', 'wrap', 'empty'] = ..., , stat_length: Optional[Any] = ..., constant_values: Any = ..., end_values: Any = ..., reflect_type: Literal['odd', 'even'] = ...) -> Any tiatoolbox/utils/image.py:284: note: def pad(array: Any, pad_width: Any, mode: Literal['constant', 'edge', 'linear_ramp', 'maximum', 'mean', 'median', 'minimum', 'reflect', 'symmetric', 'wrap', 'empty'] = ..., , stat_length: Optional[Any] = ..., constant_values: Any = ..., end_values: Any = ..., reflect_type: Literal['odd', 'even'] = ...) -> Any tiatoolbox/utils/image.py:284: note: def [_SCT <: generic] pad(array: Any, pad_width: Any, mode: _ModeFunc, kwargs: Any) -> Any tiatoolbox/utils/image.py:284: note: def pad(array: Any, pad_width: Any, mode: _ModeFunc, kwargs: Any) -> Any tiatoolbox/utils/image.py:424: error: No overload variant of "pad" matches argument types "ndarray[Any, Any]", "List[Tuple[Any, Any]]", "str", "Dict[Any, Any]" [call-overload] tiatoolbox/utils/image.py:424: note: Possible overload variants: tiatoolbox/utils/image.py:424: note: def [_SCT <: generic] pad(array: Any, pad_width: Any, mode: Literal['constant', 'edge', 'linear_ramp', 'maximum', 'mean', 'median', 'minimum', 'reflect', 'symmetric', 'wrap', 'empty'] = ..., , stat_length: Optional[Any] = ..., constant_values: Any = ..., end_values: Any = ..., reflect_type: Literal['odd', 'even'] = ...) -> Any tiatoolbox/utils/image.py:424: note: def pad(array: Any, pad_width: Any, mode: Literal['constant', 'edge', 'linear_ramp', 'maximum', 'mean', 'median', 'minimum', 'reflect', 'symmetric', 'wrap', 'empty'] = ..., , stat_length: Optional[Any] = ..., constant_values: Any = ..., end_values: Any = ..., reflect_type: Literal['odd', 'even'] = ...) -> Any tiatoolbox/utils/image.py:424: note: def [_SCT <: generic] pad(array: Any, pad_width: Any, mode: _ModeFunc, kwargs: Any) -> Any tiatoolbox/utils/image.py:424: note: def pad(array: Any, pad_width: Any, mode: _ModeFunc, kwargs: Any) -> Any tiatoolbox/utils/image.py:597: error: Too many arguments for "find_overlap" [call-arg] tiatoolbox/utils/image.py:601: error: "find_overlap" gets multiple values for keyword argument "image_size" [misc] tiatoolbox/utils/image.py:626: error: Too many arguments for "find_overlap" [call-arg] tiatoolbox/utils/image.py:646: error: "find_padding" gets multiple values for keyword argument "image_size" [misc] tiatoolbox/utils/image.py:648: error: Too many arguments for "find_padding" [call-arg] tiatoolbox/utils/image.py:656: error: No overload variant of "pad" matches argument types "Any", "Any", "str", "Dict[Any, Any]" [call-overload] tiatoolbox/utils/image.py:656: note: Possible overload variants: tiatoolbox/utils/image.py:656: note: def [_SCT <: generic] pad(array: Any, pad_width: Any, mode: Literal['constant', 'edge', 'linear_ramp', 'maximum', 'mean', 'median', 'minimum', 'reflect', 'symmetric', 'wrap', 'empty'] = ..., , stat_length: Optional[Any] = ..., constant_values: Any = ..., end_values: Any = ..., reflect_type: Literal['odd', 'even'] = ...) -> Any tiatoolbox/utils/image.py:656: note: def pad(array: Any, pad_width: Any, mode: Literal['constant', 'edge', 'linear_ramp', 'maximum', 'mean', 'median', 'minimum', 'reflect', 'symmetric', 'wrap', 'empty'] = ..., , stat_length: Optional[Any] = ..., constant_values: Any = ..., end_values: Any = ..., reflect_type: Literal['odd', 'even'] = ...) -> Any tiatoolbox/utils/image.py:656: note: def [_SCT <: generic] pad(array: Any, pad_width: Any, mode: _ModeFunc, kwargs: Any) -> Any tiatoolbox/utils/image.py:656: note: def pad(array: Any, pad_width: Any, mode: _ModeFunc, kwargs: Any) -> Any tiatoolbox/utils/image.py:663: error: No overload variant of "pad" matches argument types "Any", "Any", "str" [call-overload] tiatoolbox/utils/image.py:663: note: Possible overload variants: tiatoolbox/utils/image.py:663: note: def [_SCT <: generic] pad(array: Any, pad_width: Any, mode: Literal['constant', 'edge', 'linear_ramp', 'maximum', 'mean', 'median', 'minimum', 'reflect', 'symmetric', 'wrap', 'empty'] = ..., , stat_length: Optional[Any] = ..., constant_values: Any = ..., end_values: Any = ..., reflect_type: Literal['odd', 'even'] = ...) -> Any tiatoolbox/utils/image.py:663: note: def pad(array: Any, pad_width: Any, mode: Literal['constant', 'edge', 'linear_ramp', 'maximum', 'mean', 'median', 'minimum', 'reflect', 'symmetric', 'wrap', 'empty'] = ..., , stat_length: Optional[Any] = ..., constant_values: Any = ..., end_values: Any = ..., reflect_type: Literal['odd', 'even'] = ...) -> Any tiatoolbox/utils/image.py:663: note: def [_SCT <: generic] pad(array: Any, pad_width: Any, mode: _ModeFunc, kwargs: Any) -> Any tiatoolbox/utils/image.py:663: note: def pad(array: Any, pad_width: Any, mode: _ModeFunc, kwargs: Any) -> Any Found 10 errors in 1 file (checked 1 source file)

shaneahmed commented 6 months ago

Strangely when I run mypy locally it says there are 10 errors. I don't know why this is happening.

tiatoolbox/utils/image.py:283: error: No overload variant of "pad" matches argument types "Any", "ndarray[Any, Any]", "str", "Union[int, Tuple[Any, ...]]" [call-overload] tiatoolbox/utils/image.py:283: note: Possible overload variants: tiatoolbox/utils/image.py:283: note: def [_SCT <: generic] pad(array: Any, pad_width: Any, mode: Literal['constant', 'edge', 'linear_ramp', 'maximum', 'mean', 'median', 'minimum', 'reflect', 'symmetric', 'wrap', 'empty'] = ..., , stat_length: Optional[Any] = ..., constant_values: Any = ..., end_values: Any = ..., reflect_type: Literal['odd', 'even'] = ...) -> Any tiatoolbox/utils/image.py:283: note: def pad(array: Any, pad_width: Any, mode: Literal['constant', 'edge', 'linear_ramp', 'maximum', 'mean', 'median', 'minimum', 'reflect', 'symmetric', 'wrap', 'empty'] = ..., , stat_length: Optional[Any] = ..., constant_values: Any = ..., end_values: Any = ..., reflect_type: Literal['odd', 'even'] = ...) -> Any tiatoolbox/utils/image.py:283: note: def [_SCT <: generic] pad(array: Any, pad_width: Any, mode: _ModeFunc, kwargs: Any) -> Any tiatoolbox/utils/image.py:283: note: def pad(array: Any, pad_width: Any, mode: _ModeFunc, kwargs: Any) -> Any tiatoolbox/utils/image.py:284: error: No overload variant of "pad" matches argument types "Any", "ndarray[Any, Any]", "str" [call-overload] tiatoolbox/utils/image.py:284: note: Possible overload variants: tiatoolbox/utils/image.py:284: note: def [_SCT <: generic] pad(array: Any, pad_width: Any, mode: Literal['constant', 'edge', 'linear_ramp', 'maximum', 'mean', 'median', 'minimum', 'reflect', 'symmetric', 'wrap', 'empty'] = ..., , stat_length: Optional[Any] = ..., constant_values: Any = ..., end_values: Any = ..., reflect_type: Literal['odd', 'even'] = ...) -> Any tiatoolbox/utils/image.py:284: note: def pad(array: Any, pad_width: Any, mode: Literal['constant', 'edge', 'linear_ramp', 'maximum', 'mean', 'median', 'minimum', 'reflect', 'symmetric', 'wrap', 'empty'] = ..., , stat_length: Optional[Any] = ..., constant_values: Any = ..., end_values: Any = ..., reflect_type: Literal['odd', 'even'] = ...) -> Any tiatoolbox/utils/image.py:284: note: def [_SCT <: generic] pad(array: Any, pad_width: Any, mode: _ModeFunc, kwargs: Any) -> Any tiatoolbox/utils/image.py:284: note: def pad(array: Any, pad_width: Any, mode: _ModeFunc, kwargs: Any) -> Any tiatoolbox/utils/image.py:424: error: No overload variant of "pad" matches argument types "ndarray[Any, Any]", "List[Tuple[Any, Any]]", "str", "Dict[Any, Any]" [call-overload] tiatoolbox/utils/image.py:424: note: Possible overload variants: tiatoolbox/utils/image.py:424: note: def [_SCT <: generic] pad(array: Any, pad_width: Any, mode: Literal['constant', 'edge', 'linear_ramp', 'maximum', 'mean', 'median', 'minimum', 'reflect', 'symmetric', 'wrap', 'empty'] = ..., , stat_length: Optional[Any] = ..., constant_values: Any = ..., end_values: Any = ..., reflect_type: Literal['odd', 'even'] = ...) -> Any tiatoolbox/utils/image.py:424: note: def pad(array: Any, pad_width: Any, mode: Literal['constant', 'edge', 'linear_ramp', 'maximum', 'mean', 'median', 'minimum', 'reflect', 'symmetric', 'wrap', 'empty'] = ..., , stat_length: Optional[Any] = ..., constant_values: Any = ..., end_values: Any = ..., reflect_type: Literal['odd', 'even'] = ...) -> Any tiatoolbox/utils/image.py:424: note: def [_SCT <: generic] pad(array: Any, pad_width: Any, mode: _ModeFunc, kwargs: Any) -> Any tiatoolbox/utils/image.py:424: note: def pad(array: Any, pad_width: Any, mode: _ModeFunc, kwargs: Any) -> Any tiatoolbox/utils/image.py:597: error: Too many arguments for "find_overlap" [call-arg] tiatoolbox/utils/image.py:601: error: "find_overlap" gets multiple values for keyword argument "image_size" [misc] tiatoolbox/utils/image.py:626: error: Too many arguments for "find_overlap" [call-arg] tiatoolbox/utils/image.py:646: error: "find_padding" gets multiple values for keyword argument "image_size" [misc] tiatoolbox/utils/image.py:648: error: Too many arguments for "find_padding" [call-arg] tiatoolbox/utils/image.py:656: error: No overload variant of "pad" matches argument types "Any", "Any", "str", "Dict[Any, Any]" [call-overload] tiatoolbox/utils/image.py:656: note: Possible overload variants: tiatoolbox/utils/image.py:656: note: def [_SCT <: generic] pad(array: Any, pad_width: Any, mode: Literal['constant', 'edge', 'linear_ramp', 'maximum', 'mean', 'median', 'minimum', 'reflect', 'symmetric', 'wrap', 'empty'] = ..., , stat_length: Optional[Any] = ..., constant_values: Any = ..., end_values: Any = ..., reflect_type: Literal['odd', 'even'] = ...) -> Any tiatoolbox/utils/image.py:656: note: def pad(array: Any, pad_width: Any, mode: Literal['constant', 'edge', 'linear_ramp', 'maximum', 'mean', 'median', 'minimum', 'reflect', 'symmetric', 'wrap', 'empty'] = ..., , stat_length: Optional[Any] = ..., constant_values: Any = ..., end_values: Any = ..., reflect_type: Literal['odd', 'even'] = ...) -> Any tiatoolbox/utils/image.py:656: note: def [_SCT <: generic] pad(array: Any, pad_width: Any, mode: _ModeFunc, kwargs: Any) -> Any tiatoolbox/utils/image.py:656: note: def pad(array: Any, pad_width: Any, mode: _ModeFunc, kwargs: Any) -> Any tiatoolbox/utils/image.py:663: error: No overload variant of "pad" matches argument types "Any", "Any", "str" [call-overload] tiatoolbox/utils/image.py:663: note: Possible overload variants: tiatoolbox/utils/image.py:663: note: def [_SCT <: generic] pad(array: Any, pad_width: Any, mode: Literal['constant', 'edge', 'linear_ramp', 'maximum', 'mean', 'median', 'minimum', 'reflect', 'symmetric', 'wrap', 'empty'] = ..., , stat_length: Optional[Any] = ..., constant_values: Any = ..., end_values: Any = ..., reflect_type: Literal['odd', 'even'] = ...) -> Any tiatoolbox/utils/image.py:663: note: def pad(array: Any, pad_width: Any, mode: Literal['constant', 'edge', 'linear_ramp', 'maximum', 'mean', 'median', 'minimum', 'reflect', 'symmetric', 'wrap', 'empty'] = ..., , stat_length: Optional[Any] = ..., constant_values: Any = ..., end_values: Any = ..., reflect_type: Literal['odd', 'even'] = ...) -> Any tiatoolbox/utils/image.py:663: note: def [_SCT <: generic] pad(array: Any, pad_width: Any, mode: _ModeFunc, kwargs: Any) -> Any tiatoolbox/utils/image.py:663: note: def pad(array: Any, pad_width: Any, mode: _ModeFunc, kwargs: Any) -> Any Found 10 errors in 1 file (checked 1 source file)

Same here. Need to check why.

shaneahmed commented 6 months ago

@Jiaqi-Lv this should pass now locally.