Skip to content
Permalink
master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Commits on May 5, 2023

  1. Add goldens directory

    dbaileychess committed May 5, 2023
  2. Rework cmake flatc codegeneration (#7938)

    * start fixing the code generation steps
    
    * reworked flatc generation in cmake
    dbaileychess committed May 5, 2023

Commits on May 4, 2023

  1. Add binary schema reflection (#7932)

    * Add binary schema reflection
    
    * remove not-used parameter
    
    * move logic from object API to base API
    
    * forward declare
    
    * remove duplicate code gen that was stompping on the edits
    
    * reduce to just typedef generation
    
    * fixed bazel rules to not stomp
    
    * more bazel fixes to support additional generated files
    dbaileychess committed May 4, 2023

Commits on May 3, 2023

  1. Migrate from rules_nodejs to rules_js/rules_ts (take 2) (#7928)

    * Migrate from rules_nodejs to rules_js/rules_ts (take 2)
    
    This is the second version of patch #7923. The first version got
    reverted because bazel query was failing:
    
        $ bazel --nosystem_rc --nohome_rc query tests(set('//...')) except tests(attr("tags", "manual", set('//...')))
        ERROR: Traceback (most recent call last):
        	File "/workdir/tests/ts/bazel_repository_test_dir/BUILD", line 6, column 22, in <toplevel>
        		npm_link_all_packages(name = "node_modules")
        	File "/var/lib/buildkite-agent/.cache/bazel/_bazel_buildkite-agent/ec321eb2cc2d0f8f91b676b6d4c66c29/external/npm/defs.bzl", line 188, column 13, in npm_link_all_packages
        		fail(msg)
        Error in fail: The npm_link_all_packages() macro loaded from @npm//:defs.bzl and called in bazel package 'tests/ts/bazel_repository_test_dir' may only be called in bazel packages that correspond to the pnpm root package '' and pnpm workspace projects ''
    
    This was happening because the `.bazelrc` file only added
    `--deleted_packages` to the `build` command. We also need it for the
    `query` command. This second version of the patch fixes that.
    
    Original commit message:
    
    This patch migrates the current use of rules_nodejs to the new rules_js.
    rules_js is the intended replacement of rules_nodejs as per this note:
    https://github.com/aspect-build/rules_js#relationship-to-rules_nodejs
    
    > rules_js is an alternative to the build_bazel_rules_nodejs Bazel module
    > and accompanying npm packages hosted in
    > https://github.com/bazelbuild/rules_nodejs, which is now
    > unmaintained. All users are recommended to use rules_js instead.
    
    There are a few notable changes in this patch:
    1. The `flatbuffer_ts_library` macro no longer accepts a `package_name`
       attribute. This is because rules_js appears to manage the import
       naming of dependencies via top-level `npm_link_package` targets.
       Users will have to migrate.
    2. I added a few more arguments to `flatbuffer_library_public()`. These
       helped with exposing esbuild to `ts/compile_flat_file.sh`.
    3. I pinned the version of `typescript` in `package.json` so that
       rules_ts can download the exact same version. rules_ts doesn't know
       what to do if the version isn't exact.
    4. Since rules_js uses the pnpm locking mechanism, we now have a
       `pnpm-lock.yaml` file instead of a yarn lock file.
    4. I added bazel targets for a few of the existing tests in `tests/ts`.
       They can be run with `bazel test //test/ts:all`. Since there is no
       flexbuffers bazel target, I did not add a bazel target for the
       corresponding test.
    5. I added a separate workspace in `tests/ts/bazel_repository_test_dir/`
       to validate that the flatbuffers code can be imported as an external
       repository. You can run the test with
       `bazel test //test/ts:bazel_repository_test`. For this to work, I
       needed to expose a non-trivial chunk of the flatbuffers code to the
       test. I achieved this through some recursive `distribution`
       filegroups. This is inspired by rules_python's workspace tests.
    
    I did not do anything special to validate that the `gen_reflections`
    parameter works the same. This patch doesn't change anything about
    the TypeScript generation.
    
    As a side note: I am not an expert with rules_js. This patch is my
    attempt based on my limited understanding of the rule set.
    
    Fixes #7817
    
    * Fix the query
    
    ---------
    
    Co-authored-by: Derek Bailey <derekbailey@google.com>
    philsc and dbaileychess committed May 3, 2023

Commits on Apr 29, 2023

  1. more window fixes

    dbaileychess committed Apr 29, 2023

Commits on Apr 28, 2023

  1. inject no long for FBS generation to remove logs in flattests (#7926)

    * inject no long for FBS generation to remove logs in flattests
    
    * updated blaze rules
    dbaileychess committed Apr 28, 2023
  2. Migrate from rules_nodejs to rules_js/rules_ts (#7923)

    * Start using pnpm
    
    * Add @npm
    
    * get more stuff set up
    
    * Get the analysis phase passing.
    
    * Get esbuild working?
    
    * Get it compiling?
    
        $ bazel build //tests/ts/...
    
    * Try to get the test working
    
    * test is passing
    
    * Get the other tests working
    
    * clarify comment
    
    * clean up a bit
    
    * Try to add another test
    
    * Add another test
    
    * clean up more
    
    * remove unused reference
    
    * Add e2e test
    
    * Get more of the test working
    
    * add lock file
    
    * Get test working on its own
    
    * Get e2e test passing
    
    * fix infinite recursion
    
    * Add comments
    
    * clean up some more
    
    * clean up more again
    
    * Source typescript version from package.json
    
    * run buildifier
    
    * lint
    
    * Fix unset `extra_env`
    
    * Incorporate feedback
    
    * run buildifier
    
    ---------
    
    Co-authored-by: Derek Bailey <derekbailey@google.com>
    philsc and dbaileychess committed Apr 28, 2023
  3. Only generate @kotlin.ExperimentalUnsigned annotation on create*Vecto…

    …r methods having an unsigned array type parameter. (#7881)
    
    Co-authored-by: Derek Bailey <derekbailey@google.com>
    aaronriekenberg and dbaileychess committed Apr 28, 2023
  4. additional check for absl::string_view availability (#7897)

    absl::string_view is uses std::string_view when available. It already checks if std::string_view is available in the earlier code.
    It should only use absl::string_view implementation.
    
    Co-authored-by: Derek Bailey <derekbailey@google.com>
    ocpalo and dbaileychess committed Apr 28, 2023
  5. Optionally generate Python type annotations (#7858)

    * optionally generate type prefixes and suffixes for python code
    
    * fix codegen error when qualified name is empty
    
    * WIP: Python typing
    
    * more progress towards python typing
    
    * Further iterate on Python generated code typing
    
    * clang-format
    
    * Regenerate code
    
    * add documentation for Python type annotations option
    
    * generate code with Python type annotations
    
    * handle forward references
    
    * clang-format
    maxburke committed Apr 28, 2023

Commits on Apr 26, 2023

  1. Replace deprecated command with environment file (#7921)

    Co-authored-by: Derek Bailey <derekbailey@google.com>
    jongwooo and dbaileychess committed Apr 26, 2023
  2. drop glibc from runtime dependencies (#7906)

    #7696
    The binary size grows from 5.8MB to 7.2MB, but this way it works on Ubuntu 18.04 and amazonlinux.
    faucct committed Apr 26, 2023
  3. Make JSON supporting advanced union features (#7869)

    This change allows user to decode binary with given schema to JSON
    representation when schema defines union with struct.
    
    Co-authored-by: Derek Bailey <derekbailey@google.com>
    admo and dbaileychess committed Apr 26, 2023
  4. Allow to use functions from BuildFlatBuffers.cmake from a flatbuffe…

    …rs installation installed with CMake. (#7912)
    
    Co-authored-by: Derek Bailey <derekbailey@google.com>
    KerstinKeller and dbaileychess committed Apr 26, 2023
  5. TS/JS: Use TypeError instead of Error when appropriate (#7910)

    Ie: when the needed conditions are not satisfied in order to perform a
     given action.
    jmillan committed Apr 26, 2023
  6. Go: make generated code more compliant to "go fmt" (#7907)

    Co-authored-by: Derek Bailey <derekbailey@google.com>
    jdemeyer and dbaileychess committed Apr 26, 2023
  7. Support file_identifier in Go (#7904)

    Co-authored-by: Derek Bailey <derekbailey@google.com>
    jdemeyer and dbaileychess committed Apr 26, 2023
  8. Optionally generate type prefixes and suffixes for python code (#7857)

    * optionally generate type prefixes and suffixes for python code
    
    * fix codegen error when qualified name is empty
    
    * generated code updated
    maxburke committed Apr 26, 2023

Commits on Apr 12, 2023

  1. Go: add test for FinishWithFileIdentifier (#7905)

    Co-authored-by: Michael Le <michael.le647@gmail.com>
    jdemeyer and le-michael committed Apr 12, 2023

Commits on Apr 11, 2023

  1. Fix go_sample.sh (#7903)

    jdemeyer committed Apr 11, 2023

Commits on Apr 6, 2023

  1. [TS/JS] Upgrade dependencies (#7889)

    Co-authored-by: Derek Bailey <derekbailey@google.com>
    bjornharrtell and dbaileychess committed Apr 6, 2023
  2. Add a FileWriter interface (#7821)

    * Add a FileWriter interface
    
    * Change interface
    
    * Provide 2 impl for File interface: FileManager & FileNameManager
    
    * Update
    
    * update
    
    * Update
    
    * Add file_writer file
    
    * Update
    
    * Format files
    
    * Update based on review
    
    * Update
    
    * Format bzl file
    
    * Add LoadFile function
    
    * Format
    
    ---------
    
    Co-authored-by: Derek Bailey <derekbailey@google.com>
    Kn99HN and dbaileychess committed Apr 6, 2023
  3. TS/JS: Use minvalue from enum if not found (#7888)

    Co-authored-by: Derek Bailey <derekbailey@google.com>
    bjornharrtell and dbaileychess committed Apr 6, 2023

Commits on Apr 5, 2023

  1. [CS] Verifier (#7850)

    * Fix C/C++ Create<Type>Direct with sorted vectors
    
    If a struct has a key the vector has to be sorted. To sort the vector
    you can't use "const".
    
    * Changes due to code review
    
    * Improve code readability
    
    * Add generate of JSON schema to string to lib
    
    * option indent_step is supported
    
    * Remove unused variables
    
    * Fix break in test
    
    * Fix style to be consistent with rest of the code
    
    * [TS] Fix reserved words as arguments (#6955)
    
    * [TS] Fix generation of reserved words in object api (#7106)
    
    * [TS] Fix generation of object api
    
    * [TS] Fix MakeCamel -> ConvertCase
    
    * [C#] Fix collision of field name and type name
    
    * [TS] Add test for struct of struct of struct
    
    * Update generated files
    
    * Add missing files
    
    * [TS] Fix query of null/undefined fields in object api
    
    * Add .Net verfier
    
    * Add some fuzz tests for .Net
    
    * Remove additional files
    
    * Fix .net test
    
    * Changes due to PR
    
    * Fix generated files
    
    ---------
    
    Co-authored-by: Derek Bailey <derekbailey@google.com>
    tira-misu and dbaileychess committed Apr 5, 2023

Commits on Mar 30, 2023

  1. README.md: PyPI case typo (#7880)

    PyPI has three capital letters. See the front page of the service:
    https://pypi.org/
    "The Python Package Index (PyPI) ..."
    
    Update the Python link under "Supported programming languages"
    
    Co-authored-by: Michael Le <michael.le647@gmail.com>
    crisman and le-michael committed Mar 30, 2023
Older