From nobody Mon Feb 9 10:32:35 2026 Delivered-To: importer@patchew.org Received-SPF: none (zohomail.com: 8.43.85.245 is neither permitted nor denied by domain of lists.libvirt.org) client-ip=8.43.85.245; envelope-from=devel-bounces@lists.libvirt.org; helo=lists.libvirt.org; Authentication-Results: mx.zohomail.com; spf=none (zohomail.com: 8.43.85.245 is neither permitted nor denied by domain of lists.libvirt.org) smtp.mailfrom=devel-bounces@lists.libvirt.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.libvirt.org (lists.libvirt.org [8.43.85.245]) by mx.zohomail.com with SMTPS id 1710511322197338.93731938846577; Fri, 15 Mar 2024 07:02:02 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 996) id D92511F16; Fri, 15 Mar 2024 10:02:00 -0400 (EDT) Received: from lists.libvirt.org (localhost [IPv6:::1]) by lists.libvirt.org (Postfix) with ESMTP id 795AC1DDA; Fri, 15 Mar 2024 09:46:06 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 996) id F09C31A52; Fri, 15 Mar 2024 09:45:30 -0400 (EDT) Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by lists.libvirt.org (Postfix) with ESMTPS id 69D231B94 for ; Fri, 15 Mar 2024 09:44:46 -0400 (EDT) Received: from mimecast-mx02.redhat.com (mx-ext.redhat.com [66.187.233.73]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-8-i88ADMc6MRqz2c2I5sWhRQ-1; Fri, 15 Mar 2024 09:44:44 -0400 Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.rdu2.redhat.com [10.11.54.8]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 5892B1C2CEC1 for ; Fri, 15 Mar 2024 13:44:44 +0000 (UTC) Received: from speedmetal.lan (unknown [10.45.242.5]) by smtp.corp.redhat.com (Postfix) with ESMTP id C6BCCC1576F for ; Fri, 15 Mar 2024 13:44:43 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on lists.libvirt.org X-Spam-Level: X-Spam-Status: No, score=-0.8 required=5.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H4, RCVD_IN_MSPIKE_WL,SPF_HELO_NONE,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.4 X-MC-Unique: i88ADMc6MRqz2c2I5sWhRQ-1 From: Peter Krempa To: devel@lists.libvirt.org Subject: [PATCH 21/28] virsh: Annotate some optional arguments as positional Date: Fri, 15 Mar 2024 14:44:16 +0100 Message-ID: <6385201e8795d7aa7b0576bc584137219fde46b3.1710510137.git.pkrempa@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.4.1 on 10.11.54.8 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Message-ID-Hash: YEBREN6EB2NXMFJKN7ZDU5W5X3M3VKWS X-Message-ID-Hash: YEBREN6EB2NXMFJKN7ZDU5W5X3M3VKWS X-MailFrom: pkrempa@redhat.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-config-1; header-match-config-2; header-match-config-3; header-match-devel.lists.libvirt.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; suspicious-header X-Mailman-Version: 3.2.2 Precedence: list List-Id: Development discussions about the libvirt library & tools Archived-At: List-Archive: List-Help: List-Post: List-Subscribe: List-Unsubscribe: Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZM-MESSAGEID: 1710511322570100001 Make certain optional arguments truly positional in cases when it makes semantic sense. Previously it wasn't possible to have optional positional arguments, but the parser filled them regardless, thus this preserves functionality. Signed-off-by: Peter Krempa --- tools/virsh-domain-monitor.c | 3 +++ tools/virsh-domain.c | 6 ++++++ 2 files changed, 9 insertions(+) diff --git a/tools/virsh-domain-monitor.c b/tools/virsh-domain-monitor.c index 6c2499fb9f..71a5086c00 100644 --- a/tools/virsh-domain-monitor.c +++ b/tools/virsh-domain-monitor.c @@ -385,6 +385,7 @@ static const vshCmdOptDef opts_domblkinfo[] =3D { VIRSH_COMMON_OPT_DOMAIN_FULL(0), {.name =3D "device", .type =3D VSH_OT_STRING, + .positional =3D true, .completer =3D virshDomainDiskTargetCompleter, .help =3D N_("block device") }, @@ -865,6 +866,7 @@ static const vshCmdOptDef opts_domblkstat[] =3D { {.name =3D "device", .type =3D VSH_OT_STRING, .flags =3D VSH_OFLAG_EMPTY_OK, + .positional =3D true, .completer =3D virshDomainDiskTargetCompleter, .help =3D N_("block device") }, @@ -2219,6 +2221,7 @@ static const vshCmdOptDef opts_domifaddr[] =3D { VIRSH_COMMON_OPT_DOMAIN_FULL(VIR_CONNECT_LIST_DOMAINS_ACTIVE), {.name =3D "interface", .type =3D VSH_OT_STRING, + .positional =3D true, .flags =3D VSH_OFLAG_NONE, .completer =3D virshDomainInterfaceCompleter, .help =3D N_("network interface name")}, diff --git a/tools/virsh-domain.c b/tools/virsh-domain.c index d7b86ded7d..9a41e32e3d 100644 --- a/tools/virsh-domain.c +++ b/tools/virsh-domain.c @@ -2939,6 +2939,7 @@ static const vshCmdOptDef opts_blockresize[] =3D { }, {.name =3D "size", .type =3D VSH_OT_INT, + .positional =3D true, .help =3D N_("New size of the block device, as scaled integer (defaul= t KiB)") }, {.name =3D "capacity", @@ -5805,6 +5806,7 @@ static const vshCmdOptDef opts_shutdown[] =3D { VIRSH_COMMON_OPT_DOMAIN_FULL(VIR_CONNECT_LIST_DOMAINS_ACTIVE), {.name =3D "mode", .type =3D VSH_OT_STRING, + .positional =3D true, .completer =3D virshDomainShutdownModeCompleter, .help =3D N_("shutdown mode: acpi|agent|initctl|signal|paravirt") }, @@ -5880,6 +5882,7 @@ static const vshCmdOptDef opts_reboot[] =3D { VIRSH_COMMON_OPT_DOMAIN_FULL(VIR_CONNECT_LIST_DOMAINS_ACTIVE), {.name =3D "mode", .type =3D VSH_OT_STRING, + .positional =3D true, .completer =3D virshDomainShutdownModeCompleter, .help =3D N_("shutdown mode: acpi|agent|initctl|signal|paravirt") }, @@ -11531,6 +11534,7 @@ static const vshCmdOptDef opts_domdisplay[] =3D { }, {.name =3D "type", .type =3D VSH_OT_STRING, + .positional =3D true, .help =3D N_("select particular graphical display " "(e.g. \"vnc\", \"spice\", \"rdp\", \"dbus\")") }, @@ -12675,6 +12679,7 @@ static const vshCmdOptDef opts_change_media[] =3D { }, {.name =3D "source", .type =3D VSH_OT_STRING, + .positional =3D true, .help =3D N_("source of the media") }, {.name =3D "eject", @@ -13199,6 +13204,7 @@ static const vshCmdOptDef opts_set_user_sshkeys[] = =3D { }, {.name =3D "file", .type =3D VSH_OT_STRING, + .positional =3D true, .completer =3D virshCompletePathLocalExisting, .help =3D N_("optional file to read keys from"), }, --=20 2.44.0 _______________________________________________ Devel mailing list -- devel@lists.libvirt.org To unsubscribe send an email to devel-leave@lists.libvirt.org