• Per Grön's avatar
    C++/Go: Update gRPC related code to work with gRPC 1.3+ (#4305) · 9aeeddf5
    Per Grön authored
    * Don't fail the build on unused parameters
    
    gRPC headers have unused parameters so this breaks the test build.
    
    * Pull in updated compiler files from gRPC
    
    There have been some API breaks in gRPC lately. This commit
    pulls in the most recent version of the files in this repo
    that are just copied from gRPC.
    
    * Modify the gRPC files so that they can work with Flatbuffers
    
    The files taken from gRPC do not work out-of-the-box with Flatbuffers.
    This commit modifies them so that they work. Hopefully this commit
    will be able to serve as a guide or maybe even be cherry-picked on
    top of new versions of those files as newer versions from gRPC are
    pulled in.
    
    * Adjust the rest of Flatbuffers to work with the new gRPC
    
    * Change idl_gen_grpc.cpp to work with the new API
    * Add missing #include in flatbuffers/grpc.h
    * Run tests/generate_code.sh and check in the results
    * Don't link with grpc++_unsecure and (secure) grpc. That's just weird
    
    * Revert unrelated JS/TS test changes
    
    * Simplify compiler/config.h
    
    There is no need to import this file from gRPC. In fact, it probably
    makes sense to not do so, since it seems to be intended to have
    project specific configuration in it.
    
    * Don't emit C++ types in the Go gRPC code generator
    
    * Don't emit C++ #includes in generated gRPC code
    
    Before this PR, there was a Go-specific additional_includes method
    in schema_interface.h, which is shared with the gRPC repo. The
    additional parameter to FlatBufFile in idl_gen_grpc.cpp makes that
    unnecessary, which means we need less Flatbuffer-specific changes
    in gRPC.
    9aeeddf5
config.h 1.77 KB