Neal Gompa wrote on 05/21/18 14:38:
On Mon, May 21, 2018 at 7:31 AM Aleksandar Kostadinov <akost...@redhat.com>
wrote:

Neal Gompa wrote on 05/21/18 12:46:
On Mon, May 21, 2018 at 5:39 AM Aleksandar Kostadinov <
akost...@redhat.com>
wrote:

Too bad, we're not talking about manual usage here but also projects
likely have build scripts or something. Using aliases is IMO a no-go.

I see presently 2 other packages providing `yarn` executable:

     > $ sudo dnf whatprovides /usr/bin/yarn
     > [sudo] password for avalon:
     > Last metadata expiration check: 1:37:54 ago on Mon May 21
10:56:24
2018.
     > cmdtest-0.30-1.fc27.noarch : Black-box testing for Unix command
line
tools
     > Repo        : fedora
     > Matched from:
     > Filename    : /usr/bin/yarn
     >
     > hadoop-yarn-2.7.3-6.fc27.noarch : Apache Hadoop YARN
     > Repo        : fedora
     > Matched from:
     > Filename    : /usr/bin/yarn

IMO we should provide some alternatives mechanism so that `yarn` is
whatever the user wants. We can't ask upstream packages to change to
Fedora specific binary names. Or we can but we will be ignored.

If we don't handle `yarn` better, then users would likely just install
`yarn` globally with `npm` and the distro package will not be used.
Thus
the exercise to maintain it would be mostly worthless.


Take it up with the maintainers of nodejs-yarn, cmdtest, and
hadoop-yarn.

Got it.

I'd probably object to the usage of alternatives for this, since it
makes
no sense in this case (all three /usr/bin/yarn binaries do different

IMO it's a kind of alternative. Can we ensure that none upstream
packages will have conflicting binary names? And don't think we must be
an arbiter to upstream conflicting interests.


It's not even close to kind of an alternative. All three "yarn" binaries
have completely different purposes.

Alternatives has a very specific definition:
"A generic name in the filesystem is shared by all files providing
interchangeable functionality."

I guess it can be used for both purposes. After all having some files possibly from different packages without a standard way to select which one wins makes less sense from user standpoint of view than providing an alternative.

It is not true in this case. Actually, this is why the standard yarn
package provides both yarn and yarnpkg binaries. The latter never
conflicts, while the former does in many cases.


So we provide both in our package. Ok, that's fair. I see for the first time that we support packages with conflicting file names. I thought this is forbidden at least in main repo.

things). If all three can be made to agree, then /usr/bin/yarn should
probably go to nodejs-yarn, due to its well-known usage.

I'd agree if you ask me but should we enforce something to users that
can be configurable?

But I disagree on it being "worthless". People are increasingly using
yarn
data and preferring it over npm, so being able to support that in the
distribution is very useful.

It is useful if it is accessible in a standard way. I think practice to
diverge from upstream in incompatible ways needs to stop.


It is available in one of the two standard executables provided by
upstream. Would you prefer it available by neither?

If this name is also available upstream, then this is much more useful. I didn't know this. Only used `yarn` in the past. But now I see the other one available on my system as well. So it makes perfect sense to use `yarnpkg` in scripts.

Thanks.
_______________________________________________
ruby-sig mailing list -- ruby-sig@lists.fedoraproject.org
To unsubscribe send an email to ruby-sig-le...@lists.fedoraproject.org
Fedora Code of Conduct: https://getfedora.org/code-of-conduct.html
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/ruby-sig@lists.fedoraproject.org/message/HE46AHZZZRCF65F6K7HE7CUNYUXJOB4W/

Reply via email to