bazelbuild / rules_rust

Rust rules for Bazel
https://bazelbuild.github.io/rules_rust/
Apache License 2.0
671 stars 434 forks source link

Correct prost file descriptor set option #2995

Closed GregBowyer closed 1 week ago

GregBowyer commented 1 week ago

I am pretty sure the argument given to protoc_gen_prost is wrong, file descriptors are not present in artifacts.

GregBowyer commented 1 week ago

Turns out I misunderstood what programs are being invoked, this can be added to the toolchain if needed.

  rust_prost_toolchain(
      name = "prost_toolchain_impl",
      prost_plugin = "@crate_index//:protoc-gen-prost__protoc-gen-prost",
      prost_runtime = ":prost_runtime",
      prost_types = "@crate_index//:prost-types",
┃     prost_opts = [
┃         # For making sure File descriptor sets are added
┃         "file_descriptor_set"
┃     ],
      proto_compiler = "@protobuf//:protoc",
      tonic_plugin = "@crate_index//:protoc-gen-tonic__protoc-gen-tonic",
      tonic_runtime = ":tonic_runtime",
  )

  toolchain(
      name = "prost_toolchain",
      toolchain = "prost_toolchain_impl",
      toolchain_type = "@rules_rust//proto/prost:toolchain_type",
  )

I think this is an incorrect PR; I dont know if this should be the default for rules_rust or not.