-
-
Notifications
You must be signed in to change notification settings - Fork 445
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
mise rm
#1465
Comments
How about It's also surprising that "remove" doesn't have a complimenting "add". |
I think |
Hey, just a random user of asdf and now mise, here. Thanks for your work on mise -- I love it so far! I have a bit of a fringe take on this: Remove editing the My reasons for this are:
|
Contrary: I really appreciate editing the I second I think it would also be a good idea to add status logs when using |
I was thinking I was also thinking an uncommon synonym for “remove” might be a way to introduce “unuse” in a way that reads better in English even if it’s not a common word in CS like “rid”, “abandon”, “fire”, “sack”. I think some clearer logs is another great idea. I have attempted to align on a shorthand notation for tools generally but I should probably amend that to also include the action taken. |
What about "forget"? e.g. |
to me "forget" would mean "remove from config but not the install", similar to That said, I do like the cuteness of potentially changing |
mise purge |
I like |
But, as precisely the sort of newbie that you're addressing with this, could you also please elaborate on why someone would or would not want to Or, more specifically, why do |
|
Yes, installing and uninstalling in context of local config (not global config, but config local for a project) is v. useful. |
yeah I think this should happen, judging from the feedback on this it seems others are feeling similarly. here's my proposal: add In terms of So then we have another naming problem: what would the inverse of |
well, perhaps it could be
could work |
Hi @jdx this is a feature I've long wanted (I rarely edit the global config file since |
+1 for |
right now
mise rm|remove
is an alias formise uninstall
, however I am wondering if that should stay the case. I am considering whether it should have slightly different behavior where instead of just uninstalling a tool, it would also modify the config file to no longer reference the installed tool. Basically the inverse ofmise use
.New users—notably this is a problem specific to those not coming from asdf—are becoming confused why they can't "completely remove" something. What they do is something like this:
node shows up as v20 with a "missing" tag on it but they just uninstalled it.
Now for asdf users, they don't struggle here. They know that
mise install|uninstall
do not touch config files butmise global|local
do. It wouldn't make sense formise uninstall
to have done that.This was introduced when I created
mise use
which doesn't have a discoverable inverse command. To illustrate, the matrix of commands looks like this:mise install
mise uninstall
mise use
mise ???
Although, technically that isn't quite true, there are 2 commands for this task:
mise global|local --rm
mise use --rm
But they both have problems. First,
global|local
is something I actually push users away from for DX reasons. It's asdf legacy support.mise use
is almost always a better option.mise use --rm
isn't great though because it just sounds weird and users wouldn't think to look undermise use
for removing something from config.I think what would make sense is a new command:
mise rm
. However, I really dislike introducing yet another command that's only slightly different. I worry about confusion betweenmise uninstall
andmise remove
. Perhaps in the beginning it would've made sense to completely break away from asdf's convention and only havemise install|uninstall
and have both of them modify config files unless some flag was passed, but I'm not sure.I'm leaning towards thinking we should add it. I think my table above illustrates that it's a fairly clear gap. However I tried to think the logic for that command through and it's actually quite complicated. What if something is defined in multiple config files? Do you need to specify
mise rm --global
if it's only in the global config? Lots of outstanding questions.Perhaps to avoid confusion I could call it the awkward—but more clear—
mise unuse
.The text was updated successfully, but these errors were encountered: