Squashed 'third_party/flatbuffers/' changes from bc44fad35..8aa8b9139
8aa8b9139 Fix handling of +/-inf defaults in TS/rust/go/dart codegen (#7588)
001adf782 Add support for parsing proto map fields (#7613)
dbc58ab77 Fix help output for --gen-includes (#7611)
2facfeec7 Fix missing spaces in flatc help text (#7612)
4de2814c7 Fix: arduino platform build (#7625)
37b1acdaf Fix current official name of macOS (#7627)
a22434e2a Add missing #include <algorithm> for std::min/std::max uses, and #include <limits> for std::numeric_limits<> (#7624)
214cc9468 Bump Rust version to 22.10.26 before publication (#7622)
a4ff275d9 Added option to not requires an EoF token when parsing JSON (#7620)
15f32c690 python: object generation prefix and suffix (#7565)
051afd882 Add CreateSharedString to python builder (#7608)
728c033ad Add check for presence of realpath to CMakeLists.txt to support more platforms (#7603)
4c514483d Update DartTest.sh golden files (#7606)
c2d9c2080 [TS] Add support for fixed length arrays on Typescript (#5864) (#7021) (#7581)
e34ae4c6b `build.yml`: Fix missing 'v' in version
e54536127 `build.yml` Update to Kotlin Wrapper 1.0.5
49d9f941c `release.yml` Use env var for passphrase
cefc21c1f `release.yml` Add GPG key for Maven
3e64fa724 `release.yml`: Add Maven Steps
b15f3c57e `release_yml` Use new dotnet version
ff802c680 `release.yml` Use NuGet Key directly
b401957d5 `release.yml` Changed Push to follow examples
8c8151f8f `release.yml` Fix nuget push command
ebb7c203d `release.yml` Add Nuget support
203241ed3 FlatBuffers Version 22.10.26 (#7607)
ac485609c `setup.py`: Define version directly
de5b85aa6 `release.yml`: Switch to `python` directory
de3df2d88 `release.yml`: Add publishing to PyPi
043a24f2e [Python] Fixed the issue with nested unions relying on InitFromBuf. (#7576)
5a48b0d7d release.yml: Typo
ce307556f release.yml: Remove `npm ci`
cb616e27c Create release.yml (#7605)
a54ca1e75 FlatBuffers Version 22.10.25 (#7604)
5b3fadcc1 [vector] Allow to iterate with mutables (#7586)
872a49746 [Nim] Bfbs Nim Generator (#7534)
e30170296 Make type conversions explicit. (#7595)
f7b734438 Fix LongEnum definitions (#7596)
5792623df Rust fix compilation for no_std targets #2 (#7553)
0edb27528 Update Rust version (#7574)
acc6a20d3 tests/test.cpp contains a couple of tests that are only executed (#7571)
04cd037ba Fix #7580 by documenting union schema evolution rules (#7585)
e1c5db988 Turn on clippy for Rust and fix lints for non-generated code (#7575)
b80142b90 Update documentation to mention enum value attributes (#7570)
54418f371 Add support for metadata attributes for enum values (#7567) (#7568)
c92e78a9f FlatBuffers Version 22.9.29 (#7557)
d243b904c [TS] Make strict compliant and improve typings (#7549)
374f8fb5f Rust soundness fixes (#7518)
dadbff571 Moves swift package to root of repository so it can be used directly … (#7548)
76ddae006 FlatBuffers Version 22.9.24 (#7547)
cfe157ec5 Emit internal enums when swift_implementation_only (#7545)
413115858 [Python] Python fixed size array (#7529)
88046190e Upgrade grpc to 1.49.0 and make sure it builds (#7538)
72aa85a75 [C++] Rare bad buffer content alignment if sizeof(T) != alignof(T) (#7520)
bfceebb7f Fix conform (#7532)
git-subtree-dir: third_party/flatbuffers
git-subtree-split: 8aa8b9139eb330f27816a5b8b5bbef402fbe3632
Signed-off-by: James Kuszmaul <james.kuszmaul@bluerivertech.com>
Change-Id: I943faba499baf58e9f561b1e4734922188ba8626
diff --git a/tests/prototest/GenerateProtoGoldens.sh b/tests/prototest/GenerateProtoGoldens.sh
new file mode 100755
index 0000000..8cf24f9
--- /dev/null
+++ b/tests/prototest/GenerateProtoGoldens.sh
@@ -0,0 +1,24 @@
+#!/bin/bash
+#
+# Copyright 2022 Google Inc. All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+pushd "$(dirname $0)" >/dev/null
+
+./../../flatc --proto test.proto && mv test.fbs test_include.golden
+./../../flatc --proto --gen-all test.proto && mv test.fbs test.golden
+./../../flatc --proto --oneof-union test.proto && mv test.fbs test_union_include.golden
+./../../flatc --proto --gen-all --oneof-union test.proto && mv test.fbs test_union.golden
+./../../flatc --proto --gen-all --proto-namespace-suffix test_namespace_suffix test.proto && mv test.fbs test_suffix.golden
+./../../flatc --proto --gen-all --proto-namespace-suffix test_namespace_suffix --oneof-union test.proto && mv test.fbs test_union_suffix.golden
diff --git a/tests/prototest/test.golden b/tests/prototest/test.golden
index 949a003..4484b49 100644
--- a/tests/prototest/test.golden
+++ b/tests/prototest/test.golden
@@ -54,6 +54,8 @@
u:float = +inf;
v:float = +inf;
w:float = -inf;
+ grades:[proto.test.ProtoMessage_.GradesEntry];
+ other_message_map:[proto.test.ProtoMessage_.OtherMessageMapEntry];
}
namespace proto.test.ProtoMessage_;
@@ -73,3 +75,13 @@
t:proto.test.ProtoMessage_.OtherMessage;
}
+table GradesEntry {
+ key:string (key);
+ value:float;
+}
+
+table OtherMessageMapEntry {
+ key:string (key);
+ value:proto.test.ProtoMessage_.OtherMessage;
+}
+
diff --git a/tests/prototest/test.proto b/tests/prototest/test.proto
index 71ec8d5..98c92f8 100644
--- a/tests/prototest/test.proto
+++ b/tests/prototest/test.proto
@@ -71,4 +71,7 @@
optional float u = 34 [default = inf];
optional float v = 35 [default = +inf];
optional float w = 36 [default = -inf];
+
+ map<string, float> grades = 37;
+ map<string, OtherMessage> other_message_map = 38;
}
diff --git a/tests/prototest/test_include.golden b/tests/prototest/test_include.golden
index b98de44..791f7f7 100644
--- a/tests/prototest/test_include.golden
+++ b/tests/prototest/test_include.golden
@@ -52,6 +52,8 @@
u:float = +inf;
v:float = +inf;
w:float = -inf;
+ grades:[proto.test.ProtoMessage_.GradesEntry];
+ other_message_map:[proto.test.ProtoMessage_.OtherMessageMapEntry];
}
namespace proto.test.ProtoMessage_;
@@ -71,3 +73,13 @@
t:proto.test.ProtoMessage_.OtherMessage;
}
+table GradesEntry {
+ key:string (key);
+ value:float;
+}
+
+table OtherMessageMapEntry {
+ key:string (key);
+ value:proto.test.ProtoMessage_.OtherMessage;
+}
+
diff --git a/tests/prototest/test_suffix.golden b/tests/prototest/test_suffix.golden
index 4ab2146..b76acb7 100644
--- a/tests/prototest/test_suffix.golden
+++ b/tests/prototest/test_suffix.golden
@@ -54,6 +54,8 @@
u:float = +inf;
v:float = +inf;
w:float = -inf;
+ grades:[proto.test.test_namespace_suffix.ProtoMessage_.GradesEntry];
+ other_message_map:[proto.test.test_namespace_suffix.ProtoMessage_.OtherMessageMapEntry];
}
namespace proto.test.test_namespace_suffix.ProtoMessage_;
@@ -73,3 +75,13 @@
t:proto.test.test_namespace_suffix.ProtoMessage_.OtherMessage;
}
+table GradesEntry {
+ key:string (key);
+ value:float;
+}
+
+table OtherMessageMapEntry {
+ key:string (key);
+ value:proto.test.test_namespace_suffix.ProtoMessage_.OtherMessage;
+}
+
diff --git a/tests/prototest/test_union.golden b/tests/prototest/test_union.golden
index 241f349..15d365b 100644
--- a/tests/prototest/test_union.golden
+++ b/tests/prototest/test_union.golden
@@ -64,6 +64,8 @@
u:float = +inf;
v:float = +inf;
w:float = -inf;
+ grades:[proto.test.ProtoMessage_.GradesEntry];
+ other_message_map:[proto.test.ProtoMessage_.OtherMessageMapEntry];
}
namespace proto.test.ProtoMessage_;
@@ -75,3 +77,13 @@
foo_bar_baz:proto.test.ProtoMessage_.OtherMessage_.ProtoEnum;
}
+table GradesEntry {
+ key:string (key);
+ value:float;
+}
+
+table OtherMessageMapEntry {
+ key:string (key);
+ value:proto.test.ProtoMessage_.OtherMessage;
+}
+
diff --git a/tests/prototest/test_union_include.golden b/tests/prototest/test_union_include.golden
index 1fdb2ac..ce36463 100644
--- a/tests/prototest/test_union_include.golden
+++ b/tests/prototest/test_union_include.golden
@@ -62,6 +62,8 @@
u:float = +inf;
v:float = +inf;
w:float = -inf;
+ grades:[proto.test.ProtoMessage_.GradesEntry];
+ other_message_map:[proto.test.ProtoMessage_.OtherMessageMapEntry];
}
namespace proto.test.ProtoMessage_;
@@ -73,3 +75,13 @@
foo_bar_baz:proto.test.ProtoMessage_.OtherMessage_.ProtoEnum;
}
+table GradesEntry {
+ key:string (key);
+ value:float;
+}
+
+table OtherMessageMapEntry {
+ key:string (key);
+ value:proto.test.ProtoMessage_.OtherMessage;
+}
+
diff --git a/tests/prototest/test_union_suffix.golden b/tests/prototest/test_union_suffix.golden
index 2278edd..0c0c5e5 100644
--- a/tests/prototest/test_union_suffix.golden
+++ b/tests/prototest/test_union_suffix.golden
@@ -64,6 +64,8 @@
u:float = +inf;
v:float = +inf;
w:float = -inf;
+ grades:[proto.test.test_namespace_suffix.ProtoMessage_.GradesEntry];
+ other_message_map:[proto.test.test_namespace_suffix.ProtoMessage_.OtherMessageMapEntry];
}
namespace proto.test.test_namespace_suffix.ProtoMessage_;
@@ -75,3 +77,13 @@
foo_bar_baz:proto.test.test_namespace_suffix.ProtoMessage_.OtherMessage_.ProtoEnum;
}
+table GradesEntry {
+ key:string (key);
+ value:float;
+}
+
+table OtherMessageMapEntry {
+ key:string (key);
+ value:proto.test.test_namespace_suffix.ProtoMessage_.OtherMessage;
+}
+