add init_array, and data kwarg for create_array#2761
add init_array, and data kwarg for create_array#2761d-v-b merged 11 commits intozarr-developers:mainfrom
Conversation
|
Thank you |
|
Nice! I think it would be helpful to not hide away the change to |
good idea, I'll split it out |
|
#2763 should go in before this |
|
The tests look good. |
|
tests are actually incomplete -- I didn't test the synchronous version of |
|
I will get that in this evening |
Co-authored-by: Deepak Cherian <dcherian@users.noreply.github.com>
|
@dstansby any idea why the release notes bot does not believe that I have added release notes? Is there something messed up with my release notes? |
Moves much of the logic currently contained in
create_arraydown to a lower-level function calledinit_array, that creates array metadata + saves it to storage.By popular request, I added a keyword argument to
create_array:data, that allows users to provide an array-like object (default isNone), from which dtype and shape can be inferred. I'm not a fan of what this does to the function signature, but at lot of people wanted this 🤷♂️dtypeandshapenow default toNone. If you specifydataanddtype, then you get a warning aboutdtypebeing ignored in favor ofdata.dtype, and similarly forshape.In parallel with #2622, I also added a
write_datakwarg that controls whetherdatais written to the freshly created array. The default value here isTrue, which IMO is unsafe, but also requested by users.As an indulgence. I also made some minor changes to the type aliases for
ChunkKeyEncoding-- what we were callingChunkKeyEncodingLikewas actually a typeddict that should beChunkKeyEncodingParams, andChunkKeyEncodingLikeshould beChunkKeyEncoding | ChunkKeyEncodingParams.closes #2707, and partially addresses concerns raised in #2689
TODO:
docs/user-guide/*.rstchanges/