Hi Renji,

Sorry about that yes it is! I sent it in, but realised that it wasn't
showing up because I wasn't subscribed to the mailing list, so I subscribed
and then resubmitted after talking to Xuanwo on Slack.

Is there a way to close this accidental duplicate thread?

On 6 Aug 2024 at 5:06:40 PM, Renjie Liu <liurenjie2...@gmail.com> wrote:

> Hi, Chris:
>
> Seems duplicated with this thread
> <https://lists.apache.org/thread/7tw9qzz7yd8c4d7tcrwpmn7k0ojws7zh>
>
> On Tue, Aug 6, 2024 at 12:54 AM Chris Atkins <chri...@buildkite.com.invalid>
> wrote:
>
>> Hi there,
>>
>> I'm following up on a discussion
>> <https://apache-iceberg.slack.com/archives/C05HTENMJG4/p1722750831522969> 
>> from
>> the #rust channel on the Iceberg community slack, so starting a thread here
>> too.
>>
>> After seeing Xuanwo's and Song's recent proposals around leveraging
>> iceberg-rust to power parts of PyIceberg, I was thinking it could be
>> valuable to follow a similar pattern to build out Ruby bindings for
>> Iceberg. Being able to stand on the shoulders of iceberg-rust could really
>> help build out a robust Ruby interface, and also offer some opportunities
>> for interop with things like datafusion and opendal.
>>
>> Recently in the Ruby ecosystem, writing native extensions in Rust has
>> become more popular, and tools like rb-sys and magnus provide a lot of the
>> required infrastructure. A good example is ruby-polars, which provides an
>> interface that is idiomatic Ruby but retains good symmetry with the APIs
>> exposed by py-polars. I wonder if we could eventually aim for a similar
>> type of symmetry between PyIceberg and a Ruby gem?
>>
>> Is there much interest in this? I've started playing around with some of
>> the basics, and started out with a plain native Ruby implementation of some
>> of the basic metadata APIs, but quickly realised that building on
>> iceberg-rust could be more productive than writing it all from scratch.
>>
>> *References*
>>
>> https://lists.apache.org/thread/5570vbdkrk7mdswt4jqy45lv7y58pz4b
>> https://lists.apache.org/thread/33c0nkc3k6646lvro1lv22pvhwlp50ss
>> https://github.com/apache/iceberg-rust/pull/518
>>
>> *Prior Art in Ruby*
>>
>> https://github.com/matsadler/magnus
>> https://github.com/oxidize-rb/rb-sys
>> https://github.com/ankane/ruby-polars
>> https://github.com/apache/opendal/tree/main/bindings/ruby
>>
>> Thanks,
>> Chris Atkins
>>
>

Reply via email to