From 3f80f3acd90c9782420cc0d33fcf77035e522b15 Mon Sep 17 00:00:00 2001 From: nsfisis Date: Wed, 11 Feb 2026 10:15:55 +0900 Subject: enable workspace --- crates/mozart/src/commands/create_project.rs | 105 +++++++++++++++++++++++++++ 1 file changed, 105 insertions(+) create mode 100644 crates/mozart/src/commands/create_project.rs (limited to 'crates/mozart/src/commands/create_project.rs') diff --git a/crates/mozart/src/commands/create_project.rs b/crates/mozart/src/commands/create_project.rs new file mode 100644 index 0000000..814d33b --- /dev/null +++ b/crates/mozart/src/commands/create_project.rs @@ -0,0 +1,105 @@ +use clap::Args; + +#[derive(Args)] +pub struct CreateProjectArgs { + /// Package name to install + pub package: Option, + + /// Directory to create the project in + pub directory: Option, + + /// Version constraint + pub version: Option, + + /// Minimum stability (stable, RC, beta, alpha, dev) + #[arg(short, long)] + pub stability: Option, + + /// 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, + + /// Add a custom repository to discover the package + #[arg(long)] + pub repository: Vec, + + /// [Deprecated] Use --repository instead + #[arg(long)] + pub repository_url: Option, + + /// Add the repository to the composer.json + #[arg(long)] + pub add_repository: bool, + + /// Install require-dev packages + #[arg(long)] + pub dev: bool, + + /// Disables installation of require-dev packages + #[arg(long)] + pub no_dev: bool, + + /// [Deprecated] Use --no-plugins instead + #[arg(long)] + pub no_custom_installers: bool, + + /// Skips execution of scripts defined in composer.json + #[arg(long)] + pub no_scripts: bool, + + /// Do not output download progress + #[arg(long)] + pub no_progress: bool, + + /// Disable HTTPS and allow HTTP + #[arg(long)] + pub no_secure_http: bool, + + /// Keep the VCS metadata + #[arg(long)] + pub keep_vcs: bool, + + /// Force removal of the VCS metadata + #[arg(long)] + pub remove_vcs: bool, + + /// Skip the install step after project creation + #[arg(long)] + pub no_install: bool, + + /// Skip the audit step after installation + #[arg(long)] + pub no_audit: bool, + + /// Audit output format + #[arg(long)] + pub audit_format: Option, + + /// Do not block on security advisories + #[arg(long)] + pub no_security_blocking: bool, + + /// Ignore a specific platform requirement + #[arg(long)] + pub ignore_platform_req: Vec, + + /// Ignore all platform requirements + #[arg(long)] + pub ignore_platform_reqs: bool, + + /// Interactive package resolution + #[arg(long)] + pub ask: bool, +} + +pub fn execute(_args: &CreateProjectArgs) { + todo!() +} -- cgit v1.3.1