On Wed, Oct 18, 2006 at 07:57:29AM +0200, Frank Küster <[EMAIL PROTECTED]> was heard to say: > Daniel Burrows <[EMAIL PROTECTED]> wrote: > > Thanks for these nice explanations. I'm not sure whether I can still > help here. Just some thoughts. > > > (2) Never try to resolve a recommendation by eliminating its source. > > The problem here is that (for technical reasons) this would probably > > also eliminate any question of holding back the source to resolve > > a recommendation. Moreover, it's arguable that recommendations > > should be obeyed to the point of removing packages where they're > > unmet (since removing a recommendation often breaks the package > > badly). > > Hm. Maybe this is also a problem with the definition of Recommends, or > generally with applying dependency models to "compilation packages" as > teTeX is one. tetex-extra declares Recommends: latex-beamer, because > beamer is included in upstream teTeX and only excluded by us because it > exists as a separate Debian package (which is often more up-to-date). I > think this is a good reason for a Recommends. New users will get told: > If you want to prepare presentations in LaTeX, just install teTeX, it > includes beamer. However, not installing any of tetex-extra's > Recommends does not break it at all. It's just missing some of the > possible functionality, but the rest works fine.
Yeah, I think it's pretty well known that metapackages interact in sometimes surprising ways with dependencies. I don't think using a Depends would actually help in this case, though; unless I'm mistaken, you'd still get the "remove tetex-extra" choice before the "install latex-beamer" choice. There are a few other cases where Recommendations are probably inappropriate (including aptitude, whee), but it doesn't generally seem to be a problem. Except here :P. > > This could be acheived without too much disruption by adding a new > > flag on package versions that says "never install this to fulfill > > a softdep", then setting this flag on all UNINST versions. I think > > that would be satisfactory and put the "technical reasons" to rest. > > Would that mean that you get shown that tetex-extra recommends > latex-beamer, but it wouldn't be automatically selected? Even when > installing tetex-extra for the first time? You would get this effect in two conditions: (a) when upgrading tetex-extra and trying to do dependency resolution (as in this bug). (b) when installing tetex-extra, if a dependency problem prevents latex-beamer from being installed. Even in these cases, if it's possible to install latex-beamer, a solution containing it will show up if you ask the resolver to try hard enough; basically my suggestion just amounts to discarding all solutions where you remove tetex-extra to fix the Recommends, without affecting the weighting of any other solution. Forcing dependencies earlier might make the solution you want show up earlier (and has no ill effects other than slowing down processing), so I might add that and see if it helps. It won't help in complicated situations, though (e.g., if you have both testing and unstable in your sources.list, which is kind of a pathological case for the resolver). I don't have a good solution for this problem atm; maybe the AI book that's been waiting for me to read it will have one ;-). Daniel