Related
Description
(#3189 (comment))
an intentional choice to be permissive-in & strict-out
I think the idea is:
- permissive-in: if a user does nothing with a column (i.e. just passes it around), it makes not sense for us to raise an exception early on
- strict-out: we don't really have any other options - if a backend does not support a dtype, what else should we do if not raising an error?
We should add tests so that regressing on this (like I tried to) is caught locally.
The intended behavior is we return nw.Unknown()