mise icon indicating copy to clipboard operation
mise copied to clipboard

Support `rtx list all` command following the asdf syntax

Open danielfn opened this issue 1 year ago • 1 comments

Describe the bug

asdf has the asdf list all command but rtx seems to support only the rtx list-all format.

To Reproduce

It can be easily reproduced just by running the command with any plugin:

❯ rtx list all rust
rtx [all] plugin not installed
rtx Run with --verbose or RTX_VERBOSE=1 for more information

Expected behavior

The rtx list all command should behave as rtx list-all, in the same way as asdf list all:

In order words, the output should be like the next one:

❯ rtx list-all rust
nightly
beta
stable
1.61.0
[...]

rtx doctor output

rtx version:
  2023.12.40 linux-x64 (460e547 2023-12-28)

build:
  Target: x86_64-unknown-linux-gnu
  Features: DEFAULT, NATIVE_TLS, OPENSSL
  Built: Thu, 28 Dec 2023 15:30:24 +0000
  Rust Version: rustc 1.74.1 (a28077b28 2023-12-04)
  Profile: release

shell:
  /usr/bin/zsh
  zsh 5.8 (x86_64-ubuntu-linux-gnu)

rtx data directory:
  /home/danielfn/.local/share/rtx

rtx environment variables:
  RTX_SHELL=zsh

settings:
  {
    "experimental": false,
    "color": true,
    "always_keep_download": false,
    "always_keep_install": false,
    "legacy_version_file": true,
    "legacy_version_file_disable_tools": [],
    "plugin_autoupdate_last_check_duration": "7d",
    "trusted_config_paths": [],
    "log_level": "info",
    "trace": false,
    "debug": false,
    "verbose": false,
    "quiet": false,
    "asdf_compat": false,
    "jobs": 4,
    "shorthands_file": null,
    "disable_default_shorthands": false,
    "disable_tools": [],
    "raw": false,
    "yes": false,
    "task_output": null,
    "not_found_auto_install": true,
    "ci": false
  }

config files:
  /home/danielfn/.tool-versions

plugins:
  bun          (core)
  deno         (core)
  go           (core)
  java         (core)
  node         (core)
  python       (core)
  ruby         (core)
  rust         https://github.com/code-lever/asdf-rust.git#95acf4f

toolset:
  [email protected]

Additional context

We have a bunch of scripts and plugins that use asdf subcommands like this, so fully supporting the asdf syntax will allow people to migrate to rtx more seamlessly.

danielfn avatar Dec 28 '23 16:12 danielfn

I just noticed that this command is already mentioned in the README as a bad UX decision by asdf 😄

I've found asdf to be particularly rigid and difficult to learn. It also made strange decisions like having asdf list all but asdf latest --all (why is one a flag and one a positional argument?).

Although this is perfectly understandable, I see that commands like rtx plugin add (but not rtx plugin-add) are actually aliased, so now I'm not sure if this is intended behaviour.

danielfn avatar Dec 28 '23 17:12 danielfn