apache / apache/arrow-julia

flatc support for the FlatBuffer submodule

Open
#260 2 comments 2 reactions 0 assignees View on GitHub
Dominant language
Julia
Stars
312
Forks
78
PR merge metrics
No merged PRs in 30d

Description

(the following is a slightly rewritten version of a slack post at the arrow-dev channel)

I am interested in contributing to getting [flatc](https://google.github.io/flatbuffers/flatbuffers_guide_using_schema_compiler.html) support for julia.

I have a [WIP fork of the official flatbuffers repo](https://github.com/jonalm/flatbuffers) which provides some flatc support for the flatbuffer implementation in Arrow.jl. I’ve hijacket the go implementation (I haven’t figured out how to add a new cli option to the flatc command yet). The example of the features which are currently working are shown in this [gist](https://gist.github.com/jonalm/aa2ee7a0346558827218f012c0544272) (i.e. some serialize-deserialize tests). And the code output is shown [here](https://gist.github.com/jonalm/1315ed53f0205ea6e2d97531c78d6b26) . The functionality is basically inspired by the files at `/src/metadata`, and are not complete wrt flatbuffer features, as I’m a bit uncertain about how to proceed with, e.g. union types, mutation functionality, getting struct fields from structs etc.

Before I continue this work, I would like to know whether this work would be supported by the main devs of Arrow.jl, and also if would be possible to move the FlatBuffer submodule of Arrow.jl into it's own repo?

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with the FlatBuffers schema compiler documentation and the existing Arrow.jl implementation under /src/metadata, then review the linked fork and serialize-deserialize examples. The issue does not define a settled scope; completion would require agreeing on flatc integration, supported features such as unions and mutation, and the submodule's repository ownership.

Written by the indexing model from the issue text.

Assessment

Tech stack
julia
Domain
data
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.