1 nanopb-0.3.1 (2014-09-11)
2 Fix security issue due to size_t overflows. (issue 132)
3 Fix memory leak with duplicated fields and PB_ENABLE_MALLOC
4 Fix crash if pb_release() is called twice.
5 Fix cyclic message support (issue 130)
6 Fix error in generated initializers for repeated pointer fields.
7 Improve tests (issues 113, 126)
9 nanopb-0.3.0 (2014-08-26)
10 NOTE: See docs/migration.html or online at
11 http://koti.kapsi.fi/~jpa/nanopb/docs/migration.html
12 for changes in this version. Most importantly, you need to add
13 pb_common.c to the list of files to compile.
15 Separated field iterator logic to pb_common.c (issue 128)
16 Change the _count fields to use pb_size_t datatype (issue 82)
17 Added PB_ prefix to macro names (issue 106)
18 Added #if version guard to generated files (issue 129)
19 Added migration document
21 nanopb-0.2.9 (2014-08-09)
22 NOTE: If you are using the -e option with the generator, you have
23 to prepend . to the argument to get the same behaviour as before.
25 Do not automatically add a dot with generator -e option. (issue 122)
26 Fix problem with .options file and extension fields. (issue 125)
27 Don't use SIZE_MAX macro, as it is not in C89. (issue 120)
28 Generate #defines for initializing message structures. (issue 79)
29 Add skip_message option to generator. (issue 121)
30 Add PB_PACKED_STRUCT support for Keil MDK-ARM toolchain (issue 119)
31 Give better messages about the .options file path. (issue 124)
34 nanopb-0.2.8 (2014-05-20)
35 Fix security issue with PB_ENABLE_MALLOC. (issue 117)
36 Add option to not add timestamps to .pb.h and .pb.c preambles. (issue 115)
40 nanopb-0.2.7 (2014-04-07)
41 Fix bug with default values for extension fields (issue 111)
42 Fix some MISRA-C warnings (issue 91)
43 Implemented optional malloc() support (issue 80)
44 Changed pointer-type bytes field datatype
45 Add a "found" field to pb_extension_t (issue 112)
46 Add convenience function pb_get_encoded_size() (issue 16)
48 nanopb-0.2.6 (2014-02-15)
49 Fix generator error with bytes callback fields (issue 99)
50 Fix warnings about large integer constants (issue 102)
51 Add comments to where STATIC_ASSERT is used (issue 96)
52 Add warning about unknown field names on .options (issue 105)
53 Move descriptor.proto to google/protobuf subdirectory (issue 104)
56 nanopb-0.2.5 (2014-01-01)
57 Fix a bug with encoding negative values in int32 fields (issue 97)
58 Create binary packages of the generator + dependencies (issue 47)
59 Add support for pointer-type fields to the encoder (part of issue 80)
60 Fixed path in FindNanopb.cmake (issue 94)
63 nanopb-0.2.4 (2013-11-07)
64 Remove the deprecated NANOPB_INTERNALS functions from public API.
65 Document the security model.
66 Check array and bytes max sizes when encoding (issue 90)
67 Add #defines for maximum encoded message size (issue 89)
68 Add #define tags for extension fields (issue 93)
69 Fix MISRA C violations (issue 91)
70 Clean up pb_field_t definition with typedefs.
72 nanopb-0.2.3 (2013-09-18)
73 Improve compatibility by removing ternary operator from initializations (issue 88)
74 Fix build error on Visual C++ (issue 84, patch by Markus Schwarzenberg)
75 Don't stop on unsupported extension fields (issue 83)
76 Add an example pb_syshdr.h file for non-C99 compilers
77 Reorganize tests and examples into subfolders (issue 63)
78 Switch from Makefiles to scons for building the tests
79 Make the tests buildable on Windows
81 nanopb-0.2.2 (2013-08-18)
82 Add support for extension fields (issue 17)
83 Fix unknown fields in empty message (issue 78)
84 Include the field tags in the generated .pb.h file.
85 Add pb_decode_delimited and pb_encode_delimited wrapper functions (issue 74)
86 Add a section in top of pb.h for changing compilation settings (issue 76)
87 Documentation improvements (issues 12, 77 and others)
90 nanopb-0.2.1 (2013-04-14)
91 NOTE: The default callback function signature has changed.
92 If you don't want to update your code, define PB_OLD_CALLBACK_STYLE.
94 Change the callback function to use void** (issue 69)
95 Add support for defining the nanopb options in a separate file (issue 12)
96 Add support for packed structs in IAR and MSVC (in addition to GCC) (issue 66)
97 Implement error message support for the encoder side (issue 7)
98 Handle unterminated strings when encoding (issue 68)
99 Fix bug with empty strings in repeated string callbacks (issue 73)
100 Fix regression in 0.2.0 with optional callback fields (issue 70)
101 Fix bugs with empty message types (issues 64, 65)
102 Fix some compiler warnings on clang (issue 67)
103 Some portability improvements (issues 60, 62)
104 Various new generator options
107 nanopb-0.2.0 (2013-03-02)
108 NOTE: This release requires you to regenerate all .pb.c
109 files. Files generated by older versions will not
112 Reformat generated .pb.c files using macros (issue 58)
113 Rename PB_HTYPE_ARRAY -> PB_HTYPE_REPEATED
114 Separate PB_HTYPE to PB_ATYPE and PB_HTYPE
115 Move STATIC_ASSERTs to .pb.c file
116 Added CMake file (by Pavel Ilin)
117 Add option to give file extension to generator (by Michael Haberler)
118 Documentation updates
120 nanopb-0.1.9 (2013-02-13)
121 Fixed error message bugs (issues 52, 56)
122 Sanitize #ifndef filename (issue 50)
123 Performance improvements
124 Add compile-time option PB_BUFFER_ONLY
125 Add Java package name to nanopb.proto
126 Check for sizeof(double) == 8 (issue 54)
127 Added generator option to ignore some fields. (issue 51)
128 Added generator option to make message structs packed. (issue 49)
131 nanopb-0.1.8 (2012-12-13)
132 Fix bugs in the enum short names introduced in 0.1.7 (issues 42, 43)
133 Fix STATIC_ASSERT macro when using multiple .proto files. (issue 41)
134 Fix missing initialization of istream.errmsg
135 Make tests/Makefile work for non-gcc compilers (issue 40)
137 nanopb-0.1.7 (2012-11-11)
138 Remove "skip" mode from pb_istream_t callbacks. Example implementation had a bug. (issue 37)
139 Add option to use shorter names for enum values (issue 38)
140 Improve options support in generator (issues 12, 30)
141 Add nanopb version number to generated files (issue 36)
142 Add extern "C" to generated headers (issue 35)
143 Add names for structs to allow forward declaration (issue 39)
144 Add buffer size check in example (issue 34)
145 Fix build warnings on MS compilers (issue 33)
147 nanopb-0.1.6 (2012-09-02)
148 Reorganize the field decoder interface (issue 2)
149 Improve performance in submessage decoding (issue 28)
150 Implement error messages in the decoder side (issue 7)
151 Extended testcases (alltypes test is now complete).
152 Fix some compiler warnings (issues 25, 26, 27, 32).
154 nanopb-0.1.5 (2012-08-04)
155 Fix bug in decoder with packed arrays (issue 23).
157 Fix some compiler warnings.
159 nanopb-0.1.4 (2012-07-05)
160 Add compile-time options for easy-to-use >255 field support.
161 Improve the detection of missing required fields.
162 Added example on how to handle union messages.
163 Fix generator error with .proto without messages.
164 Fix problems that stopped the code from compiling with some compilers.
165 Fix some compiler warnings.
167 nanopb-0.1.3 (2012-06-12)
168 Refactor the field encoder interface.
169 Improve generator error messages (issue 5)
170 Add descriptor.proto into the #include exclusion list
171 Fix some compiler warnings.
173 nanopb-0.1.2 (2012-02-15)
174 Make the generator to generate include for other .proto files (issue 4).
175 Fixed generator not working on Windows (issue 3)
177 nanopb-0.1.1 (2012-01-14)
178 Fixed bug in encoder with 'bytes' fields (issue 1).
179 Fixed a bug in the generator that caused a compiler error on sfixed32 and sfixed64 fields.
182 nanopb-0.1.0 (2012-01-06)
183 First stable release.