Releases: tomas-abrahamsson/gpb
Releases · tomas-abrahamsson/gpb
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)
Release 4.19.8
Version 4.19.8
2023-Aug-06
- Fix code generation for options mapfields_as_maps and json (#227)
- Support Google protobuf 22.0 and later with NIFs and JSON.
- Include enough Erlang/OTP apps in the plt so that there are no
dialyzer issues with Erlang 26. - Don't generate gpb_version.hrl unnecessarily.
Release 4.19.7
Version 4.19.7
2023-Feb-04
- Support Google protobuf 3.16 and later with nifs.
- Add an option {gen_verifiers, false} (no-gen-verifiers).
This implies {verify, never} (-v never) - Don't emit -include("gpb.hrl") when not generating introspection
functions. It is not needed.
Release 4.19.6
Release 4.19.5
Version 4.19.5
2022-Mar-17
- Fix a bug with the import_fetcher option and multiple imports.
An error {multiply_defined_file_or_files,["from_fetched.proto"]}
could occur and the defs would refer to the wrong proto file.