48 releases

0.10.18 Nov 29, 2024
0.10.15 Sep 18, 2024
0.10.12 Jul 29, 2024
0.9.5 Feb 27, 2024
0.2.1 Oct 26, 2022

#1397 in Procedural macros

Download history 78/week @ 2024-10-21 204/week @ 2024-10-28 319/week @ 2024-11-04 163/week @ 2024-11-11 58/week @ 2024-11-18 206/week @ 2024-11-25 133/week @ 2024-12-02 204/week @ 2024-12-09 161/week @ 2024-12-16 89/week @ 2024-12-23 48/week @ 2024-12-30 146/week @ 2025-01-06 162/week @ 2025-01-13 136/week @ 2025-01-20 62/week @ 2025-01-27 129/week @ 2025-02-03

515 downloads per month
Used in 3 crates (2 directly)

MIT/Apache

275KB
7K SLoC

Volo

volo-build compiles thrift and protobuf idl files into rust code at compile-time.

Example

Usually, if you are using volo-cli to generate the code, you don't need to use volo-build directly.

If you want to use volo-build directly, you can follow the following steps:

First, add volo-build to your Cargo.toml:

[build-dependencies]
volo-build = "*" # make sure you use a compatible version with `volo`

Second, creates a build.rs file:

fn main() {
    volo_build::Builder::default().write().unwrap();
}

Third, creates a volo.yml file in the same directory of build.rs with the following layout:

---
idls:
  - source: local
    path: path/to/your/idl.thrift
  - source: local
    path: path/to/your/protobuf/idl.proto
    includes:
    - path/to/your/protobuf/
  - source: git
    repo: git@github.com:cloudwego/volo.git
    ref: main
    path: path/in/repo/idl.thrift

That's it!

Dependencies

~36–50MB
~844K SLoC