aboutsummaryrefslogtreecommitdiffhomepage
path: root/crates/mozart/src/commands/show.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/show.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/show.rs')
-rw-r--r--crates/mozart/src/commands/show.rs102
1 files changed, 102 insertions, 0 deletions
diff --git a/crates/mozart/src/commands/show.rs b/crates/mozart/src/commands/show.rs
new file mode 100644
index 0000000..290a8dd
--- /dev/null
+++ b/crates/mozart/src/commands/show.rs
@@ -0,0 +1,102 @@
+use clap::Args;
+
+#[derive(Args)]
+pub struct ShowArgs {
+ /// Package to inspect
+ pub package: Option<String>,
+
+ /// Version constraint
+ pub version: Option<String>,
+
+ /// List all packages
+ #[arg(long)]
+ pub all: bool,
+
+ /// List packages from the lock file
+ #[arg(long)]
+ pub locked: bool,
+
+ /// Show only installed packages (enabled by default)
+ #[arg(short, long)]
+ pub installed: bool,
+
+ /// List platform packages only
+ #[arg(short, long)]
+ pub platform: bool,
+
+ /// List available packages only
+ #[arg(short = 'a', long)]
+ pub available: bool,
+
+ /// Show information about the root package
+ #[arg(short, long, name = "self")]
+ pub self_info: bool,
+
+ /// Show package names only
+ #[arg(short = 'N', long)]
+ pub name_only: bool,
+
+ /// Show package paths only
+ #[arg(short = 'P', long)]
+ pub path: bool,
+
+ /// List the dependencies as a tree
+ #[arg(short, long)]
+ pub tree: bool,
+
+ /// Show the latest version
+ #[arg(short, long)]
+ pub latest: bool,
+
+ /// Show only packages that are outdated
+ #[arg(short, long)]
+ pub outdated: bool,
+
+ /// Ignore specified package(s)
+ #[arg(long)]
+ pub ignore: Vec<String>,
+
+ /// Only show packages that have major SemVer-compatible updates
+ #[arg(short = 'M', long)]
+ pub major_only: bool,
+
+ /// Only show packages that have minor SemVer-compatible updates
+ #[arg(short = 'm', long)]
+ pub minor_only: bool,
+
+ /// Only show packages that have patch SemVer-compatible updates
+ #[arg(long)]
+ pub patch_only: bool,
+
+ /// Sort packages by age of the last update
+ #[arg(short = 'A', long)]
+ pub sort_by_age: bool,
+
+ /// Shows only packages that are directly required by the root package
+ #[arg(short = 'D', long)]
+ pub direct: bool,
+
+ /// Return a non-zero exit code when there are outdated packages
+ #[arg(long)]
+ pub strict: bool,
+
+ /// Output format (text, json)
+ #[arg(short, long)]
+ pub format: Option<String>,
+
+ /// Disables listing of require-dev packages
+ #[arg(long)]
+ pub no_dev: bool,
+
+ /// 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: &ShowArgs) {
+ todo!()
+}