From 2052178ebf66a80c523d475163041b193a304636 Mon Sep 17 00:00:00 2001 From: Nikolai Rodionov Date: Fri, 28 Nov 2025 19:18:04 +0100 Subject: [PATCH] Trying to use the prost --- Cargo.lock | 60 ++--------------------------------- engine/src/main.rs | 1 + lib/Cargo.toml | 4 ++- lib/build.rs | 13 ++++++-- lib/proto/audio_backend.proto | 6 ++++ lib/proto/helloworld.proto | 14 -------- lib/proto/items.proto | 18 +++++++++++ lib/src/lib.rs | 14 +++++--- 8 files changed, 52 insertions(+), 78 deletions(-) create mode 100644 lib/proto/audio_backend.proto delete mode 100644 lib/proto/helloworld.proto create mode 100644 lib/proto/items.proto diff --git a/Cargo.lock b/Cargo.lock index efcd043..a45a075 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -666,7 +666,9 @@ checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" name = "lib" version = "0.1.0" dependencies = [ - "tonic-prost-build", + "prost", + "prost-build", + "prost-types", "uuid", ] @@ -981,8 +983,6 @@ dependencies = [ "prettyplease", "prost", "prost-types", - "pulldown-cmark", - "pulldown-cmark-to-cmark", "regex", "syn", "tempfile", @@ -1010,26 +1010,6 @@ dependencies = [ "prost", ] -[[package]] -name = "pulldown-cmark" -version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e8bbe1a966bd2f362681a44f6edce3c2310ac21e4d5067a6e7ec396297a6ea0" -dependencies = [ - "bitflags 2.10.0", - "memchr", - "unicase", -] - -[[package]] -name = "pulldown-cmark-to-cmark" -version = "21.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8246feae3db61428fd0bb94285c690b460e4517d83152377543ca802357785f1" -dependencies = [ - "pulldown-cmark", -] - [[package]] name = "quote" version = "1.0.42" @@ -1312,18 +1292,6 @@ dependencies = [ "tracing", ] -[[package]] -name = "tonic-build" -version = "0.14.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c40aaccc9f9eccf2cd82ebc111adc13030d23e887244bc9cfa5d1d636049de3" -dependencies = [ - "prettyplease", - "proc-macro2", - "quote", - "syn", -] - [[package]] name = "tonic-prost" version = "0.14.2" @@ -1335,22 +1303,6 @@ dependencies = [ "tonic", ] -[[package]] -name = "tonic-prost-build" -version = "0.14.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4a16cba4043dc3ff43fcb3f96b4c5c154c64cbd18ca8dce2ab2c6a451d058a2" -dependencies = [ - "prettyplease", - "proc-macro2", - "prost-build", - "prost-types", - "quote", - "syn", - "tempfile", - "tonic-build", -] - [[package]] name = "tower-layer" version = "0.3.3" @@ -1426,12 +1378,6 @@ dependencies = [ "ratatui", ] -[[package]] -name = "unicase" -version = "2.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75b844d17643ee918803943289730bec8aac480150456169e647ed0b576ba539" - [[package]] name = "unicode-ident" version = "1.0.22" diff --git a/engine/src/main.rs b/engine/src/main.rs index 17a3aa5..48625d2 100644 --- a/engine/src/main.rs +++ b/engine/src/main.rs @@ -1,5 +1,6 @@ mod audio_engine; use clap::Parser; +use lib::helloworld; /// Simple program to greet a person #[derive(Parser, Debug)] diff --git a/lib/Cargo.toml b/lib/Cargo.toml index eba477f..a25afeb 100644 --- a/lib/Cargo.toml +++ b/lib/Cargo.toml @@ -4,7 +4,9 @@ version = "0.1.0" edition = "2024" [dependencies] +prost = "0.14.1" uuid = { version = "1.18.1", features = ["v4"] } [build-dependencies] -tonic-prost-build = "0.14.2" +prost-build = "0.14.1" +prost-types = "0.14.1" diff --git a/lib/build.rs b/lib/build.rs index 3100f02..3301b93 100644 --- a/lib/build.rs +++ b/lib/build.rs @@ -1,4 +1,13 @@ -fn main() -> Result<(), Box> { - tonic_prost_build::compile_protos("proto/helloworld.proto")?; +use std::{fs, io::Result}; +fn main() -> Result<()> { + //let proto_dir = "proto"; + //let paths = fs::read_dir(proto_dir).unwrap(); + //for path in paths { + // prost_build::compile_protos(&[path.unwrap().path()], &[proto_dir])?; + //} + + + prost_build::compile_protos(&["proto/audio_backend.proto"], &["proto/"])?; + prost_build::compile_protos(&["proto/items.proto"], &["proto/"])?; Ok(()) } diff --git a/lib/proto/audio_backend.proto b/lib/proto/audio_backend.proto new file mode 100644 index 0000000..abcdb04 --- /dev/null +++ b/lib/proto/audio_backend.proto @@ -0,0 +1,6 @@ +syntax = "proto3"; +package termix.audio_backend; + +service AudioBackend { + +} diff --git a/lib/proto/helloworld.proto b/lib/proto/helloworld.proto deleted file mode 100644 index a42ae15..0000000 --- a/lib/proto/helloworld.proto +++ /dev/null @@ -1,14 +0,0 @@ -syntax = "proto3"; -package helloworld; - -service Greeter { - rpc SayHello (HelloRequest) returns (HelloReply); -} - -message HelloRequest { - string name = 1; -} - -message HelloReply { - string message = 1; -} diff --git a/lib/proto/items.proto b/lib/proto/items.proto new file mode 100644 index 0000000..56c50c9 --- /dev/null +++ b/lib/proto/items.proto @@ -0,0 +1,18 @@ +syntax = "proto3"; + +package snazzy.items; + +// A snazzy new shirt! +message Shirt { + // Label sizes + enum Size { + SMALL = 0; + MEDIUM = 1; + LARGE = 2; + } + + // The base color + string color = 1; + // The size as stated on the label + Size size = 2; +} diff --git a/lib/src/lib.rs b/lib/src/lib.rs index e1f3af0..a4415fe 100644 --- a/lib/src/lib.rs +++ b/lib/src/lib.rs @@ -1,5 +1,11 @@ -pub mod metadata; +pub mod snazzy { + pub mod items { + include!(concat!(env!("OUT_DIR"), "/snazzy.items.rs")); + } +} -pub mod project; -pub mod region; -pub mod track; +pub mod termix { + pub mod audio_backend { + include!(concat!(env!("OUT_DIR"), "/termix.audio_backend.rs")); + } +}