+1 (non-binding)
Thank you very much for bringing the go SDK. I have some suggestions for your roadmap. We can first create an GraphInfo (Yaml) parsing system like `java-info`. Then we will discuss the technology stack of the file system to read and write data in parquet/orc. For the file structure, we can refer to other apache go projects. Thanks Xiaokang Yang On 2026/01/20 15:45:20 "Zeki (Zeyu Liu)" wrote: > Hello GAR Community! > > I hope this email finds you well. > > I am Zeki (Zeyu Liu), a developer interested in building Go support for > GraphAr. > > Following the discussion in [#540 > [1]](https://github.com/apache/incubator-graphar/discussions/540) and [#828 > [2]](https://github.com/apache/incubator-graphar/issues/828), I would like to > propose a phased approach for the Go SDK. > > Initially, I plan to implement the info package natively in Go, drawing > inspiration from the java-info implementation and other language SDKs' best > practices to ensure ease of use and maintainability. > > For the write path, I suggest leveraging CGO (the mechanism for calling C/C++ > from Go) to call the core capabilities of the existing C++ library to ensure > functional alignment. > > In the future, we can consider native Go implementations for high-frequency > community requirements as needed. > > My initial roadmap is focused on: > > Part 1: Implement the info package and support for the local filesystem. > > Part 2: Introduce storage abstraction (e.g., S3) after the core logic is > stable. > > I have submitted a minimal PR [#829 > [3]](https://github.com/apache/incubator-graphar/pull/829), which includes a > placeholder Go module and a basic CI workflow to bootstrap the project. > > I would appreciate your feedback on this hybrid approach (Native + CGO) and > the project structure. > > Best regards, > Zeki (Zeyu Liu) > > --- > > References: > [1] https://github.com/apache/incubator-graphar/discussions/540 > [2] https://github.com/apache/incubator-graphar/issues/828 > [3] https://github.com/apache/incubator-graphar/pull/829 --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
