jrevels opened a new pull request #305:
URL: https://github.com/apache/arrow-julia/pull/305
Potential fix for #232, implements the simple check suggested by @quinnj in
that thread.
This is technically breaking - the following works on `main` just fine, but
will error after this PR due to the check:
```jl
julia> Arrow.Table(Arrow.tobuffer((; x = [Dict{Real,Real}(1 => 2)])))
Arrow.Table with 1 rows, 1 columns, and schema:
:x Dict{Int64, Int64}
```
IMO dropping support for nonconcrete keytypes/valtypes is preferable to the
silent failure, but it would be good if we can have our cake and eat it too
(which I think @quinnj 's other suggestion was referring to).
@quinnj , when you mentioned:
> similar to what we do w/ arrays, we should probably try to enforce the
Dict valtype with the concrete_or_concreteunion machinery in ArrowTypes.jl.
did you mean basically implementing a `Dict`-like version of
https://github.com/apache/arrow-julia/blob/f88a62e0b6458ed6ea0439fc371f2e4ee0e039a7/src/ArrowTypes/src/ArrowTypes.jl#L336-L357,
and wrapping incoming map-likes in that?
I can take a stab at that too, if so, but might not get time to do so this
week; in that case, it might be worth folding this in earlier (since the silent
failure mode here is pretty bad, IMO) and then recovering the functionality in
a subsequent release. Up to you, though.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]