[PATCH 00/13] vsh: Fix handling of commands and help - part 3 (commandline parser overhaul)

Peter Krempa posted 13 patches 1 week, 6 days ago
Only 12 patches received!
tests/meson.build                             |    4 +-
tests/virshtest.c                             |   37 +
.../completion-arg-full-argv-next.out         |    2 +
.../completion-arg-full-argv.out              |    2 +
.../completion-arg-full-bool-next.out         |    7 +
.../completion-arg-full-bool.out              |    2 +
.../completion-arg-full-string-next.out       |    7 +
.../completion-arg-full-string.out            |    2 +
.../virshtestdata/completion-arg-partial.out  |    4 +
.../completion-arg-positional-empty.out       |    3 +
...completion-arg-positional-partial-next.out |    2 +
.../completion-arg-positional-partial.out     |    2 +
tests/virshtestdata/completion-args.out       |    7 +
.../completion-argv-multiple-next.out         |   25 +
...mpletion-argv-multiple-positional-next.out |   25 +
.../completion-argv-multiple-positional.out   |    2 +
.../completion-argv-multiple.out              |    2 +
.../completion-command-complete.out           |    2 +
tests/virshtestdata/completion-command.out    |    2 +
tests/virshtestdata/completion.in             |   16 +
tests/virshtestdata/completion.out            |   71 ++
tools/virsh-backup.c                          |    4 +-
tools/virsh-checkpoint.c                      |   18 +-
tools/virsh-completer-domain.c                |    2 +-
tools/virsh-completer-host.c                  |    8 +-
tools/virsh-domain-event.c                    |    2 +-
tools/virsh-domain-monitor.c                  |   18 +-
tools/virsh-domain.c                          |  351 +++---
tools/virsh-host.c                            |   40 +-
tools/virsh-interface.c                       |    6 +-
tools/virsh-network.c                         |   35 +-
tools/virsh-nodedev.c                         |   30 +-
tools/virsh-nwfilter.c                        |    8 +-
tools/virsh-pool.c                            |   64 +-
tools/virsh-secret.c                          |   10 +-
tools/virsh-snapshot.c                        |   23 +-
tools/virsh-util.c                            |    2 +-
tools/virsh-volume.c                          |   29 +-
tools/virsh.c                                 |    6 +-
tools/virt-admin.c                            |   26 +-
tools/vsh.c                                   | 1012 +++++++++--------
tools/vsh.h                                   |   27 +-
42 files changed, 1103 insertions(+), 844 deletions(-)
create mode 100644 tests/virshtestdata/completion-arg-full-argv-next.out
create mode 100644 tests/virshtestdata/completion-arg-full-argv.out
create mode 100644 tests/virshtestdata/completion-arg-full-bool-next.out
create mode 100644 tests/virshtestdata/completion-arg-full-bool.out
create mode 100644 tests/virshtestdata/completion-arg-full-string-next.out
create mode 100644 tests/virshtestdata/completion-arg-full-string.out
create mode 100644 tests/virshtestdata/completion-arg-partial.out
create mode 100644 tests/virshtestdata/completion-arg-positional-empty.out
create mode 100644 tests/virshtestdata/completion-arg-positional-partial-next.out
create mode 100644 tests/virshtestdata/completion-arg-positional-partial.out
create mode 100644 tests/virshtestdata/completion-args.out
create mode 100644 tests/virshtestdata/completion-argv-multiple-next.out
create mode 100644 tests/virshtestdata/completion-argv-multiple-positional-next.out
create mode 100644 tests/virshtestdata/completion-argv-multiple-positional.out
create mode 100644 tests/virshtestdata/completion-argv-multiple.out
create mode 100644 tests/virshtestdata/completion-command-complete.out
create mode 100644 tests/virshtestdata/completion-command.out
create mode 100644 tests/virshtestdata/completion.in
create mode 100644 tests/virshtestdata/completion.out
[PATCH 00/13] vsh: Fix handling of commands and help - part 3 (commandline parser overhaul)
Posted by Peter Krempa 1 week, 6 days ago
This series refactors the commandline parser in order to use easier to
understand/maintain logic.


Peter Krempa (13):
  meson: tests: Add 'virsh' as dependency of 'virshtest'
  tools: Rename vshCommandOptStringReq to vshCommandOptString
  vsh: Fix 'stdin' closing in 'cmdComplete'
  vsh: Add a VSH_OT_STRING argument for 'virsh echo'
  virshtest: Add test cases for command completion helper
  vsh: Rework logic for picking which argument is to be completed
  virsh: Introduce new 'VSH_OT_ARGV' accessors
  vsh: Remove unused infrastructure for command completion
  vsh: Unexport command lookup helpers 'vshCmddefSearch',
    'vshCmdGrpSearch', 'vshCmdGrpHelp'
  vsh: Refactor parsed option and command assignment
  vshCmddefCheckInternals: Remove check for "too many options"
  vsh: Move option assignment debugging from vshCommandParse to
    vshCmdOptAssign
  vsh: Refactor logic in vshCommandParse

 tests/meson.build                             |    4 +-
 tests/virshtest.c                             |   37 +
 .../completion-arg-full-argv-next.out         |    2 +
 .../completion-arg-full-argv.out              |    2 +
 .../completion-arg-full-bool-next.out         |    7 +
 .../completion-arg-full-bool.out              |    2 +
 .../completion-arg-full-string-next.out       |    7 +
 .../completion-arg-full-string.out            |    2 +
 .../virshtestdata/completion-arg-partial.out  |    4 +
 .../completion-arg-positional-empty.out       |    3 +
 ...completion-arg-positional-partial-next.out |    2 +
 .../completion-arg-positional-partial.out     |    2 +
 tests/virshtestdata/completion-args.out       |    7 +
 .../completion-argv-multiple-next.out         |   25 +
 ...mpletion-argv-multiple-positional-next.out |   25 +
 .../completion-argv-multiple-positional.out   |    2 +
 .../completion-argv-multiple.out              |    2 +
 .../completion-command-complete.out           |    2 +
 tests/virshtestdata/completion-command.out    |    2 +
 tests/virshtestdata/completion.in             |   16 +
 tests/virshtestdata/completion.out            |   71 ++
 tools/virsh-backup.c                          |    4 +-
 tools/virsh-checkpoint.c                      |   18 +-
 tools/virsh-completer-domain.c                |    2 +-
 tools/virsh-completer-host.c                  |    8 +-
 tools/virsh-domain-event.c                    |    2 +-
 tools/virsh-domain-monitor.c                  |   18 +-
 tools/virsh-domain.c                          |  351 +++---
 tools/virsh-host.c                            |   40 +-
 tools/virsh-interface.c                       |    6 +-
 tools/virsh-network.c                         |   35 +-
 tools/virsh-nodedev.c                         |   30 +-
 tools/virsh-nwfilter.c                        |    8 +-
 tools/virsh-pool.c                            |   64 +-
 tools/virsh-secret.c                          |   10 +-
 tools/virsh-snapshot.c                        |   23 +-
 tools/virsh-util.c                            |    2 +-
 tools/virsh-volume.c                          |   29 +-
 tools/virsh.c                                 |    6 +-
 tools/virt-admin.c                            |   26 +-
 tools/vsh.c                                   | 1012 +++++++++--------
 tools/vsh.h                                   |   27 +-
 42 files changed, 1103 insertions(+), 844 deletions(-)
 create mode 100644 tests/virshtestdata/completion-arg-full-argv-next.out
 create mode 100644 tests/virshtestdata/completion-arg-full-argv.out
 create mode 100644 tests/virshtestdata/completion-arg-full-bool-next.out
 create mode 100644 tests/virshtestdata/completion-arg-full-bool.out
 create mode 100644 tests/virshtestdata/completion-arg-full-string-next.out
 create mode 100644 tests/virshtestdata/completion-arg-full-string.out
 create mode 100644 tests/virshtestdata/completion-arg-partial.out
 create mode 100644 tests/virshtestdata/completion-arg-positional-empty.out
 create mode 100644 tests/virshtestdata/completion-arg-positional-partial-next.out
 create mode 100644 tests/virshtestdata/completion-arg-positional-partial.out
 create mode 100644 tests/virshtestdata/completion-args.out
 create mode 100644 tests/virshtestdata/completion-argv-multiple-next.out
 create mode 100644 tests/virshtestdata/completion-argv-multiple-positional-next.out
 create mode 100644 tests/virshtestdata/completion-argv-multiple-positional.out
 create mode 100644 tests/virshtestdata/completion-argv-multiple.out
 create mode 100644 tests/virshtestdata/completion-command-complete.out
 create mode 100644 tests/virshtestdata/completion-command.out
 create mode 100644 tests/virshtestdata/completion.in
 create mode 100644 tests/virshtestdata/completion.out

-- 
2.44.0
_______________________________________________
Devel mailing list -- devel@lists.libvirt.org
To unsubscribe send an email to devel-leave@lists.libvirt.org
Re: [PATCH 00/13] vsh: Fix handling of commands and help - part 3 (commandline parser overhaul)
Posted by Michal Prívozník 1 week, 1 day ago
On 4/19/24 15:05, Peter Krempa wrote:
> This series refactors the commandline parser in order to use easier to
> understand/maintain logic.
> 
> 
> Peter Krempa (13):
>   meson: tests: Add 'virsh' as dependency of 'virshtest'
>   tools: Rename vshCommandOptStringReq to vshCommandOptString
>   vsh: Fix 'stdin' closing in 'cmdComplete'
>   vsh: Add a VSH_OT_STRING argument for 'virsh echo'
>   virshtest: Add test cases for command completion helper
>   vsh: Rework logic for picking which argument is to be completed
>   virsh: Introduce new 'VSH_OT_ARGV' accessors
>   vsh: Remove unused infrastructure for command completion
>   vsh: Unexport command lookup helpers 'vshCmddefSearch',
>     'vshCmdGrpSearch', 'vshCmdGrpHelp'
>   vsh: Refactor parsed option and command assignment
>   vshCmddefCheckInternals: Remove check for "too many options"
>   vsh: Move option assignment debugging from vshCommandParse to
>     vshCmdOptAssign
>   vsh: Refactor logic in vshCommandParse
> 
>  tests/meson.build                             |    4 +-
>  tests/virshtest.c                             |   37 +
>  .../completion-arg-full-argv-next.out         |    2 +
>  .../completion-arg-full-argv.out              |    2 +
>  .../completion-arg-full-bool-next.out         |    7 +
>  .../completion-arg-full-bool.out              |    2 +
>  .../completion-arg-full-string-next.out       |    7 +
>  .../completion-arg-full-string.out            |    2 +
>  .../virshtestdata/completion-arg-partial.out  |    4 +
>  .../completion-arg-positional-empty.out       |    3 +
>  ...completion-arg-positional-partial-next.out |    2 +
>  .../completion-arg-positional-partial.out     |    2 +
>  tests/virshtestdata/completion-args.out       |    7 +
>  .../completion-argv-multiple-next.out         |   25 +
>  ...mpletion-argv-multiple-positional-next.out |   25 +
>  .../completion-argv-multiple-positional.out   |    2 +
>  .../completion-argv-multiple.out              |    2 +
>  .../completion-command-complete.out           |    2 +
>  tests/virshtestdata/completion-command.out    |    2 +
>  tests/virshtestdata/completion.in             |   16 +
>  tests/virshtestdata/completion.out            |   71 ++
>  tools/virsh-backup.c                          |    4 +-
>  tools/virsh-checkpoint.c                      |   18 +-
>  tools/virsh-completer-domain.c                |    2 +-
>  tools/virsh-completer-host.c                  |    8 +-
>  tools/virsh-domain-event.c                    |    2 +-
>  tools/virsh-domain-monitor.c                  |   18 +-
>  tools/virsh-domain.c                          |  351 +++---
>  tools/virsh-host.c                            |   40 +-
>  tools/virsh-interface.c                       |    6 +-
>  tools/virsh-network.c                         |   35 +-
>  tools/virsh-nodedev.c                         |   30 +-
>  tools/virsh-nwfilter.c                        |    8 +-
>  tools/virsh-pool.c                            |   64 +-
>  tools/virsh-secret.c                          |   10 +-
>  tools/virsh-snapshot.c                        |   23 +-
>  tools/virsh-util.c                            |    2 +-
>  tools/virsh-volume.c                          |   29 +-
>  tools/virsh.c                                 |    6 +-
>  tools/virt-admin.c                            |   26 +-
>  tools/vsh.c                                   | 1012 +++++++++--------
>  tools/vsh.h                                   |   27 +-
>  42 files changed, 1103 insertions(+), 844 deletions(-)
>  create mode 100644 tests/virshtestdata/completion-arg-full-argv-next.out
>  create mode 100644 tests/virshtestdata/completion-arg-full-argv.out
>  create mode 100644 tests/virshtestdata/completion-arg-full-bool-next.out
>  create mode 100644 tests/virshtestdata/completion-arg-full-bool.out
>  create mode 100644 tests/virshtestdata/completion-arg-full-string-next.out
>  create mode 100644 tests/virshtestdata/completion-arg-full-string.out
>  create mode 100644 tests/virshtestdata/completion-arg-partial.out
>  create mode 100644 tests/virshtestdata/completion-arg-positional-empty.out
>  create mode 100644 tests/virshtestdata/completion-arg-positional-partial-next.out
>  create mode 100644 tests/virshtestdata/completion-arg-positional-partial.out
>  create mode 100644 tests/virshtestdata/completion-args.out
>  create mode 100644 tests/virshtestdata/completion-argv-multiple-next.out
>  create mode 100644 tests/virshtestdata/completion-argv-multiple-positional-next.out
>  create mode 100644 tests/virshtestdata/completion-argv-multiple-positional.out
>  create mode 100644 tests/virshtestdata/completion-argv-multiple.out
>  create mode 100644 tests/virshtestdata/completion-command-complete.out
>  create mode 100644 tests/virshtestdata/completion-command.out
>  create mode 100644 tests/virshtestdata/completion.in
>  create mode 100644 tests/virshtestdata/completion.out
> 

Reviewed-by: Michal Privoznik <mprivozn@redhat.com>

Michal
_______________________________________________
Devel mailing list -- devel@lists.libvirt.org
To unsubscribe send an email to devel-leave@lists.libvirt.org