1. 10 Dec, 2018 1 commit
    • Austin Schuh's avatar
      Add flatbuffer_cc library support (#5061) · d56a4055
      Austin Schuh authored
      * Add flatbuffer_cc library support
      
      * Update flags so all the tests pass
      
      Tests now all pass!
      
      * Modify the tests to use the generated code
      
      This should be a simple serialize/deserialize test of the new generated
      code to make sure the bazel rules are doing something sane.
      
      * Use generated monster_test.fb in testing/test.cpp
      
      cmake drops it's generated code in tests/monster_test_generated.h
      Instead of checking that in, let's generate it with bazel.
      
      * Make grpc tests depend on monster_test_generated.h
      
      * Remove redundant cmake dependency
      
      This should address @aardappel's feedback.
      
      * Run flatc for Android as well
      
      This will fix the last travis.ci failure
      
      * Add generated output folder and fix flags
      
      * Move flatbuffers_header_build_rules to the library that uses it
      
      * Use --cpp-ptr-type to fix android
      
      Android was the only target using the STL emulation layer.  It needed
      the --cpp-ptr-type flatbuffers::unique_ptr flag to work.  Add it!
      
      * Roll back changes to use autogenerated monster_test_generated.
      
      Flip tests/test.cpp to use the autogenerated file as well.
      d56a4055
  2. 06 Dec, 2018 1 commit
  3. 03 Dec, 2018 2 commits
  4. 30 Nov, 2018 1 commit
    • Robert's avatar
      CI: Dockerized language port tests (#5066) · 79cd55bd
      Robert authored
      This runs a script in TravisCI that executes a bunch of small Docker image
      scripts to test the language ports in isolated environments. This allows us to
      test multiple language versions with little additional complexity.
      
      Covers:
      
      + Java OpenJDK 10.0.2
      + Java OpenJDK 11.0.1
      + Node 10.13.0
      + Node 11.2.0
      + Python CPython 2.7.15
      + Python CPython 3.7.1
      + Rust 1.30.1
      79cd55bd
  5. 29 Nov, 2018 2 commits
  6. 17 Nov, 2018 3 commits
    • Robert's avatar
      0143f4e3
    • Russell Chou's avatar
      Make Parser skip files it's seen already. (#5048) · e161ade6
      Russell Chou authored
      The use case is so we can batch compile a bunch of schemas, some which can depend on each other, without caring about their order.
      e161ade6
    • Wouter van Oortmerssen's avatar
      Make string/vector field serialization order not depend on optimizer. · f575b02f
      Wouter van Oortmerssen authored
      Multiple calls of e.g. CreateString inside a call to a CreateTable
      could cause those strings to end up in different locations in the
      wire format, since order or argument evaluation is undefined.
      
      This is allowed by the FlatBuffer format, but it is not helpful,
      especially when debugging the contents of binaries, or comparing
      against a "golden" binary for tests etc.
      
      Now making sure that all the CreateTableDirect calls first serialize
      sub strings/vectors before calling CreateTable.
      
      Also made similar changes to the serialization of "binary schemas".
      
      Change-Id: I5747c4038b37a0d400aca2bc592bec751cf5c172
      f575b02f
  7. 16 Nov, 2018 4 commits
  8. 15 Nov, 2018 1 commit
  9. 13 Nov, 2018 1 commit
  10. 12 Nov, 2018 3 commits
  11. 06 Nov, 2018 1 commit
  12. 05 Nov, 2018 1 commit
  13. 02 Nov, 2018 3 commits
  14. 01 Nov, 2018 2 commits
  15. 30 Oct, 2018 2 commits
  16. 29 Oct, 2018 1 commit
  17. 25 Oct, 2018 2 commits
  18. 24 Oct, 2018 1 commit
  19. 22 Oct, 2018 5 commits
    • Felix Hanley's avatar
      560718e9
    • Doug Muir's avatar
      Make alignment checking optional. (#5011) · ff687ae9
      Doug Muir authored
      ff687ae9
    • Frank Benkstein's avatar
      make flatbuffers::IsFieldPresent safer (#4988) · ca417426
      Frank Benkstein authored
      Give the vtable offset enum inside each table the name
      "FlatBuffersVTableOffset" and base type voffset_t so it can be used as a
      dependent type in IsFieldPresent. This makes that function slightly
      safer since it prevents calling it with arbitrary, non-table types.
      Now, the only way to use IsFieldPresent incorrectly is to create your
      own type which does not inherit from flatbuffers::Table but has a
      dependent voffset convertible type "FlatBuffersVTableOffset".
      ca417426
    • Vladimir Glavnyy's avatar
      Add fuzzer test for scalar numbers in json. (#4996) · 55b30827
      Vladimir Glavnyy authored
      * Add fuzzer test for scalar numbers in json. Grammar-based regex used to check correctness.
      
      * Fix conversation
      55b30827
    • Frank Benkstein's avatar
      CI check generate code (#4998) · efbb11e0
      Frank Benkstein authored
      * call reflection code generation from tests
      
      This simplifies instructions to contributors so they don't forget to update
      reflection code.
      
      * add error handling to generate_code scripts
      
      Let them propagate their errors instead of swallowing them so they show
      up when called in CI.
      
      * apply editorconfig to shell scripts
      
      * use ordered map in dart codegen
      
      Using an unordered map in the codegen can lead to spurious diffs in the
      generated dart code.
      
      * add CI check for generate_code being run
      
      * update reflection_generated.h
      
      * disable diff-check for monster_test.bfbs
      
      Work around #5008.
      efbb11e0
  20. 18 Oct, 2018 2 commits
    • Frank Benkstein's avatar
      forbid enum values that are out of range (#4977) · 5c0f914f
      Frank Benkstein authored
      * forbid enum values that are out of range
      
      Enum values that are out of range can lead to generated C++ code that does
      not compile.  Also forbid boolean enums.
      
      * update enum and union documentation slightly
      5c0f914f
    • Sumant Tambe's avatar
      Efficient Conversion of a FlatBufferBuilder to a MessageBuilder (#4980) · 802639e4
      Sumant Tambe authored
      * Efficient conversion of FlatBufferBuilder to grpc::MessageBuilder
      
      * Added a variety of tests to validate correctness of the MessageBuilder move operations.
      Disable MessageBuilder half-n-half tests on MacOS.
      
      * Fix failing Android build
      
      * Generalized the MessageBuilder move constructor to accept a deallocator
      802639e4
  21. 16 Oct, 2018 1 commit