Thanks Jason for recommending the above package. However, it seems to cover only basic types and lack the ability to handle `struct`s.
Also, thanks for pointing out the important issue of versioning. I agree versioning is extremely critical, and I wonder why the Rust community never thought of that. Bincode and Borsh <https://borsh.io/> are used by 99% of Rust programmers and yet both don't seem to do versioning. On Sunday, June 21, 2026 at 1:33:30 PM UTC+8 Jason E. Aten wrote: > There is > https://github.com/diem/serde-reflection-diem/tree/main/serde-generate/runtime/golang/bincode > but I would strongly recommend using a serialization format that allows > for struct field versioning instead. > > Otherwise the moment you need to change your data structure, all other > already stored data becomes > lost. Google needed field versioning so instead of using classic Sun XDR > RPC, they created protocol buffers. > This let them do rolling cluster upgrades, as just one example, without > taking down an > entire cluster of hundreds of computers at once to upgrade all the > software on all machines in unison. > > For more, see the discussion in the greenpack README. Greenpack is simply > msgpack with a versioning convention. > https://github.com/glycerine/greenpack > > On Saturday, June 20, 2026 at 10:12:51 AM UTC-3 [email protected] wrote: > >> One of the most popular serializing/deserializing format in Rust is >> bincode >> <https://git.sr.ht/~stygianentity/bincode/tree/trunk/item/docs/spec.md#collections> >> . >> I wonder is there a Go package for dealing with data encoded in the above >> bincode format? >> Thanks! >> > -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion visit https://groups.google.com/d/msgid/golang-nuts/249779f6-ccd7-4ad9-b848-b704f3d2d1a3n%40googlegroups.com.
