summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2013-12-21Add PB_LTYPE_UVARINT to fix encoding of negative int32 values.Petteri Aimonen3-22/+55
Apparently int32 values that are negative must be cast into int64 first before being encoded. Because uint32 still needs to be cast to uint64, the cases for int32 and uint32 had to be separated. Update issue 97 Status: FixedInGit
2013-12-21Modify the alltypes test to check re-encoding through protoc.Petteri Aimonen3-15/+53
This way we can verify that the message is encoded exactly the same way as the official protobuf implementation would do it.
2013-11-14Optimize the common case of 1-byte reads for varints.Petteri Aimonen1-3/+23
For PB_BUFFER_ONLY configuration, this gives 20% speedup without increasing code size.
2013-11-13Make tests build in a separate folder, add to gitignorePetteri Aimonen17-51/+61
2013-11-11Fix path in FindNanopb.cmake.Petteri Aimonen1-1/+1
Update issue 94 Status: FixedInGit
2013-11-07Setting version to 0.2.5-devPetteri Aimonen2-2/+2
2013-11-07Publishing nanopb-0.2.4Petteri Aimonen3-3/+3
2013-11-02Add dates to changelogPetteri Aimonen1-15/+15
2013-11-02Update changelogPetteri Aimonen1-0/+9
2013-11-02Generate #define tags for extension fields also.Petteri Aimonen2-0/+11
Update issue 93 Status: FixedInGit
2013-10-29Remove the NANOPB_INTERNALS functions from public API.Petteri Aimonen10-45/+27
These have been deprecated since nanopb-0.1.6 (some since 0.1.3). Equivalent functions with better interface are available in the API. Update issue 91 Status: FixedInGit
2013-10-29Declare static functions before use.Petteri Aimonen2-13/+43
For compliance with MISRA C rules (issue 91).
2013-10-29Cleanup of comments.Petteri Aimonen2-15/+27
2013-10-29Add a definition of the security model to the documentation.Petteri Aimonen3-2/+82
2013-10-29Rename some internal functions to have unique namesPetteri Aimonen2-4/+4
2013-10-24Detect invalid sizes when encoding bytes fields.Petteri Aimonen3-3/+24
2013-10-24Same fix for EncodedSize.__mul__Petteri Aimonen1-1/+1
2013-10-24Handle also longs in EncodedSizePetteri Aimonen1-1/+1
2013-10-23Fix the size of length prefix for messages in other files.Petteri Aimonen1-0/+5
2013-10-23Generate message size #defines also for messages defined in multiple files.Petteri Aimonen5-8/+105
Add testcase for the same.
2013-10-20Define pb_size_t and pb_ssize_t data types.Petteri Aimonen1-22/+19
Use these in pb_field_t definition to clean up some #ifs, and also to prepare for solving issue #82.
2013-10-20Check array max size when encoding.Petteri Aimonen2-0/+17
Update issue 90 Status: FixedInGit
2013-09-26Add #defines for the maximum encoded message size.Petteri Aimonen5-19/+111
Update issue 89 Status: FixedInGit
2013-09-18Setting version to 0.2.4-devPetteri Aimonen2-2/+2
2013-09-18Publishing nanopb-0.2.3Petteri Aimonen2-2/+2
2013-09-13Update changelogPetteri Aimonen1-0/+9
2013-09-13Add a new very simple examplePetteri Aimonen5-7/+149
2013-09-13Move examples into subfolders, add READMEsPetteri Aimonen24-55/+187
2013-09-13Merge branch 'dev_get_rid_of_ternary_operator'Petteri Aimonen2-20/+45
2013-09-13Fine-tune the naming of new macros before merging into master.Petteri Aimonen2-12/+18
Requires re-generation of files generated with dev_get_rid_of_ternary_operator.
2013-09-11Expand extra_fields test to cover field skipping in case of streams.Petteri Aimonen2-0/+4
2013-09-11Disable warning about uint64_t (long long)Petteri Aimonen1-1/+4
2013-09-11Fix build error when path contains spacesPetteri Aimonen1-3/+6
2013-09-11Merge branch 'dev_tests_using_scons'Petteri Aimonen70-291/+1026
2013-09-11Add tests for different compilation optionsPetteri Aimonen9-6/+286
2013-09-11Windows build fixesPetteri Aimonen4-6/+13
2013-09-11Make all the tests ANSI C compatible.Petteri Aimonen10-54/+100
2013-09-11Get rid of the ternary operator in the pb_field_t initialization.Petteri Aimonen2-20/+39
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-10Move the rest of the tests to sconsPetteri Aimonen17-14/+151
2013-09-10Compiler options for GCC, clang and tccPetteri Aimonen2-9/+65
2013-09-10Move the declarations of _pb_ostream_t and _pb_istream_t before first use.Petteri Aimonen2-67/+67
Otherwise Microsoft Visual C++ threats them as C++ classes instead of plain structs, forbidding use in C linkage functions. Thanks to Markus Schwarzenberg for the patch. Update issue 84 Status: Started
2013-09-10Build fixes for Windows/Visual C++Petteri Aimonen13-49/+141
2013-09-10Add an example pb_syshdr.h file for platforms without C99.Petteri Aimonen3-0/+89
This allows building the tests easily on Visual C++ in C mode. Also add checks to pb.h that the defined integer types are of the proper sizes. This may prevent some difficult to debug problems later..
2013-09-10Convert more test cases to sconsPetteri Aimonen4-66/+124
2013-09-09Move the declarations of _pb_ostream_t and _pb_istream_t before first use.Petteri Aimonen2-67/+67
Otherwise Microsoft Visual C++ threats them as C++ classes instead of plain structs, forbidding use in C linkage functions. Thanks to Markus Schwarzenberg for the patch. Update issue 84 Status: Started
2013-09-08Add support for running the nanopb generator as protoc plugin.Petteri Aimonen4-55/+419
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-08Start moving the tests into subfolders. Transition to SCons for build system ↵Petteri Aimonen43-162/+132
for the tests. Only a few tests updated so far. Have to include all the rest before merging to mainline. Update issue 63 Status: Started
2013-09-08Handle unsupported extension field types more gracefully.Petteri Aimonen2-5/+16
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-08-18Setting version to 0.2.3-devPetteri Aimonen2-2/+2
2013-08-18Publishing nanopb-0.2.2Petteri Aimonen2-2/+2