mirror of
https://github.com/google/flatbuffers.git
synced 2026-06-02 04:04:19 +00:00
* Add Build TS to CI jobs * Add npm compile step * Fix syntax * Add required code gen for TS * Exit on failure * Make TS code gen identical to test run * Remove duplicate TS code gen artifacts * Remove bad gitignore * Forgot parts of generate_code and make sure same settings for test run * Don't forget about the bat * Try and fix flatc args * Another attempt to fix args * Fix typo * Commit up to date code gen * Another attempt to fix sh/bat * Move -o param to after -I * Commit missing code gen file * Fix grpc code gen and test * Another grpc code gen fix * Rework to not use ts folder * Fix env vars in bat and make less churn * Move TS code gen to dedicated folder * Fix transpilation output folder and module paths * Fixes to code gen * Include generated js * Moved ts code gen * Remove test ts code gen folder
Languages known issues
Python
- Assert the type required in your server/client since python is able to receive
Bytes arrayorutf8 strings.
def SayHello(self, request, context):
# request might be a byte array or a utf8 string
r = HelloRequest.HelloRequest().GetRootAs(request, 0)
reply = "Unknown"
if r.Name():
reply = r.Name()
# Issues might happen if type checking isnt present.
# thus encoding it as a `reply.decode('UTF-8')`
return build_reply("welcome " + reply.decode('UTF-8'))
This can be prevented by making sure all the requests coming to/from python are Bytes array
def say_hello(stub, builder):
hello_request = bytes(builder.Output())
reply = stub.SayHello(hello_request)
r = HelloReply.HelloReply.GetRootAs(reply)
print(r.Message())
Go
- Always requires the
content-typeof the payload to be set toapplication/grpc+flatbuffers
example: .SayHello(ctx, b, grpc.CallContentSubtype("flatbuffers"))