feat: update to Substrait 0.43, add min. precision timestamp support#124
feat: update to Substrait 0.43, add min. precision timestamp support#124ingomueller-net wants to merge 1 commit intosubstrait-io:mainfrom
Conversation
Update to Substrait v0.43.0, which is the next version, and add minimal support for precision timestamp support, which is the main change since the previously used v0.42.1. The minimal support is achieved by adding the new type cases to the type switches, where they either produce "not implemented" errors or do the simple functionality of setting nullability of the type, as well as suppressing warnings of using depcreated protobuf accessors in the places where these were not suppressed yet. Signed-off-by: Ingo Müller <ingomueller@google.com>
|
I have a couple of subsequent changes that bring this repo up to date with the current version of the main repo and will push them in a bit. |
|
I just realized that the minimal changes are not enough and that the full type implementation is required. I have no intention in doing that. I have started here, tough, so if someone wants to pick it up, feel free... |
The remaining changes related to renaming the join types, which is trivial, and introducing another type, which I also have no intention implementing at the moment, so I'll abandon those changes. |
EpsilonPrime
left a comment
There was a problem hiding this comment.
Thanks for the fix! Adding support for the new join types are on my list.
|
Thanks, @EpsilonPrime, for approving! Note, though, that there is quite some work left, which I had underestimated when I started. The problem is that the precision timestamps appear in some function signatures, which are loaded as part of the function tests, which means that these types actually need to be implemented. |
|
One way around that, which may be a good idea anyways, could be to (optionally?) allow loading the function library partially, i.e., to ignore unsupported functions. |
Update to Substrait v0.43.0, which is the next version, and add minimal support for precision timestamp support, which is the main change since the previously used v0.42.1. The minimal support is achieved by adding the new type cases to the type switches, where they either produce "not implemented" errors or do the simple functionality of setting nullability of the type, as well as suppressing warnings of using depcreated protobuf accessors in the places where these were not suppressed yet.