RejectedSoftware Forums

Sign up

Pages: 1 2

Rename dub install to dub cache

In the #d IRC channel we get users asking questions about dub and the most common source of confusion seems to be around dub install. A lot of users seem to think once they do a dub install the library will just start working for their project automatically. I remember Dicebot suggesting the name dub cache instead of dub install at one point and I really think this is a change should happen and sooner rather than later.

Re: Rename dub install to dub cache

I'll do a PR.

Re: Rename dub install to dub cache

Am 31.10.2013 05:51, schrieb Brad Anderson:

In the #d IRC channel we get users asking questions about dub and the most common source of confusion seems to be around dub install. A lot of users seem to think once they do a dub install the library will just start working for their project automatically. I remember Dicebot suggesting the name dub cache instead of dub install at one point and I really think this is a change should happen and sooner rather than later.

Yes, I can confirm that, unfortunately. There will be a solution for it
in the next release. The only thing is that "dub cache" seems also less
than ideal considering what it does and what it may do in the future.

My ad-hoc suggestion would be to try to solve the confusion issue by
outputting a clear message after a package has been installed, or even
by making an interactive query of the form "Package x has been installed
in y, do you want to also add it as a dependency to the package z in the
CWD? (y/n)".

Then of course, there is also some criticism because "install" may be
confused with a system wide install à la "make install", while in fact
it is just an installation process inside of the DUB ecosystem.

Re: Rename dub install to dub cache

On Thu, 31 Oct 2013 13:59:03 +0100, Sönke Ludwig wrote:

Then of course, there is also some criticism because "install" may be
confused with a system wide install à la "make install", while in fact
it is just an installation process inside of the DUB ecosystem.

This is the core issue. "install" is widely adopted term with specific expectations.

I am going to make a PR that replaces all mentions of "install / uninstall" with more neutral "get / remove". Acceptable?

Re: Rename dub install to dub cache

On Thu, 31 Oct 2013 13:17:17 GMT, Dicebot wrote:

On Thu, 31 Oct 2013 13:59:03 +0100, Sönke Ludwig wrote:

Then of course, there is also some criticism because "install" may be
confused with a system wide install à la "make install", while in fact
it is just an installation process inside of the DUB ecosystem.

This is the core issue. "install" is widely adopted term with specific expectations.

I am going to make a PR that replaces all mentions of "install / uninstall" with more neutral "get / remove". Acceptable?

(an alternative is "retrieve / remove", which is less obvious for command itself but looks better with coproducts like "list-retrieved")

Re: Rename dub install to dub cache

Am 31.10.2013 14:17, schrieb Dicebot:

On Thu, 31 Oct 2013 13:59:03 +0100, Sönke Ludwig wrote:

Then of course, there is also some criticism because "install" may be
confused with a system wide install à la "make install", while in fact
it is just an installation process inside of the DUB ecosystem.

This is the core issue. "install" is widely adopted term with specific expectations.

I am going to make a PR that replaces all mentions of "install / uninstall" with more neutral "get / remove". Acceptable?

"get"/"remove" sounds good (any opinion on "fetch"?) - even though it
does install the packages in a way and doesn't just download them...

I also suspect that people will still think that after they've run "dub
get x", they can directly start using x. So this should probably still
be augmented with a clear message what happened and a suggestion of how
to continue (either "dub run x" or add "x": "(version)" to dependencies
field), but that's a separate issue. If you make the change, please keep
"install"/"uninstall" as undocumented aliases that additionally output a
short warning message so that we don't have a hard cut for now.

Re: Rename dub install to dub cache

On Thu, 31 Oct 2013 14:44:01 +0100, Sönke Ludwig wrote:

"get"/"remove" sounds good (any opinion on "fetch"?) - even though it
does install the packages in a way and doesn't just download them...

Yes, I have initially used "download" but after investigating dub sources switched to "get" as neutral word with no relation to source or method used. Related terminology change so far:

"install (from)" -> "get"
"installed" -> "present"
"install (to)" -> "place"

I also suspect that people will still think that after they've run "dub
get x", they can directly start using x. So this should probably still
be augmented with a clear message what happened and a suggestion of how
to continue (either "dub run x" or add "x": "(version)" to dependencies
field), but that's a separate issue. If you make the change, please keep
"install"/"uninstall" as undocumented aliases that additionally output a
short warning message so that we don't have a hard cut for now.

Good suggestion, acknowledged.

Re: Rename dub install to dub cache

https://github.com/rejectedsoftware/dub/pull/150

Re: Rename dub install to dub cache

On 2013-10-31 14:44, Sönke Ludwig wrote:

"get"/"remove" sounds good (any opinion on "fetch"?) - even though it
does install the packages in a way and doesn't just download them...

I like "fetch". In this case, what's the difference between "download
and "install". I mean, what does dub do that you consider it installing
instead of just downloading?

/Jacob Carlborg

Re: Rename dub install to dub cache

Am 31.10.2013 22:29, schrieb Jacob Carlborg:

On 2013-10-31 14:44, Sönke Ludwig wrote:

"get"/"remove" sounds good (any opinion on "fetch"?) - even though it
does install the packages in a way and doesn't just download them...

I like "fetch". In this case, what's the difference between "download
and "install". I mean, what does dub do that you consider it installing
instead of just downloading?

Currently just that it puts the downloaded package in a location where
it can be found by name (which I would consider the "install" part) and
that it also makes sure that all dependencies are "installed". It might
do some more things later, though, like building or installing system
dependencies.

Pages: 1 2