build.rs
 1fn main() {
 2    println!("cargo:rerun-if-changed=proto");
 3    let mut build = prost_build::Config::new();
 4    build
 5        .type_attribute(".", "#[derive(serde::Serialize, serde::Deserialize)]")
 6        .type_attribute("ProjectPath", "#[derive(Hash, Eq)]")
 7        .type_attribute("Anchor", "#[derive(Hash, Eq)]")
 8        .compile_protos(&["proto/zed.proto"], &["proto"])
 9        .unwrap();
10}