Bug 569541 - check for dependency on non-virtual main package
check for dependency on non-virtual main package
Product: Fedora
Classification: Fedora
Component: rpmlint (Show other bugs)
All Linux
low Severity medium
: ---
: ---
Assigned To: Ville Skyttä
Fedora Extras Quality Assurance
: FutureFeature
Depends On:
  Show dependency treegraph
Reported: 2010-03-01 11:59 EST by Thomas Spura
Modified: 2010-03-02 12:28 EST (History)
3 users (show)

See Also:
Fixed In Version:
Doc Type: Enhancement
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2010-03-02 12:28:53 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)
test case spec (644 bytes, application/octet-stream)
2010-03-01 11:59 EST, Thomas Spura
no flags Details

  None (edit)
Description Thomas Spura 2010-03-01 11:59:18 EST
Created attachment 397124 [details]
test case spec

Description of problem:
When having subpackages, that require the main package, but the main package has a empty %files section (->virtual package) this is considered as 'Your package has broken dependency'.

It would be great to have this detected before doing the build and get a mail about broken dependencies from the buildsystem.

Sure this should be detected within a review, but this is not that easy to detect in a very big spec with many subpackages.

Version-Release number of selected component (if applicable):

How reproducible:

Steps to Reproduce:
1. rpmlint %{attachment}
Actual results:
In this example are two warnings:
- non-standard-group
- invalid-url

Expected results:
- non-standard-group
- invalid-url
another *error*:
** - wrong-dependency ** (or something else)
Comment 1 Ville Skyttä 2010-03-02 12:28:53 EST
Your example does not have a %files section for the main package at all (it is not empty, it's missing) which does not mean that the main package is a virtual package, it means that the main package does not get built at all from this specfile, or in other words, the main package does not exist at all as far as this specfile is concerned.

The "main package" might be a Provides in some other package, or it could be built from a different source package - it is not necessarily a packaging bug - and rpmlint does not know about things originating from different packages.  Additionally adding a check like this might be a bit hard to implement and given the (IMHO) questionable/rare benefits and potential for noise, I don't think it's worth the trouble.

If you feel differently, feel free to open a bug upstream at http://rpmlint.zarb.org

Note You need to log in before you can comment on or make changes to this bug.