1. 05 Jul, 2018 2 commits
    • Derek Bailey's avatar
      Lua (5.3) Language addition (#4804) · ba5eb3b5
      Derek Bailey authored
      * starting Lua port of python implmention. Syncing commit
      
      * Bulk of Lua module port from Python done. Not tested, only static analysis. Need to work on binary strings. Started work on flatc lua code generation
      
      * Fixed all the basic errors to produced a binary output from the builder, don't know if it is generated correctly, but it contains data, so that must be good
      
      * fixed binary set command that was extending the array improperly
      
      * continued improvement
      
      * Moved lua submodules down a directory so their names don't clash with potential other modules. Added compat module to provide Lua versioning logic
      
      * Successful sample port from Python
      
      * working on testing Lua code with formal tests
      
      * continued to work on tests and fixes to code to make tests pass
      
      * Added reading buffer test
      
      * Changed binaryarray implmentation to use a temporary table for storing data, and then serialize it to a string when requested. This double the rate of building flatbuffers compared to the string approach.
      
      * Didn't need encode module as it just added another layer of indirection that isn't need
      
      * profiled reading buffers, optimizations to increase read performance of monster data to ~7 monster / millisecond
      
      * Writing profiler improvments. Get about
      ~2 monsters/millisecond building rate
      
      * removed Numpy generation from Lua (came from the Python port)
      
      * math.pow is deprecated in Lua 5.3, so changed to ^ notation. Also added .bat script for starting Lua tests
      
      * adding results of generate_code.bat
      
      * simple edits for code review in PR.
      
      * There was a buffer overflow in inserting the keywords into the unorder set for both the Lua and Python code gens. Changed insertion to use iterators.
      
      * fixed spacing issue
      
      * basic documenation/tutorial updates. Updated sample_binary.lua to reflect the tutorial better
      
      * removed windows-specific build step in Lua tests
      ba5eb3b5
    • Vladimir Glavnyy's avatar
      Issue #4799 fixed. Generator for KeyCompareWithValue is extracted. (#4802) · 8ea293b9
      Vladimir Glavnyy authored
      * Issue #4799 fixed. Generator for KeyCompareWithValue is extracted.
      
      * format fix
      8ea293b9
  2. 03 Jul, 2018 1 commit
  3. 02 Jul, 2018 1 commit
  4. 28 Jun, 2018 1 commit
  5. 27 Jun, 2018 2 commits
    • Kapil Sharma's avatar
      Go GRPC generator Updates - Fixes #4787 (#4797) · ea06768a
      Kapil Sharma authored
      * Fix for #4787
      
      - Updated the grpc generator for go to use full namespace for service
      rpc method names
      
      * Formatting Fix
      
      - Set to Google Style Formatting
      ea06768a
    • Paul Reimer's avatar
      Add --force-defaults option to flatc [C++, parser] (#4729) · 741c6305
      Paul Reimer authored
      * Add --force-defaults option to flatc
      
      To emit default values for fields which are not present or which are set
      to the default value.
      
      * flatc option --force-defaults should have a default value (false) and take action on the builder_ within the Parser constructor
      
      * Add help text from flatc --force-defaults to Compiler.md doc
      
      * Clarified docs for flatc --force-defaults, and imply that this behaviour is not normally needed.
      
      * Updated docs and flatc help text for --force-defaults option
      741c6305
  6. 25 Jun, 2018 4 commits
  7. 21 Jun, 2018 1 commit
    • Shivendra Agarwal's avatar
      Comment update for ForceDefaults. (#4788) · 00b741e5
      Shivendra Agarwal authored
      Current comment is a bit ambiguous. Default values can be read either if field is not written (like in table), or if they are written explicitly by client but not serialized due to optimization. Impression from current comment is that all the default values which are coming during read are from binaries when we turn-on Force-Defaults. However, that will be a wrong interpretation.
      
      Force_Defaults = true ensures to turn OFF later optimization. In case a field is not written, during read we will get default values but they will still not be serialized.
      00b741e5
  8. 18 Jun, 2018 1 commit
  9. 14 Jun, 2018 3 commits
  10. 12 Jun, 2018 2 commits
    • Kamil Rojewski's avatar
      Fixed TypeScript links in docs (#4783) · 3e3c770c
      Kamil Rojewski authored
      * Eclipse ignore
      
      * TypeScript support
      
      * Prefixing enums
      
      * Test results
      
      * Merged JS and TS generators
      
      * Fixed AppVeyor build problems
      
      * Fixed more AppVeyor build problems
      
      * Fixed more AppVeyor build problems
      
      * Changed TS flag to options struct
      
      * Storing options by value
      
      * Removed unneeded const
      
      * Re-export support for unions
      
      * Uint support
      
      * Casting bools to numbers for mutation
      
      * TS shell tests
      
      * Reverted generates js test file to original version
      
      * Backing up js tests and properly generating test data
      
      * Not importing flatbuffers for TS test generation
      
      * Not overwriting generated js for tests
      
      * AppVeyor test fixes
      
      * Generating the most strict TS code possible
      
      * Not returning null when creating vectors
      
      * Not returning null from struct contructors
      
      * Vector of unions for ts/js
      
      * Sanity check for languages
      
      * Indentation fix + output test files
      
      * Vectors of unions for php
      
      * Fixes to union vector handling + tests
      
      * Fix for strictPropertyInitialization
      
      * Fix for new aligned operator new for gcc >= 7.1
      
      * Not generating imports/ns prefixes with --gen-all
      
      * TypeScript docs
      
      * Missing imports of enums
      
      * Missing TS links
      
      * Enabled vector of unions for java, since it seems to work
      
      * Added jitpack config
      
      * Added obj to vector of unions getter
      
      * Removed unneeded accessor
      
      * Bumped jdk version in pom.xml
      
      * Vector of unions support for c#
      
      * Missing TypeScript doc processing
      3e3c770c
    • Woody Guo's avatar
      Dart: Generate the enum from 0 if value is null and fix inconsistent naming when… · 5a3f18d1
      Woody Guo authored
      Dart: Generate the enum from 0 if value is null and fix inconsistent naming when generating object builder (#4782)
      
      * Dart: Generate the enum from 0 if value is null
      
      * Dart: Fix inconsistent naming when generating object builder
      5a3f18d1
  11. 08 Jun, 2018 4 commits
  12. 07 Jun, 2018 2 commits
  13. 04 Jun, 2018 1 commit
  14. 01 Jun, 2018 1 commit
  15. 31 May, 2018 6 commits
  16. 18 May, 2018 4 commits
    • Wouter van Oortmerssen's avatar
      Changed how the default allocator is handled. · 0848f58c
      Wouter van Oortmerssen authored
      This is to not need static variables, which could trip up users
      with destruction order problems.
      
      This potentially makes these operations slightly slower, but I
      think they're infrequent enough that this should not be noticable.
      
      Also there is one breaking API change, for a method that is not
      used by any code in FlatBuffers and is assumed to affect very
      few if any users. A namechange and comment ensures that those
      affected, if any, will not run into trouble silently.
      
      Change-Id: I16c1352d1dfc9092c816ddb7e353ed7f5f417444
      Tested: on Linux.
      0848f58c
    • Vitaly Bondar's avatar
      8e42f448
    • Dan Field's avatar
      Add [Dart] support (#4676) · 88912640
      Dan Field authored
      * Add [Dart] support
      
      * fix enum vectors
      
      * Allow for opt out of string interning
      
      * fix comment style, make interning opt in
      
      * remove Offset<T>, prefer int
      
      * avoid creating unnecessary vtable objects
      
      * start work on tests - do not generate builder if struct has 0 fields - add int64
      
      * support reading structs properly
      
      * correctly handle reading vectors of structs, dartfmt
      
      * support structs, fix unnecessary prepares
      
      * fix bool customizations
      
      * undo unintentional removal of file
      
      * docs updates, complete tutorial, bug fix for codegen
      
      * more documentation
      
      * Update docs, add to doxygen file
      
      * update package structure, add samples script/code
      
      * rearrange sample
      
      * Tests
      
      * Add readme for pub
      
      * cleanup package for pub
      
      * update docs for renamed file
      
      * remove custom matcher, use `closeTo` instead
      
      * remove unintentional file
      
      * remove unintended file checkin
      
      * use auto, move method, cleanup
      
      * refactor to ObjectBuilders, add Builders
      
      * Update tests, examples
      
      * Add files missing from previous commit
      
      * documentation and example updates
      
      * Update LICENSE, make dartanalyzer happy, fix minor bugs, get rid of duplicate files, publish script
      
      * fix sample for slightly different schema
      
      * Update pubspec.yaml
      88912640
    • joligarson's avatar
      Fix undertermined execution behavior (#4751) · c43a0bef
      joligarson authored
      Fix for the issue #4744: Ambiguous side-effect execution on vector_downward::make_space() method.
      C++ does not impose evaluation order on the two expressions on the right side of the assignment, so compiler can freely decide. As ensure_space() method can change the value of "cur_" variable, the result of the subtraction may be different depending on the evaluation order, which is ambiguous in C++.
      In order to make this code deterministic and correct, cur_ must be evaluated after ensure_space() is called.
      c43a0bef
  17. 14 May, 2018 3 commits
    • Tin Tvrtković's avatar
      [BREAKING CHANGE] Python: handle bool table fields properly. (#4736) · a9640bd9
      Tin Tvrtković authored
      * Python: handle bool table fields properly.
      
      * Small refactor.
      
      * Use snake_case instead of camelCase. Use auto.
      a9640bd9
    • Kamil Rojewski's avatar
      Vector of unions support for java and c# (#4735) · f11ffedb
      Kamil Rojewski authored
      * Eclipse ignore
      
      * TypeScript support
      
      * Prefixing enums
      
      * Test results
      
      * Merged JS and TS generators
      
      * Fixed AppVeyor build problems
      
      * Fixed more AppVeyor build problems
      
      * Fixed more AppVeyor build problems
      
      * Changed TS flag to options struct
      
      * Storing options by value
      
      * Removed unneeded const
      
      * Re-export support for unions
      
      * Uint support
      
      * Casting bools to numbers for mutation
      
      * TS shell tests
      
      * Reverted generates js test file to original version
      
      * Backing up js tests and properly generating test data
      
      * Not importing flatbuffers for TS test generation
      
      * Not overwriting generated js for tests
      
      * AppVeyor test fixes
      
      * Generating the most strict TS code possible
      
      * Not returning null when creating vectors
      
      * Not returning null from struct contructors
      
      * Vector of unions for ts/js
      
      * Sanity check for languages
      
      * Indentation fix + output test files
      
      * Vectors of unions for php
      
      * Fixes to union vector handling + tests
      
      * Fix for strictPropertyInitialization
      
      * Fix for new aligned operator new for gcc >= 7.1
      
      * Not generating imports/ns prefixes with --gen-all
      
      * TypeScript docs
      
      * Missing imports of enums
      
      * Missing TS links
      
      * Enabled vector of unions for java, since it seems to work
      
      * Added jitpack config
      
      * Added obj to vector of unions getter
      
      * Removed unneeded accessor
      
      * Bumped jdk version in pom.xml
      
      * Vector of unions support for c#
      f11ffedb
    • Keef Aragon's avatar
      5d42c835
  18. 10 May, 2018 1 commit
    • Paul Reimer's avatar
      Add define/ifdef blocks, alternate sprintf implementation via… · 7c1203d4
      Paul Reimer authored
      Add define/ifdef blocks, alternate sprintf implementation via FLATBUFFERS_PREFER_PRINTF [C++] (#4700)
      
      * Add define/ifdef blocks for FLATBUFFERS_PREFER_PRINTF to avoid using std::*streams for idl_parser
      
      * Use string::size() as limit in snprintf
      
      * Refactored FLATBUFFERS_PREFER_PRINTF guarded feature into NumToStringImplWrapper around sprintf
      
      * Remove '.0' where not needed from IntToDigitCount
      
      * Remove leading dot from name in GetFullyQualifiedName when FLATBUFFERS_PREFER_PRINTF is enabled
      
      * Return string directly from conversion functions where possible when FLATBUFFERS_PREFER_PRINTF is enabled
      
      * Use string instead of stringstream for GetFullyQualifiedName
      
      * Revert removing leading dot from GetFullyQualifiedName, it does need to be there for parity with the stringstream implementation
      
      * Dot is single char in Namespace::GetFullyQualifiedName
      
      * Remove trailing (duplicate) null-byte from NumToStringImplWrapper when using FLATBUFFERS_PREFER_PRINTF.
      
      * Update preprocessor indenting (and use clang-format off/on) for FLATBUFFERS_PREFER_PRINTF
      
      * Reduce whitespace, unneeded braces in FLATBUFFERS_PREFER_PRINTF string width functions
      
      * Remove unneeded use of iostream from idl_parser.cpp, std::string is used instead
      
      * Tell snprintf to use the trailing null byte expected at the end of std::string buffer
      7c1203d4