Re: Weak dependencies

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 04/01/2014 02:14 PM, Mikolaj Izdebski wrote:
On 04/01/2014 01:46 PM, Jiri Vanek wrote:
On 04/01/2014 01:28 PM, Mikolaj Izdebski wrote:
Fedora 21 will likely introduce so called "weak" or "soft" dependencies,
also known as recommends and suggests.  For proposed change see [1].
What do you think about Java packages adopting usage of weak
dependencies?

An example: Dependencies declared as optional in POM files could be
translated by dependency generators to Recommends instead of Requires.

Any thoughts on this?

[1] https://fedoraproject.org/wiki/Changes/RPM-4.12


There is always issue that end users will hardly know why, should he
install something and mostly there is no nice dialogue "This feature
works only when you download also .....(and put it on classapth)" Not
mentioning that upstreams do not care about "to enable this feature yum
install someRpm"

Well I have (me-touching) example in mind. IcedTea-Web have "weak"
dependence on tagsoup. Well it works without it, but then some JNLP
files are not parsed. User get jsut "invalid xml" exception in this
case. So he will have no clue, that he should install tagsoup,

Will there be any mechanism for this? I doubt:(

TBH - I can come only with one good usage - to use soft dependence
*only* for dependence which are not in fedora. Once it is packed, lets
it be installed all.

I don't think what you described here is the behaviour of Recommends.

If package A recommends B then by installing A you also install B,
unless something conflicts with it or obsoletes it.  After installing A
you can erase B without breaking dependencies.

Example.  Lets assume we have package maven with:
   Requires:   java-headless
   Recommends: java-devel
   Suggests:   maven-doc

When you do "yum install maven", YUM should print something like:

Installing: maven
Installing for dependencies: java-1.8.0-openjdk-headless
Installing recommended dependencies: java-1.8.0-openjdk-devel
You may also consider installing: maven-doc

Maven obviously cannot run without java-headless, so hard requirement is
used here.

Maven is usually used to compile Java sources, hence Recommends on
java-devel.  But Maven itself works perfectly fine without java-devel,
so users can erase java-devel after installing maven, if they want to.
java-devel is a dependency that most users would expect, so it is
"recommends".

maven-doc is just added as suggestion and it will not be pulled by yum
with default settings.  It's added there just to point users to other
useful resources.


Oh I see. Well then it gave much more sense o try to handle optional dependecs of maven this way.

J.
--
java-devel mailing list
java-devel@xxxxxxxxxxxxxxxxxxxxxxx
https://admin.fedoraproject.org/mailman/listinfo/java-devel





[Index of Archives]     [Red Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]

  Powered by Linux