Repository navigation
Expand file tree
/
Copy pathCargo.toml
More file actions
40 lines (36 loc) · 1.54 KB
/
Copy pathCargo.toml
File metadata and controls
40 lines (36 loc) · 1.54 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
[workspace]
# Three crates, and there is a reason they are not one. `tinybus-macros` is a
# proc-macro crate, which means it compiles for the *host* even when the bus
# itself is cross-compiled; keeping it separate is the only way to have
# `#[interface]` without forcing that split on every downstream target.
# `tinybus-module` is the module-side half of the C ABI. It is versioned here in
# lockstep with the host ABI so the two definitions cannot drift. Integrations
# themselves remain separate repositories and are never workspace members.
members = ["crates/tinybus", "crates/tinybus-macros", "crates/tinybus-module"]
exclude = ["examples"]
resolver = "3"
[workspace.package]
version = "0.1.5"
edition = "2024"
rust-version = "1.85"
license = "GPL-3.0-only"
repository = "https://github.com/tinyhumansai/tinybus"
[workspace.dependencies]
tinybus = { path = "crates/tinybus", version = "=0.1.5", default-features = false }
tinybus-macros = { path = "crates/tinybus-macros", version = "=0.1.5" }
tinybus-module = { path = "crates/tinybus-module", version = "=0.1.5" }
tokio = { version = "1", features = ["rt-multi-thread", "sync", "time"] }
async-trait = "0.1"
serde = { version = "1", features = ["derive"] }
serde_json = "1"
sha2 = "0.10"
thiserror = "2"
tracing = "0.1"
[profile.release]
lto = "thin"
# Distribution binaries favor size over release-build throughput. Symbols are
# not needed for ordinary CLI operation, while the module host retains unwind
# support so it can contain panicking module callbacks.
strip = "symbols"
opt-level = "z"
codegen-units = 1