Closed bachdavi closed 2 years ago
Hey @bachdavi, thanks for the report! All these maybe_ensure_room
are highly approximate and strictly optional, sorry this crashed on you. I'll look into something more robust to use instead of sizeof
for structs. Good job on the workaround, though!
I'll note that I wouldn't in general recommend using the package until https://github.com/Drvi/ProtocolBuffers.jl/pull/12 is merged (hopefully today/tomorrow), as some protos with relatively complex dependencies are not resolved correctly on master.
Thank you @Drvi and thank you for writing this package 🙂 It is a great improvement! Do you intend to register it when #12 is merged?
@bachdavi I think once https://github.com/Drvi/ProtocolBuffers.jl/pull/12 is done, we'll be in pretty releasable state:)
I'm currently trying to get all of https://github.com/googleapis/googleapis
to work (parsing, translating and importing is very close to working)... The repo contains cca 3700 proto files totalling~ 900k LOC. This exposes some design issues (Julia doesn't really like importing 900k LOC packages, for example), I'd like to get these foundations right before we go public.
Hey, @bachdavi! I pushed a fix for this issue, could you verify this now works for you? Some more PRs have been merged since so you'll have to re-generate your code which will now produce code with different module names (apologies, but there is a reason for the change).
Sorry for the delay, the streak of me mispredicting time to finish a programming task keeps on going.
I, experimentally ;), used your package for our JuliaSDK, https://github.com/RelationalAI/rai-sdk-julia/pull/60, and have encountered a problem when encoding a struct. We have a mutually recursive type
RelType
that is parameterized by two types:In our tree structure, we have a type that contains a
Vector
of theseRelType
s:When using
encode
to encode this type we get the following error:I tried to more specifically type the
RelationId
struct by adding type bounds to it, but either it's still not definitive, or we cannot construct the type. As a workaround, I added an overload for the encode for this specific type: