Skip to content

Commit 66625c9

Browse files
authored
always use dask_array_type for isinstance calls (#3787)
* always use dask_array_type for instance checking * update whats-new.rst
1 parent 858eba6 commit 66625c9

File tree

3 files changed

+9
-4
lines changed

3 files changed

+9
-4
lines changed

doc/whats-new.rst

+3
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,9 @@ New Features
2929

3030
Bug fixes
3131
~~~~~~~~~
32+
- Use ``dask_array_type`` instead of ``dask_array.Array`` for type
33+
checking. (:issue:`3779`, :pull:`3787`)
34+
By `Justus Magin <https://github.com/keewis>`_.
3235

3336
Documentation
3437
~~~~~~~~~~~~~

xarray/core/dask_array_compat.py

+3-1
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@
33

44
import numpy as np
55

6+
from .pycompat import dask_array_type
7+
68
try:
79
import dask.array as da
810
from dask import __version__ as dask_version
@@ -36,7 +38,7 @@ def meta_from_array(x, ndim=None, dtype=None):
3638
"""
3739
# If using x._meta, x must be a Dask Array, some libraries (e.g. zarr)
3840
# implement a _meta attribute that are incompatible with Dask Array._meta
39-
if hasattr(x, "_meta") and isinstance(x, da.Array):
41+
if hasattr(x, "_meta") and isinstance(x, dask_array_type):
4042
x = x._meta
4143

4244
if dtype is None and x is None:

xarray/core/duck_array_ops.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ def f(*args, **kwargs):
3737
dispatch_args = args[0]
3838
else:
3939
dispatch_args = args[array_args]
40-
if any(isinstance(a, dask_array.Array) for a in dispatch_args):
40+
if any(isinstance(a, dask_array_type) for a in dispatch_args):
4141
try:
4242
wrapped = getattr(dask_module, name)
4343
except AttributeError as e:
@@ -190,8 +190,8 @@ def lazy_array_equiv(arr1, arr2):
190190
return False
191191
if (
192192
dask_array
193-
and isinstance(arr1, dask_array.Array)
194-
and isinstance(arr2, dask_array.Array)
193+
and isinstance(arr1, dask_array_type)
194+
and isinstance(arr2, dask_array_type)
195195
):
196196
# GH3068
197197
if arr1.name == arr2.name:

0 commit comments

Comments
 (0)