forked from pool/rpmlint
Dirk Mueller
1cdbc13b57
* test: Skip fedoradev GPG checks at least for now * test: Refresh fedora* packages on image build * test: Use assertEqual where appropriate, thanks to flake8/hacking * test: Update fedora24 config to fedora26, run it on Travis * Add a new test for tmpfiles.d snippets in the /etc/ tree. * Add new tests for systemd units and udev rules in /etc/ tree * test: Disable hacking for now until it's flake8 3.4+ compatible * test: Set up flake8-bugbear, enable it in fedoradev container * rpmlint: Avoid unused loop control variable * ZipCheck: Add TODO * *: Avoid mutable argument defaults * Be aware of -debugsource packages * rpmdiff: Fix unused variable from previous commit * rpmdiff: Support soft dependencies * BinariesCheck, FilesCheck: Ignore various .build-id dirs * Add python3-devel and rpm-build to fedoradev container to provoke some issues * BinariesCheck: Popen env consistency fix * Pkg.getstatusoutput: Set LC_ALL for all Popens, defaulting to C * rpmlint: Fix checking specfile from stdin * test.sh: Extract rpmlint command to run_rpmlint * Revert "Remove unused spec_lines check_spec argument" * BinariesCheck: Trivial cleanups * travis: Run make install too * FilesCheck: Allow multiple bytecode magic values per Python version * tests: Make output test tools easier to reuse * FilesCheck: hg.python.org -> github.com/python * Pkg: Return vendor and distribution as unicode strings * FilesCheck: Add Python 3.7 bytecode magic value * Pkg.b2s: Add some more test cases OBS-URL: https://build.opensuse.org/package/show/devel:openSUSE:Factory:rpmlint/rpmlint?expand=0&rev=482
33 lines
1.3 KiB
Diff
33 lines
1.3 KiB
Diff
From: Ludwig Nussel <ludwig.nussel@suse.de>
|
|
Date: Fri, 10 Apr 2015 14:54:18 +0200
|
|
Subject: [PATCH] check for self provides
|
|
|
|
---
|
|
TagsCheck.py | 6 ++++++
|
|
1 file changed, 6 insertions(+)
|
|
|
|
Index: rpmlint-rpmlint-1.9/TagsCheck.py
|
|
===================================================================
|
|
--- rpmlint-rpmlint-1.9.orig/TagsCheck.py
|
|
+++ rpmlint-rpmlint-1.9/TagsCheck.py
|
|
@@ -901,6 +901,8 @@ class TagsCheck(AbstractCheck.AbstractCh
|
|
for p in pkg.provides():
|
|
value = Pkg.formatRequire(*p)
|
|
self._unexpanded_macros(pkg, 'Provides %s' % (value,), value)
|
|
+ if p[0] == pkg.name and not p[1]:
|
|
+ printError(pkg, 'unversioned-explicit-self-provides', p[0])
|
|
|
|
for c in pkg.conflicts():
|
|
value = Pkg.formatRequire(*c)
|
|
@@ -1252,6 +1254,10 @@ objects should thus not be depended on a
|
|
in the containing package. Get rid of the provides if appropriate, for example
|
|
by filtering it out during build. Note that in some cases this may require
|
|
disabling rpmbuild's internal dependency generator.''',
|
|
+
|
|
+'unversioned-explicit-self-provides',
|
|
+'''This package provides it's own name explicitely, which might break
|
|
+upgrade path. self-provides are autogenerated. Remove the provide.''',
|
|
)
|
|
|
|
for i in ("obsoletes", "conflicts", "provides", "recommends", "suggests",
|