Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nanopb/nanopb.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-11-26Fix compiler warning with PB_BUFFER_ONLY (#717)Petteri Aimonen
I also took the opportunity to get rid of a potential undefined behavior. Now the marker value used is a valid const int pointer.
2020-11-24docs: fix simple typo, specifing -> specifying (#614)Tim Gates
There is a small typo in pb_encode.h, spm_headers/nanopb/pb_encode.h. Should read `specifying` rather than `specifing`.
2019-12-16Add PB_CONVERT_DOUBLE_FLOAT setting to convert doubles on AVR.Petteri Aimonen
This is easier to use than the old method of separate conversion functions. More importantly, it should allow running the same tests on AVR target.
2019-11-09Make constants in header files unsigned, to prevent warnings when used in ↵Torfinn Berset
binary bitwise expressions.
2019-01-25Add pb_decode_ex(), pb_encode_ex() functions.Petteri Aimonen
This should simplify specifying combinations, so that we don't need every variant of pb_decode_noinit_delimited() etc. Also disables zero-terminated decoding in pb_decode (issue #278).
2019-01-25New field descriptor format.Petteri Aimonen
Now field information is stored as a variable-length uint32_t array. This reduces the minimum size in most cases: old new basic field: 10 bytes 4 bytes repeated field: 10 bytes 8 bytes field with 12bit tag/size: 16 bytes 8 bytes field with 16bit tag/size: 16 bytes 16 bytes field with 32bit tag/size: 28 bytes 16 bytes Further, now the descriptor size can be increased per-field and per-message, instead of previous global PB_FIELD_16BIT and PB_FIELD_32BIT. PB_FIELD_32BIT still affects the pb_size_t type, which is 16-bit by default.
2017-09-16Add pb_en/decode_nullterminated() (part of #278)Petteri Aimonen
Nanopb has traditionally supported messages to be terminated with a zero tag. However, this is not really standard protobuf behaviour, so it makes sense to separate it into a different function. Because it is a breaking change, it will happen in 0.4.0 release. But I add the functions here early so that new code can start using them now. Also changed the network_server example to use en/decode_delimited(), which is the more common protobuf method of simple message framing.
2017-09-16Add option to build without 64-bit support (issue #86)Petteri Aimonen
2016-01-27Replace uint8_t with a pb_byte_t typedef.Petteri Aimonen
This supports platforms where uint8_t does not exist. If you are using a custom pb_syshdr.h, this may require adding definitions for uint_least8_t etc.
2014-08-18Rename poorly named identifier to avoid name conflicts.Petteri Aimonen
Update issue 106 Status: FixedInGit
2014-04-05Add a convenience function pb_get_encoded_size()Petteri Aimonen
There is minimal size penalty from this, and it is probably much more intuitive to use than PB_OSTREAM_SIZING itself. This has been suggested before also, but I ended up refusing it back them. Reconsidering it now, I see that an intuitive API is much better than any amount of documentation explaining a non-intuitive API. Update issue 16 Status: FixedInGit
2013-10-29Remove the NANOPB_INTERNALS functions from public API.Petteri Aimonen
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-09-09Move the declarations of _pb_ostream_t and _pb_istream_t before first use.Petteri Aimonen
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-07-06Add pb_decode_delimited and pb_encode_delimited wrapper functions.Petteri Aimonen
Update issue 74 Status: FixedInGit
2013-07-06Clean up the comments in pb_encode.h and pb_decode.hPetteri Aimonen
2013-04-08No need to include stdbool.h separatelydch
2013-03-09Implement error message support for the encoder side.Petteri Aimonen
Update issue 7 Status: FixedInGit
2013-02-06Add compile-time option PB_BUFFER_ONLY.Petteri Aimonen
This allows slight optimizations if only memory buffer support (as opposed to stream callbacks) is wanted. On ARM difference is -12% execution time, -4% code size when enabled.
2012-10-29Add extern "C" to header files.Petteri Aimonen
Update issue 35 Status: FixedInGit
2012-09-03Enable -Wconversion for core and fix the warnings.Petteri Aimonen
This should help avoid issue 33 in the future.
2012-03-01Refactoring the field encoder interface.Petteri Aimonen
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.
2011-11-30Merged 0004-Added-missing-trailing-newlines.patch by Matt Kern.Petteri Aimonen
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
2011-09-13Fixed a bunch of bugs related to callback fields.Petteri Aimonen
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
2011-08-11Documenting and improving stream behaviourPetteri Aimonen
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@954 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-10Unittests for encodePetteri Aimonen
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@952 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-04EncoderPetteri Aimonen
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@951 e3a754e5-d11d-0410-8d38-ebb782a927b9