bitwalker / bitwalker/exprotobuf

ExProtobuf fails with gpb 4.13

Open
#113 1 comment 1 reaction 0 assignees View on GitHub
Dominant language
Elixir
Stars
482
Forks
68
PR merge metrics
No merged PRs in 30d

Description

Crash message:
```
== Compilation error in file lib/astarte_rpc/protocol/data_updater_plant.ex ==
** (CaseClauseError) no case clause matching: %Protobuf.Field{fnum: 1, name: :version, occurrence: :defaulty, opts: [], rnum: 2, type: :int32}
lib/exprotobuf/define_message.ex:147: Protobuf.DefineMessage.define_trivial_typespec_fields/2
lib/exprotobuf/define_message.ex:135: Protobuf.DefineMessage.define_trivial_typespec/1
lib/exprotobuf/define_message.ex:54: Protobuf.DefineMessage.def_message/3
lib/exprotobuf/builder.ex:135: anonymous fn/6 in Protobuf.Builder.generate/2
(elixir 1.10.3) lib/enum.ex:2111: Enum."-reduce/3-lists^foldl/2-0-"/3
lib/exprotobuf/builder.ex:82: Protobuf.Builder.generate/2
(stdlib 3.13) erl_eval.erl:680: :erl_eval.do_apply/6
(stdlib 3.13) erl_eval.erl:449: :erl_eval.expr/5
```
[This](https://elixirforum.com/t/ex-protobuf-not-parsing-proto-file/32807) also seems another instance of the same problem.

It seems that gpb 4.13 [changed its internal structure](https://github.com/tomas-abrahamsson/gpb/commit/a3633259d7a41e16fd2c83fab2f13d64265817f8) and ExProtobuf does not handle the `:defaulty` occurrence.

I've opened #112 to fix the problem

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.