Proto commits in Embedded-AMS/EmbeddedProto

These commits are when the Protocol Buffers files have changed: (only the last 100 relevant commits are shown)

Commit:6338ecb
Author:Bart Hertog

Merged in feature/PROTO-320-update-the-sizing-examples-v4 (pull request #257) Feature/PROTO-320 update the sizing examples v4

Commit:45c6e71
Author:Bart Hertog

Say that the GPL obligation applies to products you distribute in every license header

Commit:9037a39
Author:Bart Hertog

Start every field with a clean element count when serializing a message in parts

Commit:c6327a8
Author:Bart Hertog

Serialize the set member of every oneof when serializing a message with several oneofs in parts

Commit:5c75729
Author:Bart Hertog

Reset the whole state chain between repeated message elements when serializing in parts

Commit:9c590eb
Author:Bart Hertog
Committer:Bart Hertog

Replace the GPL-only file headers with the dual-license header

Commit:d5f827e
Author:Bart Hertog

Add MESSAGE_FULL_NAME to generated messages and test google.protobuf.Any fields

Commit:4b64ff0
Author:Bart Hertog

Stream string and bytes callback storage in windows instead of one byte at a time

Commit:f9d9489
Author:Bart Hertog

Implemented maps with both allocation and callbacks.

Commit:16d7682
Author:Bart Hertog

Implemented an json options file to overwrite field options in the .proto file.

Commit:6783219
Author:Bart Hertog
Committer:Bart Hertog

Do not serialize a nested message again just to count its bytes.

Commit:0f1f3ce
Author:Bart Hertog

Merge branch 'develop-v4' into feature/PROTO-295-use-the-functional-class

Commit:6352299
Author:Bart Hertog
Committer:Bart Hertog

Added missing test files. (cherry picked from commit de0d3e5d5cf73366bb8799943b45eae252ef39ce)

Commit:de0d3e5
Author:Bart Hertog

Added missing test files.

The documentation is generated from this commit.

Commit:7142ba0
Author:Bart Hertog

Extended the unit tests to include an enum.

Commit:ed35ad5
Author:Bart Hertog

Updated documentation to be inline with actual capabilities.

Commit:dccb5a6
Author:Bart Hertog

Add callbackStorage generator option for repeated message fields A repeated message field marked callbackStorage is now emitted as a concrete MessageCallback<Element> instead of a resident array. The field must be DELIMITED-encoded (features.message_encoding = DELIMITED); the generator rejects it otherwise, since a group carries no size prefix and so avoids the serialized_size() pre-pass a stream cannot provide. Generator: - FieldRepeated.get_type() emits MessageCallback for a message element; - reject_unsupported_callback_storage relaxes the repeated-message case and enforces DELIMITED, still rejecting repeated string/bytes; - a repeated message callback reports callback_is_message()/is_delimited() so full deserialize routes through the group (START_GROUP -> deserialize) path and partial serialize routes through serialize_partial_as_field_expanded; - the repeated GetSet emits only the whole-field accessors (no indexed get/set/add, which MessageCallback lacks) and set_ copies the bindings; - MessageCallback.h is included from the generated header. End-to-end and generator-rejection tests cover the new placement.

Commit:3697a98
Author:Bart Hertog

MessageCallback: DELIMITED group streaming for repeated message fields A repeated message field marked callbackStorage owns no element array. On serialize each element is pulled from a bound source into a single transient sub-message and emitted as a START_GROUP/body/END_GROUP group; on deserialize every parsed group lands in the transient and is pushed to a bound sink. Group framing carries no size prefix, so the stream is written in a single pass without a serialized_size() pre-pass (which would drain the source twice). The class derives from MessageInterface and mirrors RepeatedFieldCallback: serialize() guards the LEN/size-pass path with CALLBACK_SEQUENCE, real output goes through serialize_expanded(); deserialize() and deserialize_partial() delegate to the transient. Partial serialize inlines the group framing at the field-state level (state for framing, state.child for the body) so a callback message field consumes no more state-stack depth than a resident one. No generator change yet; unit tests drive the class directly.

Commit:3f1a98e
Author:Bart Hertog

Add callbackStorage generator option for singular bytes/string fields

Commit:2666b52
Author:Bart Hertog

Add callbackStorage generator option for repeated scalar fields

Commit:23fa881
Author:Bart Hertog

End-to-end callback storage for a repeated scalar via customStorage

Commit:a76f951
Author:Bart Hertog

Leave a oneof unset when a CLOSED enum member drops an unknown value

Commit:6abb7b0
Author:Bart Hertog

Default a CLOSED enum to its first declared enumerator instead of a raw zero

Commit:e1d8386
Author:Bart Hertog

Implemented feature message_encoding DELIMITED decode of edition 2023

Commit:1f47bb0
Author:Bart Hertog

Implemented feature message_encoding DELIMITED encode of edition 2023

Commit:a7e8c94
Author:Bart Hertog

Implemented feature enum_type of edition 2023

Commit:6eb5934
Author:Bart Hertog

Implemented feature repeated_field_encoding of edition 2023

Commit:eed0aa8
Author:Bart Hertog

Implemented feature custom default values of edition 2023

Commit:0a7e23b
Author:Bart Hertog

Implemented feature field_presence of edition 2023

Commit:92c0bf1
Author:Bart Hertog

Added the custom storage option.

Commit:20ed19d
Author:Bart Hertog

Added a warning that protobuf editions is not yet supported.

Commit:3f7e057
Author:Bart Hertog

Updated the copyright year to 2026.

Commit:5c41c32
Author:Bart Hertog

Updated the copyright year to 2026.

Commit:1401728
Author:Bart Hertog
Committer:Bart Hertog

Working on partial serialization

Commit:2a658ba
Author:Bart Hertog

Backported the unit tests for the max_serialized_size function.

Commit:938b7ad
Author:Bart Hertog

Integrated the 3.6.0 release into the dev. v4 branch. This is mainly the option to set the size of repeated string and byte fields in the proto file.

Commit:3ddaaed
Author:Bart Hertog

Fixed a bug related to messages in a repeated filed which require a template paremeter. When the option for the field would be used the template parameters would not be added to the class.

Commit:827fa77
Author:Bart Hertog

Some more unit test and bug fixes.

Commit:7d6ea63
Author:Bart Hertog

First setup of the extra parameter to set the size of a string/bytes field while beeing repeated.

Commit:8ba5c87
Author:cleutonsampaio

PROTO-252 fix TypeOneof.h.jinja2 template

Commit:595d827
Author:cleutonsampaio

PROTO-250 Changed copyright date in 83 files

Commit:717d086
Author:Bart Hertog

Changed the link in the file headers.

Commit:6e42a77
Author:Bart Hertog

Merge branch 'develop' into feature/PROTO-213-deploy-to-pipy-test

Commit:c6ea4ee
Author:Bart Hertog

Interchanged the type of message to include. The google descriptor is to complicated. This well known type Timestamp is a good alternative.

Commit:7ac4fbb
Author:Bart Hertog

Renamed folder to match setuptools default folder structure.

Commit:b39f116
Author:Bart Hertog
Committer:Bart Hertog

Testing oneof max serialized size.

Commit:f816de3
Author:Bart Hertog

Updated copyright date.

Commit:d8b1212
Author:Bart Hertog

Embedded AMS moved.

Commit:a150b8c
Author:Bart Hertog

Update copyright.

Commit:a999830
Author:Bart Hertog

Unit tests for sorting nested messages.

Commit:27664ab
Author:Bart Hertog

Merge branch 'develop' into feature/PROTO-158-support-repeated-enum-fields-3

Commit:0673c07
Author:Bart Hertog

Added a missing copyright statement.

Commit:e3270a0
Author:Bart Hertog

Added a namespace to the fields with maxLength.

Commit:b311c58
Author:Bart Hertog

Added a repeated enum with maxLength.

Commit:7d45810
Author:Bart Hertog
Committer:Bart Hertog

Added an exception to exclude empty ordered message array.

Commit:e6a78a0
Author:Bart Hertog

Added an exception to exclude empty ordered message array.

Commit:207c24a
Author:Bart Hertog

Copied the unit tests for repeated enums.

Commit:3bed0cb
Author:Bart Hertog

Unit tests for repeated enums.

Commit:8a177fe
Author:Bart Hertog
Committer:Bart Hertog

Initial setup enum field class.

Commit:e6127af
Author:Bart Hertog
Committer:Bart Hertog

Updated copyright notice to 2022.

Commit:0ee89fe
Author:Bart Hertog

Added the google extensions reserved number to the options extension.

Commit:9241cc3
Author:Bart Hertog

Moved max length into a message such we can later more easily extend the Embedded Proto options.

Commit:1f49fd1
Author:Bart Hertog

Added MaxLength to the bytes and string fields.

Commit:d0b8578
Author:Bart Hertog
Committer:Bart Hertog

Extended the unit tests for the custom field options of repeated fields.

Commit:56a65a9
Author:Bart Hertog

Placed the max length option in a package/namespace.

Commit:f35d26f
Author:Bart Hertog

Initial setup of the custom options for embedded proto.

Commit:0359e50
Author:Bart Hertog

Added a file to test the sorting algorithm. It works when this file is generated.

Commit:311cda6
Author:Bart Hertog

Testing oneof which should be serialized with default values.

Commit:455e4f4
Author:Bart Hertog

Added a test to see if the presence is tracked correctly in the next presence integer.

Commit:55365b0
Author:Bart Hertog
Committer:Bart Hertog

Code for optional strings and byte arrays, including initial test code.

Commit:78d995c
Author:Bart Hertog

Include optional field code for enum field types.

Commit:2b8cc71
Author:Bart Hertog

Initial proto file for testing keyword optional.

Commit:f175f8a
Author:Bart Hertog

Updated the copyright year.

Commit:83a4c5f
Author:Bart Hertog

Added additional variables to test the generation of the template parameters for github issue #20.

Commit:ab86c51
Author:Bart Hertog

Added a tests for the nested enum.

Commit:769822a
Author:Bart Hertog

Added test cases for a simple enum nested in a message.

Commit:39c463d
Author:Bart Hertog

Added a test case to verify setting and clearing a enum in a oneof field.

Commit:286d2ab
Author:Bart Hertog

Worked on reducing the scope used for variable types. This to prevent having to write out template parameters of parent scopes.

Commit:7097829
Author:Bart Hertog

Enabled String and Byte arrays to be repeated fields.

Commit:b3e79f4
Author:Bart Hertog
Committer:Bart Hertog

Working string and bytes fields.

Commit:fdf412c
Author:Bart Hertog
Committer:Bart Hertog

Added template parameters to nested classes.

Commit:49e7891
Author:Bart Hertog

Initial setup of the typedef templates.

Commit:15773f6
Author:Bart Hertog

Small changes in documentation of the empty message tests.

Commit:7f7100f
Author:Bart Hertog

Reworked the template to prevent empty messages from failing to build upon the constructor.

Commit:66c0def
Author:Bart Hertog

Added a test to see if the assignment of a nested message with a repeated field works.

Commit:36605f1
Author:Bart Hertog
Committer:Bart Hertog

Added the assignment operator with support for oneof's.

Commit:510600a
Author:Bart Hertog

Correctly find templated classes in a different namespace.

Commit:c557548
Author:Bart Hertog

Some text changes.

Commit:b838603
Author:Bart Hertog

As reported the header guards include slashes. This was due to not excluding the folder from the guard.

Commit:93731d5
Author:Bart Hertog

Testing strings and bytes in a oneof.

Commit:30ad93d
Author:Bart Hertog
Committer:Bart Hertog

Added the class FieldBytes.

Commit:711f9f2
Author:Bart Hertog

Initial setup for strings.

Commit:d910374
Author:Bart Hertog

Typo in header.

Commit:3c977f1
Author:Bart Hertog

Correcting typo's

Commit:3ba2a70
Author:Bart Hertog

Added header.

Commit:a7ec614
Author:Bart Hertog

Move the example to a separate repository.

Commit:ab5c1c5
Author:Bart Hertog

Merge remote-tracking branch 'origin/develop' into feature/PROTO-23-example

Commit:80b5210
Author:Bart Hertog

Explicitly initialize messages (non-trivial classes) in unions (oneofs).

Commit:30929e4
Author:Bart Hertog
Committer:Bart Hertog

Added example .proto files. Included the Embedded Proto source files to build. Added a windows script to generate based on the .proto files.

Commit:dc92d6d
Author:Bart Hertog

Support for proto packages