Message fields with type sint32 are not being decoded correctly?
Making this on behalf of the person on /r/lisp since they don't seem to have a gitlab instance account. See: https://www.reddit.com/r/lisp/comments/3ua7kf/clprotobufs_bug/. Description from reddit post pasted below.
I really like cl-protobufs (https://gitlab.common-lisp.net/qitab/cl-protobufs[1] ). It's one of my favourite libraries. However I recently stumbled into what I think may be a bug.
Message fields with a type of sint32 are not being decoded correctly. sint32 values from C++ program are decoded into lisp with values twice the size of the originals. Suggests zig-zag encoding from C++ is not decoded correctly at the lisp end. I had a rummage in the internals, and discovered that it doesn't appear to be an error parsing the .proto file, rather the types associated with the fields are not correct. The reason I don't think it's a parsing error is I get the same field class type when loading from the DSL. Anyone got any ideas?
(proto-impl:proto-class (first (proto-impl:proto-fields (gethash
'msgs:person protobufs-implementation:*all-messages*))))
Anyone know who the maintainer of cl-protobufs is these days?