fix(tvix/{store,castore,build}): Compile tonic w/o config in build.rs

Previously we had to make a mutable Config instance and set bytes and
other values in it because they were not exposed to the builder pattern
(https://github.com/hyperium/tonic/issues/908) but now they are, so we
just set them through the builder.

Change-Id: I8904c6b93f09173b56586024b1ced59d622bce66
Reviewed-on: https://cl.tvl.fyi/c/depot/+/11966
Autosubmit: Ilan Joselevich <personal@ilanjoselevich.com>
Tested-by: BuildkiteCI
Reviewed-by: flokli <flokli@flokli.de>
This commit is contained in:
Ilan Joselevich 2024-07-09 15:06:03 +02:00 committed by clbot
parent 6d7713572f
commit 4f7b19701c
3 changed files with 9 additions and 21 deletions

View file

@ -12,17 +12,13 @@ fn main() -> Result<()> {
builder = builder.file_descriptor_set_path(descriptor_path); builder = builder.file_descriptor_set_path(descriptor_path);
}; };
// https://github.com/hyperium/tonic/issues/908
let mut config = prost_build::Config::new();
config.bytes(["."]);
config.extern_path(".tvix.castore.v1", "::tvix_castore::proto");
builder builder
.build_server(true) .build_server(true)
.build_client(true) .build_client(true)
.emit_rerun_if_changed(false) .emit_rerun_if_changed(false)
.compile_with_config( .bytes(["."])
config, .extern_path(".tvix.castore.v1", "::tvix_castore::proto")
.compile(
&[ &[
"tvix/build/protos/build.proto", "tvix/build/protos/build.proto",
"tvix/build/protos/rpc_build.proto", "tvix/build/protos/rpc_build.proto",

View file

@ -12,17 +12,13 @@ fn main() -> Result<()> {
builder = builder.file_descriptor_set_path(descriptor_path); builder = builder.file_descriptor_set_path(descriptor_path);
}; };
// https://github.com/hyperium/tonic/issues/908
let mut config = prost_build::Config::new();
config.bytes(["."]);
config.type_attribute(".", "#[derive(Eq, Hash)]");
builder builder
.build_server(true) .build_server(true)
.build_client(true) .build_client(true)
.emit_rerun_if_changed(false) .emit_rerun_if_changed(false)
.compile_with_config( .bytes(["."])
config, .type_attribute(".", "#[derive(Eq, Hash)]")
.compile(
&[ &[
"tvix/castore/protos/castore.proto", "tvix/castore/protos/castore.proto",
"tvix/castore/protos/rpc_blobstore.proto", "tvix/castore/protos/rpc_blobstore.proto",

View file

@ -12,17 +12,13 @@ fn main() -> Result<()> {
builder = builder.file_descriptor_set_path(descriptor_path); builder = builder.file_descriptor_set_path(descriptor_path);
}; };
// https://github.com/hyperium/tonic/issues/908
let mut config = prost_build::Config::new();
config.bytes(["."]);
config.extern_path(".tvix.castore.v1", "::tvix_castore::proto");
builder builder
.build_server(true) .build_server(true)
.build_client(true) .build_client(true)
.emit_rerun_if_changed(false) .emit_rerun_if_changed(false)
.compile_with_config( .bytes(["."])
config, .extern_path(".tvix.castore.v1", "::tvix_castore::proto")
.compile(
&[ &[
"tvix/store/protos/pathinfo.proto", "tvix/store/protos/pathinfo.proto",
"tvix/store/protos/rpc_pathinfo.proto", "tvix/store/protos/rpc_pathinfo.proto",