# Flight ## Generated Code The prost/tonic code can be generated by running, which in turn invokes the Rust binary located in [gen](./gen) This is necessary after modifying the protobuf definitions or altering the dependencies of [gen](./gen), and requires a valid installation of [protoc](https://github.com/protocolbuffers/protobuf#protocol-compiler-installation). ```bash ./regen.sh ``` ### Why Vendor The standard approach to integrating `prost-build` / `tonic-build` is to use a `build.rs` script that automatically generates the code as part of the standard build process. Unfortunately this caused a lot of friction for users: - Requires all users to have a protoc install in order to compile the crate - [#2616](https://github.com/apache/arrow-rs/issues/2616) - Some distributions have very old versions of protoc that don't support required functionality - [#1574](https://github.com/apache/arrow-rs/issues/1574) - Inconsistent support within IDEs for code completion of automatically generated code