aboutsummaryrefslogtreecommitdiffhomepage
path: root/crates/mozart/src/package.rs
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2026-02-21 17:53:43 +0900
committernsfisis <nsfisis@gmail.com>2026-02-21 17:53:43 +0900
commit2db52ebd5cd4a6b7511ce71f2a3f03abed971f10 (patch)
treec8f786a3ff062e39ba59f3dad09689bfdab0d62c /crates/mozart/src/package.rs
parent597a0711ae09fb47ee1889ccaaa6a38055494478 (diff)
downloadphp-mozart-2db52ebd5cd4a6b7511ce71f2a3f03abed971f10.tar.gz
php-mozart-2db52ebd5cd4a6b7511ce71f2a3f03abed971f10.tar.zst
php-mozart-2db52ebd5cd4a6b7511ce71f2a3f03abed971f10.zip
feat(exec): implement exec command to run vendor binaries
Add binary execution from vendor/bin/ with --list enumeration, root package bin entries marked as (local), configurable bin-dir resolution with {$vendor-dir} placeholder support, .bat filtering, and PATH prepending. Add bin field to RawPackageData. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Diffstat (limited to 'crates/mozart/src/package.rs')
-rw-r--r--crates/mozart/src/package.rs4
1 files changed, 4 insertions, 0 deletions
diff --git a/crates/mozart/src/package.rs b/crates/mozart/src/package.rs
index e439ac5..9904dc4 100644
--- a/crates/mozart/src/package.rs
+++ b/crates/mozart/src/package.rs
@@ -494,6 +494,9 @@ pub struct RawPackageData {
#[serde(skip_serializing_if = "Option::is_none")]
pub autoload: Option<RawAutoload>,
+ #[serde(default, skip_serializing_if = "Vec::is_empty")]
+ pub bin: Vec<String>,
+
#[serde(flatten)]
pub extra_fields: BTreeMap<String, serde_json::Value>,
}
@@ -533,6 +536,7 @@ impl RawPackageData {
require_dev: BTreeMap::new(),
repositories: Vec::new(),
autoload: None,
+ bin: Vec::new(),
extra_fields: BTreeMap::new(),
}
}