-
-
Notifications
You must be signed in to change notification settings - Fork 579
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
Rename ddev get
to ddev addon
with sub-commands
#6146
Comments
It's a nice idea, but we needed you to comment on it a couple years ago :) |
I agree it would have been good if it was always this way. But since it wasn't, I think having both commands for a short period, with the current one being deprecated for a while, is a good way forward. If DDEV currently doesn't have a way to support introducing changes to functionality in a way that requires eventual-breaking-changes, then perhaps a separate discussion can be held about how to deal with that? But given there's a known way to deprecate commands, and given DDEV has done similar things to this in the past (look at |
It's true we might be able to do it as an alias for a year or two and then deprecate. We've done that before. |
Before I start working on a PR, is that something that is likely to be accepted? |
The conversation is just an hour old. Please let it be for at least a couple of days so people could think about it. And please expand your proposal to say how you'd change all the various sub-commands, and how you'd do a staged change. Keep all the flags the same? Change some? Would both "get" and "addon" be visible in How about the fact that we standardized on "add-on" a long time ago, how does that fit in? Change it everywhere? add-on is hard to write but perhaps better English. |
I don't think the functionality needs to change - this is mostly about naming and structuring of the command. But I will explicitly state which flags I think should become which sub-commands in the issue description.
I would prefer
If you want the command to be named |
I do apologise if it seemed like I was trying to rush you into making a decision - your original response didn't include any indication that you had any concerns or that there was additional thinking to be done, so I assumed that you had already made a decision as to whether it was worth pursuing. |
from a comprehension perspective i would prefer addon over get (probably also addon over add-on , the shorter and less complex the better).with the command So a +1 for the addition or better the rename to |
That sounds like a good enhancement - but I think that could easily be done as follow-on work to keep the focus of this issue specifically about the name and structure of the command. Keeping the functionality as-is will make that process a lot easier and reduce the complexity we need to think about for this change. If that is considered for the current proposed change, I'd recommend
That's part of this proposed change -
Having a separate |
as i've said i've considered my suggestion completely out of scope. i've just wanted to raise the idea in the context of the get/addon command (since it sounded like a good fit here). and about your suggestion, why not make the update for all installed addons implicit to the
oh my bad I've then completely misunderstood the table (just one note, the old example is then missing two dashes for the only nitpick in regards of consistency, would it make sense to change your proposed command from |
Updated, thanks for pointing that out.
Yes it absolutely would lol. That was a typo, I've fixed it now. Thanks for pointing that out. |
Maybe this is a bit out of scope, but as we are tracking the installed add-ons, might be good to also be able to "rename/set-url" addons (think of "git remote set-url").
|
I'm pretty sure this already works fine, for better or for worse. |
I find myself typing I wish |
You can pretend it's 3 letters if you do |
I think this idea has potential, and that we could ease it in over a few versions. |
When you say ease it in, how do you think we should do that? Should the |
I think we can start with alias, then wait until most DDEV users have that alias available (i.e. wait a few months or quarters). And only then start thinking about deprecation, readme add-on updates, and so on. The biggest concern about deprecation is that users have their own non-official add-ons, so we can't just deprecate it immediately because that would add even more confusion. |
Is there an existing issue for this?
Is your feature request related to a problem?
ddev get
isn't immediately obvious by the name what it does. What's more,ddev get --list
andddev get --installed
, an especiallyddev get --remove
are all semantically a bit strange.Having the command be
ddev addon
would be more immediately obvious what the command is for, and splitting the semantically different actions into sub commands means you don't have to worry about what happens if someone tries something weird likeddev get --list --all --installed --remove my-addon
or justddev get --all
"get" is also a very common word which makes it harder to search for, e.g. there's 19 results for "get" in the docs (only one is about this command) vs 3 for "addon", and searching "get" and "addon" in github issues similarly shows a lot more results for "get" which are just issues where that word happened to be used, not at all related to the concept of addons nor about the
get
command.Describe your solution
Add a new
ddev addon
command, with sub commands for each semantically different action (get
to get an addon,remove
to remove one,list
to list them)Then deprecate
ddev get
, and update it so all it does is call the appropriateddev addon
command. Eventually, removeddev get
in a future release.I would suggest also hiding
ddev get
so it doesn't appear in documentation or inddev help
,ddev --help
, etc. But that could be done later on closer to the time it gets removed, if there's any concern about people wondering where it went.If it's not hidden, its description should be updated to indicate that it's deprecated and to use the new command instead.
Proposed structure of the new command
The
addon
command would have three sub-commands:list
,get
, andremove
.ddev get --list
ddev addon list
ddev get --list --all
ddev addon list --all
ddev get --installed
ddev addon list --installed
ddev get my-addon
ddev addon get my-addon
ddev get --remove my-addon
ddev addon remove my-addon
Describe alternatives
The command could be called
add-on
instead ofaddon
if that's preferable, since the documentation broadly refers to "add-ons". Personally I preferaddon
because it's nicer to type - and I think it's obvious that theaddon
command is related to what the documentation broadly refers to as "add-ons". But either way is fine.Additional context
No response
The text was updated successfully, but these errors were encountered: