On Wed, May 31, 2017 at 11:31:43AM +0100, Simon McVittie wrote: > On Wed, 31 May 2017 at 11:32:29 +1200, Ben Caradoc-Davies wrote: > > Trust is not transitive. Perhaps Recommends should not be either? > > Recommends are for the relationship "wanting foo but not bar is unusual". > If A Recommends B and B Recommends C, and if we assume for example > that "unusual" means 10% of users of A do not need B and 10% of users > of B do not need C, then installing Recommends means somewhere > between 0% and 20% of users of A get C unnecessarily. (The real figure > depends on whether not wanting B and not wanting C are positively or > negatively correlated, or independent.)
That's true. I'd say the biggest problem is maintainers having an emotional attachment to their packages and thus overestimating their importance. A random example (not meant to single out its maintainer): libuuid1 (transitively essential) Recommends: uuid-runtime. The latter is, as far as I understand, needed only if you generate a massive number of uuids per seconds. Packages that actually need so (like ceph) actually Depend: uuid-runtime already. The rest -- those which need a single uuid per mkfs or so, are perfectly fine without that daemon. Thus, axing this dependency or degrading it to Suggests would be probably a good idea. And there's hundreds if not thousands of Recommends of this kind that need to be looked at -- this example is just more prominent as it affects every Debian system. (I'm not filing bugs yet as it's better to have a consensus first before mass-filing.) Meow! -- Don't be racist. White, amber or black, all beers should be judged based solely on their merits. Heck, even if occasionally a cider applies for a beer's job, why not? On the other hand, corpo lager is not a race.