From 8441abd29aea53719c19f34ec6d542a4575a23c9 Mon Sep 17 00:00:00 2001 From: nsfisis Date: Wed, 11 Feb 2026 00:15:14 +0900 Subject: define subcommands and options --- src/commands/remove.rs | 95 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 95 insertions(+) create mode 100644 src/commands/remove.rs (limited to 'src/commands/remove.rs') diff --git a/src/commands/remove.rs b/src/commands/remove.rs new file mode 100644 index 0000000..b444a66 --- /dev/null +++ b/src/commands/remove.rs @@ -0,0 +1,95 @@ +use clap::Args; + +#[derive(Args)] +pub struct RemoveArgs { + /// Package(s) to remove + pub packages: Vec, + + /// Remove from require-dev + #[arg(long)] + pub dev: bool, + + /// Only output what would be changed, do not modify files + #[arg(long)] + pub dry_run: bool, + + /// Do not output download progress + #[arg(long)] + pub no_progress: bool, + + /// Disables the automatic update of the lock file + #[arg(long)] + pub no_update: bool, + + /// Skip the install step + #[arg(long)] + pub no_install: bool, + + /// Skip the audit step + #[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, + + /// Run the dependency update with the --no-dev option + #[arg(long)] + pub update_no_dev: bool, + + /// [Deprecated] Use --with-all-dependencies instead + #[arg(short = 'w', long)] + pub update_with_dependencies: bool, + + /// [Deprecated] Use --with-all-dependencies instead + #[arg(short = 'W', long)] + pub update_with_all_dependencies: bool, + + /// Update also dependencies of the removed packages + #[arg(long)] + pub with_all_dependencies: bool, + + /// Skip updating dependencies + #[arg(long)] + pub no_update_with_dependencies: bool, + + /// Prefer minimal restriction updates + #[arg(short = 'm', long)] + pub minimal_changes: bool, + + /// Remove unused packages + #[arg(long)] + pub unused: bool, + + /// Ignore a specific platform requirement + #[arg(long)] + pub ignore_platform_req: Vec, + + /// Ignore all platform requirements + #[arg(long)] + pub ignore_platform_reqs: bool, + + /// 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, +} + +pub fn execute(_args: &RemoveArgs) { + todo!() +} -- cgit v1.3.1