array_io: _write_chunks fails and runs into RecursionLimit when chunksize is (1,)
The issue is that a slice(0, 1) returns an identical object:
for chunksize in chunksizes:
end = start + chunksize
b = a.isel({dim: slice(start, end)})
# Recurse
_write_chunks(b, pattern, d, nodata, dtype, write)
a.identical(b) == True
Maybe easiest to special case it?
if nochunks or dim_is_xy or chunksizes == (1,): # Base case