-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCargo.toml
More file actions
40 lines (34 loc) · 1.16 KB
/
Copy pathCargo.toml
File metadata and controls
40 lines (34 loc) · 1.16 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]
resolver = "2"
members = [
"crates/core",
"crates/scanner",
"crates/scanner-ntfs",
"src-tauri",
]
[workspace.package]
version = "0.2.2"
edition = "2024"
rust-version = "1.88"
# Do NOT add panic = "abort": the scan workers' crash-safe Done contract
# (mathom-scanner::spawn_scan_thread) depends on catch_unwind.
# codegen-units 16, not 1: thin LTO already recovers cross-unit inlining,
# and cu=1 serialized single-crate codegen — a one-file release rebuild
# took 124s vs 60s (full builds 160s vs 146s, exe +0.1 MB; measured
# 2026-07-11, BENCHMARKS.md, scan bench re-verified after the switch).
[profile.release]
lto = "thin"
codegen-units = 16
strip = true
# `tauri dev` builds the app in dev profile; unoptimized scan code made a
# C:\ scan take 66s vs 25s in release. Cargo's `"*"` glob deliberately
# EXCLUDES workspace members, so the scan hot path is named explicitly —
# only mathom-app's own thin bridging code stays unoptimized/debuggable.
[profile.dev.package."*"]
opt-level = 2
[profile.dev.package.mathom-core]
opt-level = 3
[profile.dev.package.mathom-scanner]
opt-level = 3
[profile.dev.package.mathom-scanner-ntfs]
opt-level = 3