summary |
shortlog | log |
commit |
commitdiff |
review |
tree
first ⋅ prev ⋅ next
Petteri Aimonen [Sun, 2 Sep 2012 17:14:22 +0000 (20:14 +0300)]
Clean up one (uint64_t) cast.
Petteri Aimonen [Sun, 2 Sep 2012 16:54:35 +0000 (19:54 +0300)]
Fix -Wextra warning in generated .pb.c files.
Compile the generated files with the same extra-strict
settings as the core, in order to detect problems in tests.
Update issue 32
Status: FixedInGit
Petteri Aimonen [Sun, 26 Aug 2012 12:21:20 +0000 (15:21 +0300)]
Fix warnings with -Wcast-qual. Add test for C++ compile.
Update issue 27
Status: FixedInGit
Petteri Aimonen [Sun, 26 Aug 2012 06:56:11 +0000 (09:56 +0300)]
Add pb_decode_noinit and use it from pb_dec_submessage.
This avoids double initialization when decoding nested submessages.
Fixes an issue with submessage arrays that was present in previous
version of this patch.
Update issue 28
Status: FixedInGit
Petteri Aimonen [Sun, 26 Aug 2012 07:57:51 +0000 (10:57 +0300)]
Added alltypes-testcases for optional fields and default values.
Petteri Aimonen [Sun, 26 Aug 2012 07:05:46 +0000 (10:05 +0300)]
Revert "Add pb_decode_noinit and use it from pb_dec_submessage."
The patch breaks default values inside submessage arrays (I think).
Have to add test cases and check back.
This reverts commit
f1d7640fe1be0f150f604c72108ea516222c2505.
Petteri Aimonen [Sun, 26 Aug 2012 06:56:11 +0000 (09:56 +0300)]
Add pb_decode_noinit and use it from pb_dec_submessage.
This avoids double initialization when decoding nested submessages.
Update issue 28
Status: FixedInGit
Petteri Aimonen [Fri, 24 Aug 2012 18:32:42 +0000 (21:32 +0300)]
Add note that stream callbacks must read the whole requested length.
Fixes issue #22.
Petteri Aimonen [Fri, 24 Aug 2012 18:22:20 +0000 (21:22 +0300)]
Implement error messages in the decoder side.
Update issue 7
Status: Started
Petteri Aimonen [Fri, 24 Aug 2012 17:51:29 +0000 (20:51 +0300)]
Document pb_close_string_substream.
Petteri Aimonen [Fri, 24 Aug 2012 17:43:21 +0000 (20:43 +0300)]
Revert "Change the substream implementation in pb_decode."
This reverts commit
dc2da0edc568b29361479fb7405c96b1a13442cf.
Add pb_close_string_substream() for copying back the state.
This makes adding error messages easier in the future, as also
them need to be propagated back from the substream.
Petteri Aimonen [Fri, 24 Aug 2012 17:23:25 +0000 (20:23 +0300)]
Reorganize the field decoder interface.
This makes the field decoding functions more intuitive to use.
The old interface is still present if you specify NANOPB_INTERNALS.
Update issue 2
Status: FixedInGit
Petteri Aimonen [Fri, 24 Aug 2012 16:35:17 +0000 (19:35 +0300)]
Change the substream implementation in pb_decode.
This makes it unnecessary to copy back the state, and also relaxes
the requirements on callbacks (bytes_left will always be valid).
It decreases code size by a few bytes, but may be just slightly slower.
Petteri Aimonen [Fri, 24 Aug 2012 16:25:29 +0000 (19:25 +0300)]
Fix a confusing statement in a comment.
Stan Hu [Thu, 16 Aug 2012 18:29:08 +0000 (11:29 -0700)]
Fix casting issues
Petteri Aimonen [Thu, 9 Aug 2012 13:15:23 +0000 (16:15 +0300)]
Declare warn_unused_result only on GCC >= 3.4.0.
Thanks to cea.max.simoes for bug report & fix.
Update issue 25
Status: FixedInGit
Petteri Aimonen [Sat, 4 Aug 2012 11:34:19 +0000 (14:34 +0300)]
Fix signedness warning in example_unions.
Petteri Aimonen [Tue, 31 Jul 2012 16:12:57 +0000 (19:12 +0300)]
Fix bug in decoder with packed arrays.
Update issue 23
Status: FixedInGit
Petteri Aimonen [Tue, 31 Jul 2012 16:10:33 +0000 (19:10 +0300)]
Extend 'alltypes' testcase to cover repeated fields.
Petteri Aimonen [Thu, 19 Jul 2012 06:05:36 +0000 (09:05 +0300)]
Additional unsigned vs. signed fix for tag
Petteri Aimonen [Wed, 18 Jul 2012 18:21:07 +0000 (21:21 +0300)]
Fix an unsigned vs. signed warning on some compiler.
Petteri Aimonen [Wed, 18 Jul 2012 18:09:13 +0000 (21:09 +0300)]
Fixed a few compiler warnings, added check.
Main code is now compiled (for tests) with -pedantic -Wextra.
The test programs are not as strictly bound, but this should
improve the chances that atleast the core library compiles with
most compilers without warnings.
Petteri Aimonen [Thu, 5 Jul 2012 17:02:06 +0000 (20:02 +0300)]
Fix bug with .proto without messages (again), and add a test case for it.
Petteri Aimonen [Thu, 5 Jul 2012 15:27:07 +0000 (18:27 +0300)]
Apparently some compilers don't want to automatically cast size_t to uint64_t.
Petteri Aimonen [Thu, 5 Jul 2012 15:24:11 +0000 (18:24 +0300)]
Fix some typos in __BIG_ENDIAN__ code
Petteri Aimonen [Thu, 5 Jul 2012 15:19:38 +0000 (18:19 +0300)]
Replace #warning with the standard #error.
Stan Hu [Mon, 2 Jul 2012 21:00:45 +0000 (14:00 -0700)]
Cast enum vaules to integers and cast them back where appropraite
to prevent mixed enumeration type compiler warnings
Petteri Aimonen [Sun, 1 Jul 2012 07:15:37 +0000 (10:15 +0300)]
Replace PB_MANY_FIELDS with PB_FIELD_16BIT and PB_FIELD_32BIT.
This allows more precise control over the memory use vs. field size.
Petteri Aimonen [Sat, 30 Jun 2012 16:28:49 +0000 (19:28 +0300)]
Add PB_MANY_FIELDS option for supporting fields > 255.
Add generator warning if this is necessary.
Fixes issue #14.
Petteri Aimonen [Sat, 30 Jun 2012 15:23:18 +0000 (18:23 +0300)]
Warn if PB_MAX_REQUIRED_FIELDS is not large enough.
Petteri Aimonen [Sat, 30 Jun 2012 15:10:08 +0000 (18:10 +0300)]
Improve the detection of missing required fields.
Now the limit of tracked fields is configurable at compile-time using
PB_MAX_REQUIRED_FIELDS. Added related test and updated documentation.
Fixes issue #18.
Petteri Aimonen [Mon, 25 Jun 2012 19:17:13 +0000 (22:17 +0300)]
Fixed formatting in docs
Petteri Aimonen [Mon, 25 Jun 2012 19:08:05 +0000 (22:08 +0300)]
Documented NANOPB_INTERNALS compilation option
Petteri Aimonen [Mon, 25 Jun 2012 18:45:40 +0000 (21:45 +0300)]
Note about __BIG_ENDIAN__ compilation option
Petteri Aimonen [Wed, 20 Jun 2012 18:31:23 +0000 (21:31 +0300)]
Fix error when .proto contains no Messages (e.g. just enums).
Thanks to Paul Fertser for reporting this bug.
Petteri Aimonen [Sat, 16 Jun 2012 11:08:40 +0000 (14:08 +0300)]
Added example on how to handle unions.
Petteri Aimonen [Sat, 16 Jun 2012 11:07:37 +0000 (14:07 +0300)]
Added new functions to public interface in pb_decode.h.
pb_decode_tag and pb_skip_field allow manually iterating the fields
in a message.
Petteri Aimonen [Wed, 13 Jun 2012 18:43:40 +0000 (21:43 +0300)]
Fix non-constant initializer errors with some compilers.
Fixes issue #13. Thanks to Kevin Worth for reporting.
Petteri Aimonen [Tue, 12 Jun 2012 14:51:08 +0000 (17:51 +0300)]
Add descriptor.proto into the #include exclusion list
Petteri Aimonen [Sat, 19 May 2012 18:25:47 +0000 (21:25 +0300)]
Merge branch 'master' of https://code.google.com/p/nanopb
Petteri Aimonen [Sat, 19 May 2012 18:25:10 +0000 (21:25 +0300)]
Add better error messages in the generator when libraries cannot be imported.
Fixes issue #5.
Petteri Aimonen [Sat, 19 May 2012 18:15:52 +0000 (21:15 +0300)]
Fix 64-bitness warnings in the example.
Fixes issues 9 and 10.
Petteri Aimonen [Wed, 18 Apr 2012 17:15:36 +0000 (20:15 +0300)]
Fixing compiler warnings, mostly related to unused parameters.
Thanks to David Hotham for the patch. Fixes issue 8.
Petteri Aimonen [Thu, 1 Mar 2012 11:46:52 +0000 (13:46 +0200)]
Refactoring the field encoder interface.
Replaced the confusing pb_enc_* functions with new pb_encode_* functions that
have a cleaner interface. Updated documentation.
Got rid of the endian_copy stuff in pb_encode.c, instead using C casts to do it automatically.
This makes the code safer and also reduces binary size by about 5%.
Fixes Issue 6.
Petteri Aimonen [Wed, 15 Feb 2012 15:34:48 +0000 (17:34 +0200)]
Modified nanopb_generator.py to generate includes for other .proto files.
Implementation was suggested by extremeblue99.
Fixes issue 4.
Petteri Aimonen [Mon, 30 Jan 2012 08:36:17 +0000 (10:36 +0200)]
Fixed nanopb_generator.py to read the input file in binary mode.
Petteri Aimonen [Mon, 23 Jan 2012 16:13:26 +0000 (18:13 +0200)]
Improved documentation on field decoders.
Petteri Aimonen [Thu, 12 Jan 2012 17:08:05 +0000 (19:08 +0200)]
Fixed issue 1 reported by Erik Rosen:
The size of non-callback bytes-fields was miscalculated, which
caused all following fields in a message to contain garbage.
Previous commit contains a testcase for this.
This fix changes the generated message description. If your protocol uses
bytes-fields, you should regenerate *.pb.c.
Petteri Aimonen [Thu, 12 Jan 2012 17:06:33 +0000 (19:06 +0200)]
Added an encode/decode test for 'required' fields of all types.
Petteri Aimonen [Thu, 12 Jan 2012 16:10:12 +0000 (18:10 +0200)]
Fixed a bug in the generator that caused a compiler error on sfixed32 and sfixed64 fields.
Petteri Aimonen [Fri, 6 Jan 2012 17:04:49 +0000 (19:04 +0200)]
Linewrapping in license
Petteri Aimonen [Thu, 5 Jan 2012 18:35:12 +0000 (18:35 +0000)]
Added logo for project :)
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@1095
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Fri, 30 Dec 2011 09:05:01 +0000 (09:05 +0000)]
Make the fuzztest runnable again
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@1091
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Fri, 30 Dec 2011 08:57:27 +0000 (08:57 +0000)]
Expanding the tests to better cover decoding from memory buffer.
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@1090
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Fri, 30 Dec 2011 08:43:50 +0000 (08:43 +0000)]
Fixed a bug related to submessage encoding into memory buffer.
Stream state was not copied back from substream in pb_enc_submessage,
which caused garbage output if the stream callback modified the state.
Expanded tests to cover this problem.
Thanks to Paweł Pery for debugging and reporting this problem.
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@1089
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Wed, 30 Nov 2011 15:08:32 +0000 (15:08 +0000)]
Merged 0005-Handle-endianness-correctly.patch by Matt Kern.
On big endian machines, pb_dec_fixed32 and pb_dec_fixed64 were
incorrectly overwriting the result value even if reading failed.
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@1022
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Wed, 30 Nov 2011 15:03:23 +0000 (15:03 +0000)]
Merged 0004-Added-missing-trailing-newlines.patch by Matt Kern.
Just adding newlines at the end of files to satisfy old GCC versions.
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@1021
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Wed, 30 Nov 2011 15:01:59 +0000 (15:01 +0000)]
Merged 0003-Fixed-format-specifiers.patch by Matt Kern.
Fixes cross-platform issues with the length modifier in printf specifiers,
most importantly %d -> %ld.
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@1020
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Wed, 30 Nov 2011 14:59:25 +0000 (14:59 +0000)]
Added Makefile for generating nanopb_pb2.py.
I still left the precompiled version in place, as it "often works" :)
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@1019
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Thu, 10 Nov 2011 16:19:55 +0000 (16:19 +0000)]
Fix some compiler warnings in strict C89 mode
Contributed by Michael Poole.
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@1004
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Fri, 4 Nov 2011 07:22:05 +0000 (07:22 +0000)]
Some additions to documentation
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@1003
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Sun, 18 Sep 2011 16:10:08 +0000 (16:10 +0000)]
Documentation outdated phrase
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@980
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Sun, 18 Sep 2011 16:04:45 +0000 (16:04 +0000)]
Added comments to the simplest decode/encode examples.
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@979
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Wed, 14 Sep 2011 10:36:04 +0000 (10:36 +0000)]
Added README
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@976
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Tue, 13 Sep 2011 16:14:08 +0000 (16:14 +0000)]
Fixed a bunch of bugs related to callback fields.
Most importantly, callback fields in submessages were being overwritten with garbage, causing segfaults.
Additionally, converted PB_LTYPE_FIXED to PB_LTYPE_FIXED32 and PB_LTYPE_FIXED64. This makes the interface
a bit easier to use, and in addition runs faster.
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@975
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Mon, 12 Sep 2011 18:53:33 +0000 (18:53 +0000)]
Tests for callback fields
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@974
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Thu, 1 Sep 2011 08:30:48 +0000 (08:30 +0000)]
Python 2.6 compatibility for the generator
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@973
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Wed, 24 Aug 2011 19:03:28 +0000 (19:03 +0000)]
Cyclic messages not supported - thanks to Josh for pointing this out.
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@972
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Wed, 24 Aug 2011 18:23:05 +0000 (18:23 +0000)]
Make fuzz test runnable again :)
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@971
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Wed, 24 Aug 2011 13:52:08 +0000 (13:52 +0000)]
Generator bugfixes
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@970
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Wed, 24 Aug 2011 12:57:16 +0000 (12:57 +0000)]
documentation
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@969
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Wed, 24 Aug 2011 12:14:44 +0000 (12:14 +0000)]
makefile fix
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@968
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Wed, 24 Aug 2011 12:13:24 +0000 (12:13 +0000)]
wrong file name
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@967
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Tue, 23 Aug 2011 18:50:09 +0000 (18:50 +0000)]
More unittests
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@966
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Tue, 23 Aug 2011 16:16:33 +0000 (16:16 +0000)]
Changed autogenerated file naming from foo.c to foo.pb.c
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@965
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Tue, 23 Aug 2011 15:57:47 +0000 (15:57 +0000)]
more unittests
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@964
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Tue, 23 Aug 2011 15:57:40 +0000 (15:57 +0000)]
license
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@963
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Tue, 23 Aug 2011 15:57:20 +0000 (15:57 +0000)]
Allocated extension number
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@962
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Tue, 23 Aug 2011 13:33:43 +0000 (13:33 +0000)]
check return values
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@961
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Tue, 23 Aug 2011 09:59:18 +0000 (09:59 +0000)]
More unittests
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@960
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Mon, 22 Aug 2011 18:57:23 +0000 (18:57 +0000)]
unittests, change to PB_LTYPE_BYTES data size
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@959
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Mon, 22 Aug 2011 15:22:41 +0000 (15:22 +0000)]
example client
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@958
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Wed, 17 Aug 2011 19:03:06 +0000 (19:03 +0000)]
Example
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@957
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Tue, 16 Aug 2011 17:28:59 +0000 (17:28 +0000)]
Docs
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@956
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Sun, 14 Aug 2011 20:11:05 +0000 (20:11 +0000)]
More documentation, small improvements
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@955
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Thu, 11 Aug 2011 19:22:36 +0000 (19:22 +0000)]
Documenting and improving stream behaviour
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@954
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Wed, 10 Aug 2011 20:08:06 +0000 (20:08 +0000)]
Started writing documentation
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@953
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Wed, 10 Aug 2011 17:54:15 +0000 (17:54 +0000)]
Unittests for encode
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@952
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Thu, 4 Aug 2011 16:49:32 +0000 (16:49 +0000)]
Encoder
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@951
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Sun, 31 Jul 2011 12:55:09 +0000 (12:55 +0000)]
First version of header generator
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@950
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Sat, 30 Jul 2011 09:59:08 +0000 (09:59 +0000)]
unittests (some)
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@949
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Thu, 28 Jul 2011 15:38:05 +0000 (15:38 +0000)]
iter
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@948
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Thu, 28 Jul 2011 14:54:03 +0000 (14:54 +0000)]
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@947
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Wed, 27 Jul 2011 20:06:17 +0000 (20:06 +0000)]
bugfix
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@946
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Wed, 27 Jul 2011 20:01:50 +0000 (20:01 +0000)]
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@945
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Wed, 27 Jul 2011 19:57:43 +0000 (19:57 +0000)]
Making code ansi-compatible
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@944
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Wed, 27 Jul 2011 19:22:11 +0000 (19:22 +0000)]
Improvements, array support
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@943
e3a754e5-d11d-0410-8d38-
ebb782a927b9
Petteri Aimonen [Mon, 25 Jul 2011 20:42:48 +0000 (20:42 +0000)]
First version of decoding
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@942
e3a754e5-d11d-0410-8d38-
ebb782a927b9