2494 Commits

Author SHA1 Message Date
Casper
615616cb55 Change Rust generated file defaults (#7101)
* Change Rust generated file defaults

After #6731, flatc changed its default behavior
for generating rust code to fix some importing issues.
This was a breaking change which invlidated the patch release,
`flatc 2.0.5` (#7081). This PR reverses the default so we can
release a patch update. However, does break Rust users who work at
HEAD.

* Bump flatc patch version (2.0.6)

Co-authored-by: Casper Neo <cneo@google.com>
v2.0.6
2022-02-15 11:48:42 -05:00
Wouter van Oortmerssen
3413c33004 Fixed FlexBuffers verifier fuzzer timing out
Change-Id: I3a408da08676e522069adf83730d6bcc2b5493b3
2022-02-14 12:01:52 -08:00
Wouter van Oortmerssen
69f5660a44 Fixed Parser not checking size of union types vector
Change-Id: Ibcfc49a9c9376372bd15da2ed3a7f7a298863ccc
2022-02-14 11:48:46 -08:00
Wouter van Oortmerssen
d5add9fca5 Fixed FlexBuffers ToString unquoted non-ident keys
Change-Id: I0a17ee292c9eebbb1e9b2530c07d37d63b4dda24
2022-02-14 11:28:31 -08:00
Aaron Riekenberg
15df50eb7f Remove @ExperimentalUnsignedTypes annotation from kotlin code generator. (#7092) 2022-02-13 20:29:36 -08:00
Matt Grippaldi
a94132a45f Swift FlatBufferBuilder.sizedByteArray to ByteBuffer.toArray() (#7093)
* Moved code from FlatBufferBuilder.sizedByteArray to ByteBuffer.toArray() in Swift

* ByteBuffer.toArray() to  ByteBuffer.underlyingBytes
2022-02-11 13:26:16 -08:00
Björn Harrtell
48befb6bef [TS] Refactor away circular ref (#7099) 2022-02-11 09:40:09 -08:00
qazwsxedcrfvtg14
b300691336 Add reflection support for python (#7026)
We already have the reflection.fbs file and the flatbuffers
python language support.

Adding this feature would give the python developers the
ability to parse the flatbuffers schema and write some tools.

Co-authored-by: Derek Bailey <derekbailey@google.com>
2022-02-10 11:10:47 -08:00
Derek Bailey
faadbc10ea Add CreateVector overload to accept array like (#7095) 2022-02-09 22:16:46 -08:00
Derek Bailey
ed6ae8d322 explicitly defined std::allocator (#7094) 2022-02-09 15:09:52 -08:00
Timo Sturm
e910bddbcc [JS] Add ".js" suffix to all import statements to generate a browser compatible mjs version. (#7086) 2022-02-08 12:21:20 -08:00
Derek Bailey
c85fb690f4 Add Parsing Completed function for Rust (#7084) 2022-02-08 07:40:55 -08:00
Marcin Witkowski
c1daa6ba0c rust: Bump thiserror version and remove git dependency (#7080) 2022-02-04 16:02:02 -05:00
Derek Bailey
4c71c7b023 replace framework include of flatbuffers (#7079) 2022-02-03 17:40:15 -08:00
godcong
f5664d33fb fix go_test implement error (#7012)
* fix(grpc): fix go_test implement error

* fix(grpc): fix go_test implement error
2022-02-03 08:43:28 -08:00
Derek Bailey
39c8a19ce2 fixed comparator for native_inline (#7076)
* fixed comparator for native_inline

* added native_inline data

* updated more tests for the new field

* more fixes
2022-02-02 23:44:43 -08:00
Derek Bailey
826193ff68 skip generating reflection.fbs in generate_scripts (#7077) 2022-02-02 22:42:26 -08:00
Derek Bailey
fd0d1ed929 update C++ generator to emit scoped enums in vector of unions (#7075) 2022-02-02 22:29:21 -08:00
Derek Bailey
424988f308 replaced removed xml tag 2022-02-02 15:15:50 -08:00
Derek Bailey
b2550dbaa9 removed BSD-3-Clause license and Zlib licenses (#7073) 2022-02-02 13:12:01 -08:00
nicked
a2b238960f Fixed default value of bool in struct for Swift (#7072) 2022-02-02 23:39:19 +03:00
Derek Bailey
619b784374 one last dart omit local (#7070) 2022-02-01 22:25:52 -08:00
Derek Bailey
68a7661546 more omit type annotations for dart local variables (#7069) 2022-02-01 21:48:36 -08:00
Derek Bailey
7dac9961f0 omit type annotations for dart local variables (#7067)
* omit type annotations for dart local variables

* fixed some errors
2022-02-01 21:24:04 -08:00
Derek Bailey
c65c389c6d add xmlns to .Net (#7066) 2022-02-01 20:57:13 -08:00
mustiikhalil
6446dcf3d6 Updates swift gen licence for grpc code (#7063) 2022-02-01 14:23:38 -08:00
Derek Bailey
e090d8da17 Fixed long cast to int in flexbufferbuilder.java (#7059) 2022-02-01 12:58:10 -08:00
Derek Bailey
bc901436db clang format on codebase (#7058) 2022-02-01 11:23:18 -08:00
Derek Bailey
240be9b5ae attempt to remove appveyor (#7056) 2022-01-31 21:52:15 -08:00
Derek Bailey
bc366a7f9e Provide a short help text and default in error case (#6992)
* Provide a short help text and default in error case

* clean up short options a bit
2022-01-31 21:24:48 -08:00
Derek Bailey
14b19d446f Use FindPython3 (#7055) 2022-01-31 20:47:12 -08:00
Derek Bailey
9e6f17b94d remove BIICODE 2022-01-31 19:01:55 -08:00
Derek Bailey
c3801ad375 Update readme.md
Remove travis badge
Added Github action badge
Add dbaileychess twitter
2022-01-31 17:00:24 -08:00
mustiikhalil
4f3b24db09 Fixes a bug where bools arent being nil when marked optional (#7051) 2022-01-31 18:12:57 +03:00
Max Burke
1d294a31b8 Implement Serialize on generated rust types (#7022)
* fix for rust build

* Rust: Implement Serialize on generated types

For debugging convenience it is really handy to be able to dump out
types as another format (ie: json). For example, if we are logging a
type to a structured logging system, or even printing it out in a
structured way to the console.

Right now we handle this by shelling out to `flatc` which is not ideal;
by implementing Serialize on the generated types we can use any of the
Serializer-implementing packages for our structured debug output.

* clang-format

* Make the flatbuffers Rust crate only have an optional dependency on the `serde` packages.

* fix warning

* fix rust test build

* Oh yeah this needs to be initialized

* fix toml syntax

* code review feedback

* rebuild test data
2022-01-30 19:29:18 -05:00
Derek Bailey
dd8fccfb1b Cmake 3.16 de-facto minimum version (#7049) 2022-01-30 12:56:16 -08:00
Derek Bailey
7089c9ecdd Convert flatbuffers_version_string to inline function (#7046)
* Skip conditional for python executable

* replaced flatbuffers_version_string with inline function

* use const char* instead of string
2022-01-29 19:42:56 -08:00
Jean-François Roy
43203984f7 [C++] Support C++ object copies and moves (#5988)
Augment the C++ generator to emit a C++ copy constructor and a by-value
copy assignment operator. This is enabled by default when the C++
standard is C++11 or later. These additional functions are only emitted
for objects that need it, typically tables containing other tables.

These new functions are declared in the object table type and are
defined as inline functions after table declarations.

When these new functions are declared, a user-defined
explicitly-defaulted default constructor and move constructor are also
emitted.

The copy assignment operator uses the copy-and-swap idiom to provide
strong exception safety, at the expense of keeping 2 full table copies
in memory temporarily.

fixes #5783
2022-01-29 14:24:24 -08:00
Max Burke
5993338ee3 [ts] Builder incorrectly serializing empty strings (#7047)
* [ts] Builder incorrectly serializing empty strings

The builder was returning an offset of zero for empty strings. This is
leading to flatbuffers which fail verification in other languages, such
as Rust.

* tests expect 0 offset for null or undefined strings
2022-01-29 14:23:57 -08:00
Justin T Conroy
19920db39f Include a SizePrefixed..HasIdentifier for c++. (#6871)
* Include a SizePrefixed..HasIdentifier for c++.

* Add updated generated code.
2022-01-28 20:52:32 -08:00
Derek Bailey
dbbaeac85c Use ${PYTHON_EXECUTABLE} instead of py in cmake (#7042)
* Emit include for bfbs-gen-embed

* Use python3 explicitly

* bump min python version to 3.6

* Sort find_package for python

* try casting Path to string

* cast WindowsPath to string to please CI

* stringify the wrong thing

* another stringify path
2022-01-28 15:00:57 -08:00
Derek Bailey
028f0fde62 'flattest': Add --test_path option (#7041) 2022-01-27 14:21:01 -08:00
MS
87343631b9 Added support for clang-cl on windows (CMake) (#7038)
* Moved the CMake check for Clang *after* the one for MSVC, as clang-cl
  matches both Clang and MSVC.
* Removed /MP definition - controlled by CMake
* Added CPP define for _CRT_SECURE_NO_WARNINGS so clang can see it
  (it seems it doesnt pick up the pragma in util.cpp)
2022-01-27 10:48:01 -08:00
LouisP
1fbfaf5c5e Fix/cmake build grpc (#7028)
* BuildFlatbuffers.cmake: add verbose on build

* BuildFlatbuffers.cmake: properly add *.fb.* files with --grpc argument

When "--grpc" argument is provided as an extra flag, resulting grpc files
should be added as part of the interface library.
This prevent adding .fb.cc files manually to the build.

V2: fix dependency on grpc files
2022-01-25 20:57:31 -08:00
BogDan Vatra
4421375bb6 Add FlatBuffers::FlatBuffers interface, needed for FetchContent_Declare (#7023) 2022-01-25 20:51:00 -08:00
Jon Simantov
162ad7a37e Fix comment with line orders - Rust should be last. (#7037)
Fix for #6867.
2022-01-25 16:43:08 -08:00
Jon Simantov
a0a6c3f8c6 Use actions/checkout@v2, which fixes security vulnerability. (#7036)
Fix for issue #6999.
2022-01-25 16:19:05 -08:00
Jon Simantov
a2d38fbb98 Add --warnings-as-errors to flatc compiler. (#7034)
* Add --warnings-as-errors to flatc compiler.

With this option set, flatc will return an error on parsing if
any warnings occurred.

* Add unit test for opts.warnings_as_errors.

* Change explicit option setting to default.
2022-01-25 14:01:16 -08:00
Derek Bailey
9ef1524d3f Emit include for bfbs-gen-embed (#7031) 2022-01-25 10:43:16 -08:00
Derek Bailey
0c9de0352a Upgraded GRPC version to 1.42.0 (#7033) 2022-01-25 09:59:29 -08:00