Skip to content

Releases: tomas-abrahamsson/gpb

Release 4.21.7

06 Feb 22:57

Choose a tag to compare

Version 4.21.7
2025-Feb-06

  • Adapt for Erlang 29 (based on current OTP master, thus a
    current guesstimate of needed changes)
    The generated code already worked with Erlang 29, but gpb
    itself needed some fixes to compile cleanly.

Release 4.21.6

18 Dec 20:51

Choose a tag to compare

Version 4.21.6
2025-Dec-18

  • Bugfix unnecessary funtions with map type fields and
    options {gen_decoders,false} or {gen_encoders,false} (Options
    -no_gen_decoders or -no_gen_encoders) resulting in
    compilation warnings. (#242)

Release 4.21.5

14 Sep 16:45

Choose a tag to compare

Version 4.21.5
2025-Sep-14

  • Bugfix verification and decoding for flat oneof with
    maps with binary keys. Thanks to Thales Macedo Garitezi. (#239)

Release 4.21.4

13 Aug 13:03

Choose a tag to compare

Version 4.21.4
2025-Aug-13

  • Support Google protobuf 30.0 and later with NIFs.

Release 4.21.3

13 Jan 18:44

Choose a tag to compare

Version 4.21.3
2025-Jan-13

  • Add priv/proto3/google/protobuf/LICENSE covering
    the .proto files in that directory. Thanks to Peter Lemenkov.

Release 4.21.2

28 Dec 17:53

Choose a tag to compare

Version 4.21.2
2024-Dec-28

  • Add a missing option to the gpb_defs:def() type. Thanks to
    Paulo F. Oliveira. (#236)
  • Support Google protobuf 26.0 and later with NIGs and JSON.
    This version of Google protobuf deprecates the JSON option
    always_print_primitive_fields and adds another option, the
    always_print_fields_with_no_presence. Gpb now supports both
    options. In gpb they both have the same behaviour as the
    always_print_fields_with_no_presence option. For proto3
    optional fields with omitted values, this brings a change,
    in that the such fields are now printed for JSON.

Release 4.21.1

19 Feb 21:01

Choose a tag to compare

Version 4.21.1
2024-Feb-19

  • Emit @generated to mitigate a performance issue with ELP (#233)
  • Update to support Erlang 27
  • Bugfix edoc for {json_format, maps}

Release 4.21.0

07 Jan 15:15

Choose a tag to compare

Version 4.21.0
2024-Jan-07

  • Update the set of Google well-known protos by
    importing from protobuf 4.25.1. Thanks to Gilbert. (#231)
  • Add the possibility to parse a descriptor back to
    gpb-internal definitions.
  • Fix several minor bugs in the generation of descriptors.
  • Set a minimum heap size to benchmarks to avoid excessive gc.

Release 4.20.0

01 Oct 19:50

Choose a tag to compare

Version 4.20.0
2023-Oct-01

  • Add an option enum_macros (-gen-enum-macros) to generate macros for
    enum values, with the intention to make it possible to catch
    enumerator symbol changes already in compile-time (#229)
    Add sub-options {rename,{What,uppercase}}
    and {rename,{enum_macros,How}} (corresponding to
    -rename What:uppercase and -rename enum_macro:How)
  • Add an option allow_preencoded_submsgs to specify a binary
    for a sub-message. The intention is to make it encoding faster
    if sub-messages are already known or occur several times. (#220)
  • Add options {gen_encoders,bool()} and {gen_decoders,bool()}
    to make it possible to omit encoders or decoders. The intention is
    is to make it possible to shrink the footprint when not only
    encoding or decoding is needed.
  • Bugfix the cmd line option -rename What:lowercase.
  • Support Erlang 26.1 and later. In Erlang 26.1 and later, exact
    comparison with zero must now be written as +0.0 or -0.0, as a
    preparation for Erlang 27. This is for both generated code
    and in gpb eunit tests. (#230)

Release 4.19.9

28 Aug 17:44

Choose a tag to compare

Version 4.19.9
2023-Aug-06

  • Fix verifiers to catch floats for int fields. (#228)