aboutsummaryrefslogtreecommitdiffhomepage
path: root/crates/mozart/src/commands/install.rs
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2026-02-11 10:15:55 +0900
committernsfisis <nsfisis@gmail.com>2026-02-11 10:15:55 +0900
commit3f80f3acd90c9782420cc0d33fcf77035e522b15 (patch)
tree028e62e45529431be846713156d93d5a208480c7 /crates/mozart/src/commands/install.rs
parent8441abd29aea53719c19f34ec6d542a4575a23c9 (diff)
downloadphp-mozart-3f80f3acd90c9782420cc0d33fcf77035e522b15.tar.gz
php-mozart-3f80f3acd90c9782420cc0d33fcf77035e522b15.tar.zst
php-mozart-3f80f3acd90c9782420cc0d33fcf77035e522b15.zip
enable workspace
Diffstat (limited to 'crates/mozart/src/commands/install.rs')
-rw-r--r--crates/mozart/src/commands/install.rs91
1 files changed, 91 insertions, 0 deletions
diff --git a/crates/mozart/src/commands/install.rs b/crates/mozart/src/commands/install.rs
new file mode 100644
index 0000000..e839e96
--- /dev/null
+++ b/crates/mozart/src/commands/install.rs
@@ -0,0 +1,91 @@
+use clap::Args;
+
+#[derive(Args)]
+pub struct InstallArgs {
+ /// Package(s) to install
+ pub packages: Vec<String>,
+
+ /// Forces installation from package sources when possible
+ #[arg(long)]
+ pub prefer_source: bool,
+
+ /// Forces installation from package dist
+ #[arg(long)]
+ pub prefer_dist: bool,
+
+ /// Forces usage of a specific install method (dist, source, auto)
+ #[arg(long)]
+ pub prefer_install: Option<String>,
+
+ /// Only output what would be changed, do not modify files
+ #[arg(long)]
+ pub dry_run: bool,
+
+ /// Only download packages, do not install
+ #[arg(long)]
+ pub download_only: bool,
+
+ /// [Deprecated] Enables installation of require-dev packages
+ #[arg(long)]
+ pub dev: bool,
+
+ /// Disables installation of require-dev packages
+ #[arg(long)]
+ pub no_dev: bool,
+
+ /// Do not block on security advisories
+ #[arg(long)]
+ pub no_security_blocking: bool,
+
+ /// Skips autoloader generation
+ #[arg(long)]
+ pub no_autoloader: bool,
+
+ /// Do not output download progress
+ #[arg(long)]
+ pub no_progress: bool,
+
+ /// Skip the install step
+ #[arg(long)]
+ pub no_install: bool,
+
+ /// [Deprecated] Do not show install suggestions
+ #[arg(long)]
+ pub no_suggest: bool,
+
+ /// Run audit after installation
+ #[arg(long)]
+ pub audit: bool,
+
+ /// Audit output format
+ #[arg(long)]
+ pub audit_format: Option<String>,
+
+ /// Optimizes PSR-0 and PSR-4 packages to be loaded with classmaps
+ #[arg(short, long)]
+ pub optimize_autoloader: bool,
+
+ /// Autoload classes from the classmap only
+ #[arg(short = 'a', long)]
+ pub classmap_authoritative: bool,
+
+ /// Use APCu to cache found/not-found classes
+ #[arg(long)]
+ pub apcu_autoloader: bool,
+
+ /// Use a custom prefix for the APCu autoloader cache
+ #[arg(long)]
+ pub apcu_autoloader_prefix: Option<String>,
+
+ /// Ignore a specific platform requirement
+ #[arg(long)]
+ pub ignore_platform_req: Vec<String>,
+
+ /// Ignore all platform requirements
+ #[arg(long)]
+ pub ignore_platform_reqs: bool,
+}
+
+pub fn execute(_args: &InstallArgs) {
+ todo!()
+}