Skip to content

Commit 6d20766

Browse files
authored
Fix mypy errors (#2753)
Apparently I wasn't paying attention in my last PR :)
1 parent 8a1a8a1 commit 6d20766

File tree

5 files changed

+33
-30
lines changed

5 files changed

+33
-30
lines changed

ci/requirements-py36.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,4 +32,4 @@ dependencies:
3232
- lxml
3333
- pip:
3434
- cfgrib>=0.9.2
35-
- mypy==0.650
35+
- mypy==0.660

xarray/core/alignment.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
import warnings
44
from collections import OrderedDict, defaultdict
55
from contextlib import suppress
6-
from typing import Any, Mapping, Optional
6+
from typing import Any, Mapping, Optional, Tuple
77

88
import numpy as np
99
import pandas as pd
@@ -317,7 +317,7 @@ def reindex_variables(
317317

318318
# build up indexers for assignment along each dimension
319319
int_indexers = {}
320-
targets = OrderedDict()
320+
targets = OrderedDict() # type: OrderedDict[Any, pd.Index]
321321
masked_dims = set()
322322
unchanged_dims = set()
323323

@@ -357,7 +357,7 @@ def reindex_variables(
357357
'the new index %r' % (dim, existing_size, new_size))
358358

359359
# create variables for the new dataset
360-
reindexed = OrderedDict()
360+
reindexed = OrderedDict() # type: OrderedDict[Any, Variable]
361361

362362
for dim, indexer in indexers.items():
363363
if isinstance(indexer, DataArray) and indexer.dims != (dim,):

xarray/core/computation.py

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -224,7 +224,7 @@ def apply_dataarray_ufunc(func, *args, **kwargs):
224224

225225

226226
def ordered_set_union(all_keys: List[Iterable]) -> Iterable:
227-
result_dict = OrderedDict()
227+
result_dict = OrderedDict() # type: OrderedDict[Any, None]
228228
for keys in all_keys:
229229
for key in keys:
230230
result_dict[key] = None
@@ -284,11 +284,10 @@ def _as_variables_or_variable(arg):
284284

285285

286286
def _unpack_dict_tuples(
287-
result_vars, # type: Mapping[Any, Tuple[Variable]]
288-
num_outputs, # type: int
289-
):
290-
# type: (...) -> Tuple[Dict[Any, Variable], ...]
291-
out = tuple(OrderedDict() for _ in range(num_outputs))
287+
result_vars: Mapping[Any, Tuple[Variable]],
288+
num_outputs: int,
289+
) -> 'Tuple[OrderedDict[Any, Variable], ...]':
290+
out = tuple(OrderedDict() for _ in range(num_outputs)) # type: ignore
292291
for name, values in result_vars.items():
293292
for value, results_dict in zip(values, out):
294293
results_dict[name] = value
@@ -444,7 +443,7 @@ def unified_dim_sizes(
444443
exclude_dims: AbstractSet = frozenset(),
445444
) -> 'OrderedDict[Any, int]':
446445

447-
dim_sizes = OrderedDict()
446+
dim_sizes = OrderedDict() # type: OrderedDict[Any, int]
448447

449448
for var in variables:
450449
if len(set(var.dims)) < len(var.dims):

xarray/core/dataset.py

Lines changed: 17 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -192,11 +192,11 @@ def merge_indexes(
192192

193193

194194
def split_indexes(
195-
dims_or_levels, # type: Union[Any, List[Any]]
196-
variables, # type: Dict[Any, Variable]
197-
coord_names, # type: Set
198-
level_coords, # type: Dict[Any, Any]
199-
drop=False, # type: bool
195+
dims_or_levels, # type: Union[Any, List[Any]]
196+
variables, # type: OrderedDict[Any, Variable]
197+
coord_names, # type: Set
198+
level_coords, # type: Dict[Any, Any]
199+
drop=False, # type: bool
200200
):
201201
# type: (...) -> Tuple[OrderedDict[Any, Variable], Set]
202202
"""Extract (multi-)indexes (levels) as variables.
@@ -216,7 +216,7 @@ def split_indexes(
216216
dims.append(k)
217217

218218
vars_to_replace = {}
219-
vars_to_create = OrderedDict()
219+
vars_to_create = OrderedDict() # type: OrderedDict[Any, Variable]
220220
vars_to_remove = []
221221

222222
for d in dims:
@@ -696,11 +696,14 @@ def _from_vars_and_coord_names(cls, variables, coord_names, attrs=None):
696696
dims = dict(calculate_dimensions(variables))
697697
return cls._construct_direct(variables, coord_names, dims, attrs)
698698

699-
def _replace(
699+
# TODO(shoyer): renable type checking on this signature when pytype has a
700+
# good way to handle defaulting arguments to a sentinel value:
701+
# https://github.com/python/mypy/issues/1803
702+
def _replace( # type: ignore
700703
self: T,
701704
variables: 'OrderedDict[Any, Variable]' = None,
702705
coord_names: set = None,
703-
dims: 'OrderedDict[Any, int]' = None,
706+
dims: Dict[Any, int] = None,
704707
attrs: 'Optional[OrderedDict]' = __default,
705708
indexes: 'Optional[OrderedDict[Any, pd.Index]]' = __default,
706709
encoding: Optional[dict] = __default,
@@ -745,7 +748,7 @@ def _replace(
745748
variables, coord_names, dims, attrs, indexes, encoding)
746749
return obj
747750

748-
def _replace_with_new_dims(
751+
def _replace_with_new_dims( # type: ignore
749752
self: T,
750753
variables: 'OrderedDict[Any, Variable]' = None,
751754
coord_names: set = None,
@@ -758,7 +761,7 @@ def _replace_with_new_dims(
758761
return self._replace(
759762
variables, coord_names, dims, attrs, indexes, inplace=inplace)
760763

761-
def _replace_vars_and_dims(
764+
def _replace_vars_and_dims( # type: ignore
762765
self: T,
763766
variables: 'OrderedDict[Any, Variable]' = None,
764767
coord_names: set = None,
@@ -931,7 +934,7 @@ def _copy_listed(self: T, names) -> T:
931934
"""Create a new Dataset with the listed variables from this dataset and
932935
the all relevant coordinates. Skips all validation.
933936
"""
934-
variables = OrderedDict()
937+
variables = OrderedDict() # type: OrderedDict[Any, Variable]
935938
coord_names = set()
936939

937940
for name in names:
@@ -976,7 +979,7 @@ def _construct_dataarray(self, name) -> 'DataArray':
976979

977980
needed_dims = set(variable.dims)
978981

979-
coords = OrderedDict()
982+
coords = OrderedDict() # type: OrderedDict[Any, Variable]
980983
for k in self.coords:
981984
if set(self.variables[k].dims) <= needed_dims:
982985
coords[k] = self.variables[k]
@@ -1823,12 +1826,12 @@ def relevant_keys(mapping):
18231826
else:
18241827
# dim is a string
18251828
dim_name = dim
1826-
dim_coord = None
1829+
dim_coord = None # type: ignore
18271830

18281831
reordered = self.transpose(
18291832
*(list(indexer_dims) + list(non_indexed_dims)))
18301833

1831-
variables = OrderedDict()
1834+
variables = OrderedDict() # type: ignore
18321835

18331836
for name, var in reordered.variables.items():
18341837
if name in indexers_dict or any(

xarray/core/merge.py

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -22,13 +22,14 @@
2222
'no_conflicts': 4})
2323

2424

25-
def broadcast_dimension_size(variables):
26-
# type: (List[Variable],) -> Variable
25+
def broadcast_dimension_size(
26+
variables: List[Variable],
27+
) -> 'OrderedDict[Any, int]':
2728
"""Extract dimension sizes from a dictionary of variables.
2829
2930
Raises ValueError if any dimensions have different sizes.
3031
"""
31-
dims = OrderedDict()
32+
dims = OrderedDict() # type: OrderedDict[Any, int]
3233
for var in variables:
3334
for dim, size in zip(var.dims, var.shape):
3435
if dim in dims and size != dims[dim]:
@@ -149,7 +150,7 @@ def merge_variables(
149150

150151
# n.b. it's important to fill up merged in the original order in which
151152
# variables appear
152-
merged = OrderedDict()
153+
merged = OrderedDict() # type: OrderedDict[Any, Variable]
153154

154155
for name, var_list in lookup.items():
155156
if name in priority_vars:
@@ -177,7 +178,7 @@ def merge_variables(
177178

178179
def expand_variable_dicts(
179180
list_of_variable_dicts: 'List[Union[Dataset, OrderedDict]]',
180-
) -> 'List[OrderedDict[Any, Variable]]':
181+
) -> 'List[Mapping[Any, Variable]]':
181182
"""Given a list of dicts with xarray object values, expand the values.
182183
183184
Parameters

0 commit comments

Comments
 (0)