Bug 1221363
Summary: | [weak deps] No clear statement about whether soft dependencies should be used or not | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | mulhern <amulhern> |
Component: | dnf | Assignee: | Packaging Maintenance Team <packaging-team-maint> |
Status: | CLOSED NOTABUG | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
Severity: | high | Docs Contact: | |
Priority: | unspecified | ||
Version: | rawhide | CC: | jsilhan, jzeleny, mluscon, packaging-team-maint, pnemade, rholy, tim.lauridsen, vmukhame |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | All | ||
OS: | All | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | Bug Fix | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2015-05-14 08:34:55 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
mulhern
2015-05-13 20:48:35 UTC
What I read are three different questions/requests. The answer to whether or not to use soft deps is that they are supported throughout the rpm stack and it is possible to use them. The decision is up to you as a maintainer. We (as in Software Management Team) are drafting some guidelines with examples of problems that soft deps use. The second question I can see is about support in dnf. Dnf itself has only a little to do with soft deps, most of the magic happens deep underneath in libsolv library. This library generally supports the semantics as described here: http://rpm.org/wiki/PackagerDocs/Dependencies On top of that, it is possible to use soft deps as a preference indicator when a certain requirement of your package is provided by more other packages. From what I can read in your comment, your expectations as to how soft deps will behave are quite correct. How you use them is entirely up to you, we have only a little authority to limit that. That being said, I can give you one recommendation as a former active package maintainer - I'd avoid using metapackage in this case, as it obscures the relations between packages. Instead I'd use Recommends directly in libblockdev. The third question, or rather request, that I can see in the description is how exactly does dependency solving work wrt multiple providers and soft deps. Like I said, you can use soft deps as preference indicator. I just run some tests and they work just fine ... which can't be said about versioned provides which don't seem to be working at all. So at the moment, I can confirm that soft deps beat versioned provides. If you need more detail on this, feel free to ask. If you run into any troubles, please use one of our mailing lists instead of bugzilla. We have recently created rpm-ecosystem.org which is a perfect place for discussing cross project features such as this one. For the moment, I'm closing this as NOTABUG ... Just to be sure, are we talking about "soft" dependencies or "weak" dependencies? AFAIK, "weak" deps (only mentioned in the summary but not in any of your comments) are e.g. the Suggests: and Recommends: tags while "soft" deps (mentioned a lot in your comments) is e.g. the "or" relation. What you're talking about are rich dependencies. Soft dependencies and weak dependencies are just two names for the same thing. |