diff --git a/deker_server_adapters/base.py b/deker_server_adapters/base.py index 9a107dd..0723b3d 100644 --- a/deker_server_adapters/base.py +++ b/deker_server_adapters/base.py @@ -263,12 +263,14 @@ def read_data( message=f"Timeout on {self.type.name} read {array}", ) - numpy_array = res.json # type: ignore[call-overload] - shape = array[bounds].shape - if not shape and numpy_array.size: - return numpy_array[0] + data = res.json # type: ignore[call-overload] + if isinstance(data, list): + data = np.array(data, dtype=array.dtype) + np_array = np.array(data).reshape(array.shape) + else: + np_array = array.dtype(data) - return numpy_array + return np_array def update(self, array: "BaseArray", bounds: Slice, data: Numeric) -> None: """Update array/varray on server.