forked from pool/rpmlint
4d4e6f73c7
Copy from Base:System/rpmlint based on submit request 50483 from user prusnak OBS-URL: https://build.opensuse.org/request/show/50483 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/rpmlint?expand=0&rev=68
34 lines
1.5 KiB
Diff
34 lines
1.5 KiB
Diff
--- TagsCheck.py
|
|
+++ TagsCheck.py
|
|
@@ -419,6 +419,7 @@
|
|
# () are here for grouping purpose in the regexp
|
|
forbidden_words_regex = re.compile('(' + Config.getOption('ForbiddenWords') + ')', re.IGNORECASE)
|
|
valid_buildhost_regex = re.compile(Config.getOption('ValidBuildHost'))
|
|
+valid_filedep_regex=re.compile('(?:/s?bin/|^/etc/|^/usr/lib/sendmail$)')
|
|
use_epoch = Config.getOption('UseEpoch', False)
|
|
use_utf8 = Config.getOption('UseUTF8', Config.USEUTF8_DEFAULT)
|
|
max_line_len = Config.getOption('MaxLineLength', 79)
|
|
@@ -597,6 +598,9 @@
|
|
if d[0].startswith('/usr/local/'):
|
|
printError(pkg, 'invalid-dependency', d[0])
|
|
|
|
+ if d[0].startswith('/') and not valid_filedep_regex.search(d[0]):
|
|
+ printWarning(pkg, 'invalid-filepath-dependency', d[0])
|
|
+
|
|
if not devel_depend and not is_devel and not is_source and \
|
|
FilesCheck.devel_regex.search(d[0]):
|
|
printError(pkg, 'devel-dependency', d[0])
|
|
@@ -1063,6 +1067,12 @@
|
|
'''This package provides 2 times the same capacity. It should only provide it
|
|
once.''',
|
|
|
|
+'invalid-filepath-dependency',
|
|
+'''A package has a file or path based dependency that is not resolveable for
|
|
+package solvers because it is not in the whitelist for path based dependencies
|
|
+and therefore not available in repository metadata. Please use a symbolic requires
|
|
+instead or require a file in bin or /etc.''',
|
|
+
|
|
'tag-not-utf8',
|
|
'''The character encoding of the value of this tag is not UTF-8.''',
|
|
|