Releases: tomas-abrahamsson/gpb
Releases · tomas-abrahamsson/gpb
Release 4.21.7
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
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
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
Version 4.21.4
2025-Aug-13
- Support Google protobuf 30.0 and later with NIFs.
Release 4.21.3
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
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
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
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
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
Version 4.19.9
2023-Aug-06
- Fix verifiers to catch floats for int fields. (#228)