Petteri Aimonen
4f37c083d5
Negative int32 values take 10 bytes now.
2013-12-22 23:24:02 +02:00
Petteri Aimonen
321ca6c1d5
Setting version to 0.2.5-dev
2013-11-07 16:47:14 +02:00
Petteri Aimonen
935a26ab1c
Publishing nanopb-0.2.4
2013-11-07 16:44:41 +02:00
Petteri Aimonen
dcdd7f98fd
Generate #define tags for extension fields also.
...
Update issue 93
Status: FixedInGit
2013-11-02 22:05:49 +02:00
Petteri Aimonen
86d6983156
Same fix for EncodedSize.__mul__
2013-10-24 09:52:40 +03:00
Petteri Aimonen
0848255d4a
Handle also longs in EncodedSize
2013-10-24 08:44:59 +03:00
Petteri Aimonen
51f0e47295
Fix the size of length prefix for messages in other files.
2013-10-23 21:21:43 +03:00
Petteri Aimonen
49bd3f35a0
Generate message size #defines also for messages defined in multiple files.
...
Add testcase for the same.
2013-10-23 21:01:11 +03:00
Petteri Aimonen
388d4de833
Add #defines for the maximum encoded message size.
...
Update issue 89
Status: FixedInGit
2013-09-26 10:23:37 +03:00
Petteri Aimonen
2363af29a2
Setting version to 0.2.4-dev
2013-09-18 12:47:32 +03:00
Petteri Aimonen
283a8f36cb
Publishing nanopb-0.2.3
2013-09-18 12:44:46 +03:00
Petteri Aimonen
9ada7e7525
Fine-tune the naming of new macros before merging into master.
...
Requires re-generation of files generated with dev_get_rid_of_ternary_operator.
2013-09-13 11:30:58 +03:00
Petteri Aimonen
840e213b9f
Get rid of the ternary operator in the pb_field_t initialization.
...
Some compilers where unable to detect that the ternary operator
can be evaluated at the compile time. This commit does the evaluation
on the Python side, which should fix the problem.
The new .pb.c files are generated using PB_FIELD2() macro. The old
PB_FIELD() macro remains, so that previously generated files keep
working.
2013-09-11 09:53:51 +03:00
Petteri Aimonen
4821e7f457
Add support for running the nanopb generator as protoc plugin.
...
Will be used to implement issue 47.
For now, symlink nanopb_generator.py as protoc-gen-nanopb and
use protoc --nanopb_out=. to call it.
2013-09-08 19:55:05 +03:00
Petteri Aimonen
d7f3a74388
Handle unsupported extension field types more gracefully.
...
Previously the generator would stop with NotImplementedException as
soon as a required or repeated extension field is found. New behaviour
is to just ignore the unsupported field and note that in a comment
in the generated file.
Furthermore, allow skipping of extension fields using the generator
option (nanopb).type = FT_IGNORE.
Update issue 83
Status: FixedInGit
2013-09-08 11:05:20 +03:00
Petteri Aimonen
4aef194a99
Setting version to 0.2.3-dev
2013-08-18 22:12:31 +03:00
Petteri Aimonen
81cf30034b
Publishing nanopb-0.2.2
2013-08-18 22:11:38 +03:00
Petteri Aimonen
1f13e8cd2c
Fix bugs in extension support when multiple extension fields are present.
2013-07-22 18:59:15 +03:00
Petteri Aimonen
64947cb382
Extension support implemented for decoder.
...
Testing is still needed. Also only 'optional' extension fields
are supported now, 'repeated' fields are not yet supported.
2013-07-17 20:21:51 +03:00
Petteri Aimonen
7c5e184c26
Implement generator support for extension fields (no encoder/decoder support yet)
2013-07-17 00:06:54 +03:00
Petteri Aimonen
a1cec46b3e
Include the field tags in the generated .pb.h file.
...
Patch from Michael Haberler.
2013-06-03 22:46:19 +03:00
Petteri Aimonen
bfd7cb36b9
Setting version to 0.2.2-dev
2013-04-14 10:07:46 +03:00
Petteri Aimonen
ef741ea530
Publishing nanopb-0.2.1
2013-04-14 10:06:47 +03:00
Petteri Aimonen
384e686fe6
Do not generate has_ fields for callback fields.
...
The arg field can be used to store the field presence from inside
the callback. Furthermore, having the has_ field for encoding callbacks
would be more annoying than useful.
Update issue 70
Status: FixedInGit
2013-04-02 20:01:31 +03:00
Petteri Aimonen
1396dce2ae
Add support for packed structures on IAR and MSVC.
...
Update issue 66
Status: FixedInGit
2013-03-13 15:22:00 +02:00
Petteri Aimonen
6468f23d23
Make the generator options accept a file name in addition to format string.
2013-03-09 23:03:09 +02:00
Petteri Aimonen
6f8dbc73eb
Add simple support for separate options file.
...
Update issue 12
Still needs documentation.
2013-03-09 14:21:21 +02:00
Petteri Aimonen
5522e02133
Add a dummy field if struct would otherwise be empty.
...
Update issue 64
Status: FixedInGit
2013-03-06 18:02:57 +02:00
Petteri Aimonen
64bf72d73d
Add generator option to configure #include directives.
...
This suits complex projects, where there are multiple interdependent .proto files
in various directories. Patch by Michael Haberler.
2013-03-04 19:27:42 +02:00
Petteri Aimonen
104710b26c
Setting version to 0.2.1-dev
2013-03-02 16:35:17 +02:00
Petteri Aimonen
c8e0732e6b
Publishing nanopb-0.2.0
2013-03-02 16:32:54 +02:00
Petteri Aimonen
0e3053894f
Add --extension option to generator.
...
Patch courtesy of Michael Haberler.
2013-02-28 16:42:34 +02:00
Petteri Aimonen
80a2d33fa9
Move STATIC_ASSERTs to .pb.c file.
...
This way the .pb.h will remain cleaner and easier to read.
2013-02-21 19:35:20 +02:00
Petteri Aimonen
258ba8335d
Reformat generated .pb.c files using macros.
...
This has the following advantages:
1) Easier to modify pb_field_t encoding
2) Simpler generator logic
3) Tidier looking, easier to read .pb.c files
Update issue 58
Status: FixedInGit
2013-02-17 00:10:47 +02:00
Petteri Aimonen
c1a355b23e
Set version to 0.2.0-dev
2013-02-11 21:54:24 +02:00
Petteri Aimonen
e7bf063abc
Add check for sizeof(double) == 8.
...
Update issue 54
Status: FixedInGit
2013-02-07 17:48:50 +02:00
Petteri Aimonen
47b10ec0ab
Sanitize filenames before putting them in #ifndef.
...
Update issue 50
Status: FixedInGit
2013-02-07 17:40:17 +02:00
Petteri Aimonen
d32d322658
Add field type FT_IGNORE to generator.
...
This allows ignoring fields that are unnecessary or too large for an
embedded system using nanopb, while allowing them to remain in the .proto
for other platforms.
Update issue 51
Status: FixedInGit
2013-01-14 17:30:49 +02:00
Petteri Aimonen
d2c1604d6d
Add generator option for packed structs.
...
Usage is:
message Foo
{
option (nanopb_msgopt).packed_struct = true;
...
}
Valid also in file scope.
Update issue 49
Status: FixedInGit
2013-01-10 17:32:27 +02:00
Petteri Aimonen
bb5dc04584
Setting version to 0.1.9-dev
2012-12-13 21:32:37 +02:00
Petteri Aimonen
09ec60cadf
Publishing nanopb-0.1.8
2012-12-13 21:29:57 +02:00
Steffen Siering
cc29958d34
Fix STATIC_ASSERT macro when using multiple .proto files.
...
The __COUNTER__ macro (used for generating unique names) is at least supported
by gcc, clang and Visual Studio. With this change test_compiles.c is
compilable, since no more typedefs are redefined.
Compilers/Preprocessors not supporting __COUNTER__ error's are still possible
which are hopfully handled by the usage of __LINE__ in most sittuations.
Added unit test for the problem.
2012-11-16 09:24:39 +02:00
Petteri Aimonen
0abb764b18
Fix naming of nested Enums with short names
2012-11-14 00:43:51 +02:00
Petteri Aimonen
02ecee2de8
Fix naming of enums when long_names=false.
...
Modify test case to check that options.pb.o compiles.
Update issue 42
Status: FixedInGit
Update issue 43
Status: FixedInGit
2012-11-14 00:36:16 +02:00
Petteri Aimonen
fc6f56b2bd
Setting version to 0.1.8-dev
2012-11-11 11:19:17 +02:00
Petteri Aimonen
92bb37b074
Publishing nanopb-0.1.7
2012-11-11 11:16:01 +02:00
Petteri Aimonen
08391f35ee
Add nanopb version number to generated files.
...
tools/set_version.sh is used to update the values.
Update issue 36
Status: FixedInGit
2012-10-29 19:15:34 +02:00
Petteri Aimonen
3aaa4ad8c2
Add extern "C" to header files.
...
Update issue 35
Status: FixedInGit
2012-10-29 19:03:19 +02:00
Petteri Aimonen
db1eefc24b
Add option to use short names for enum values.
...
Update issue 38
Status: FixedInGit
2012-10-29 18:55:49 +02:00
Petteri Aimonen
0ee4bb96b1
Allow defining field type in .proto.
...
Update issue 30
Status: FixedInGit
2012-10-29 18:34:24 +02:00