aboutsummaryrefslogtreecommitdiff
path: root/mingling_macros/Cargo.toml
diff options
context:
space:
mode:
author魏曹先生 <1992414357@qq.com>2026-08-17 19:21:52 +0800
committer魏曹先生 <1992414357@qq.com>2026-08-17 19:21:52 +0800
commit89bf57f33a9f0f5a96fc50e272c83d926fa35c4a (patch)
treecc5a72e850bdd9215b60dc1655f162e22ee97d12 /mingling_macros/Cargo.toml
parent40bb7ffd6954184fac718c8f99c9cdc3e054e4eb (diff)
refactor!: replace build.rs with compile-time macro build steps
BREAKING CHANGE: Replace the `build`/`builds` feature system with compile-time macro-driven generation. `gen_program!()` now automatically invokes `build_comp!()` and `build_pathf!()` when the `comp`/`pathf` features are enabled, eliminating the need for `build.rs` and `[build-dependencies]` blocks. This removes the `build` feature, the `mingling::build` module, and all related build-time API functions. Completion scripts are now written to `{target_directory}/mingling/` instead of `target/release/`. The `mingling_cli` uses `build_comp!("mling")` for its custom binary name.
Diffstat (limited to 'mingling_macros/Cargo.toml')
-rw-r--r--mingling_macros/Cargo.toml10
1 files changed, 8 insertions, 2 deletions
diff --git a/mingling_macros/Cargo.toml b/mingling_macros/Cargo.toml
index 137213a..6ae7aeb 100644
--- a/mingling_macros/Cargo.toml
+++ b/mingling_macros/Cargo.toml
@@ -19,11 +19,11 @@ default = []
async = []
clap = []
-comp = []
+comp = ["dep:just_template", "dep:mingling_pathf"]
dispatch_tree = []
structural_renderer = []
repl = []
-pathf = []
+pathf = ["dep:mingling_pathf"]
extras = []
@@ -33,3 +33,9 @@ quote.workspace = true
proc-macro2.workspace = true
just_fmt.workspace = true
+
+# comp — compile-time completion script generation (build_comp!())
+just_template = { workspace = true, optional = true }
+
+# pathf — compile-time type path analysis (build_pathf!())
+mingling_pathf = { workspace = true, optional = true }