Hello community, here is the log from the commit of package rpmlint for openSUSE:Factory checked in at Thu Oct 28 13:38:58 CEST 2010. -------- --- rpmlint/rpmlint.changes 2010-10-19 15:31:37.000000000 +0200 +++ rpmlint/rpmlint.changes 2010-10-27 14:19:04.000000000 +0200 @@ -1,0 +2,10 @@ +Wed Oct 27 14:18:14 CEST 2010 - dmueller@suse.de + +- fix supplements parsing (bnc#648404) + +------------------------------------------------------------------- +Thu Oct 21 11:15:29 CEST 2010 - dmueller@suse.de + +- add build time check (bnc#635351) + +------------------------------------------------------------------- calling whatdependson for head-i586 New: ---- CheckBuildDate.py ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ rpmlint.spec ++++++ --- /var/tmp/diff_new_pack.hnf0R7/_old 2010-10-28 13:37:04.000000000 +0200 +++ /var/tmp/diff_new_pack.hnf0R7/_new 2010-10-28 13:37:04.000000000 +0200 @@ -23,7 +23,7 @@ BuildRequires: rpm-python Summary: Rpm correctness checker Version: 0.99 -Release: 3 +Release: 4 Source0: %{name}-%{version}.tar.bz2 Source1: config Source1001: config.in @@ -48,6 +48,7 @@ Source20: rpmgroups.config Source21: BashismsCheck.py Source22: CheckGNOMEMacros.py +Source23: CheckBuildDate.py Source100: syntax-validator.py Url: http://rpmlint.zarb.org/ License: GPLv2+ @@ -210,6 +211,7 @@ cp -p %{SOURCE19} . cp -p %{SOURCE21} . cp -p %{SOURCE22} . +cp -p %{SOURCE23} . %build make %{?_smp_mflags} ++++++ BrandingPolicyCheck.py ++++++ --- /var/tmp/diff_new_pack.hnf0R7/_old 2010-10-28 13:37:04.000000000 +0200 +++ /var/tmp/diff_new_pack.hnf0R7/_new 2010-10-28 13:37:04.000000000 +0200 @@ -35,8 +35,8 @@ (r[0].find('-theme-') >= 0 or r[0].find('-branding-') >= 0)): printError(pkg,'suse-branding-specific-branding-req', r[0]) if r[0].endswith('branding') or r[0].endswith('theme'): - if (r[2] != rpm.RPMSENSE_EQUAL or not r[1].startswith('1')): - printError(pkg,'suse-branding-unversioned-req', r[0]) + if (r[1] != rpm.RPMSENSE_EQUAL or not r[2].startswith('1')): + printError(pkg,'suse-branding-unversioned-requires', r[0]) # verify that it doesn't conflict with branding for r in pkg_conflicts: @@ -99,13 +99,13 @@ if not branding_provide: printError(pkg,'suse-branding-no-branding-provide') else: - if (len(branding_provide) < 2 or branding_provide[2] != rpm.RPMSENSE_EQUAL): - printError(pkg, 'suse-branding-unversioned-prov', branding_provide[0]) + if (len(branding_provide) < 2 or branding_provide[1] != rpm.RPMSENSE_EQUAL): + printError(pkg, 'suse-branding-unversioned-provides', branding_provide[0]) for r in pkg.requires(): if r[0].find('-theme-') >= 0 or r[0].find('-branding-') >= 0: - if (r[2] != rpm.RPMSENSE_EQUAL or not r[1].startswith('1')): - printError(pkg, 'suse-branding-unversioned-req', r[0]) + if (r[1] != rpm.RPMSENSE_EQUAL or not r[2].startswith('1')): + printError(pkg, 'suse-branding-unversioned-requires', r[0]) check=BrandingPolicyCheck() @@ -115,11 +115,15 @@ 'suse-branding-specific-branding-req', """bla""", 'suse-branding-no-branding-provides', -"""bla""", +"""Please add a provides entry similar to 'Provides: %name-branding = %version'.""", +'suse-branding-unversioned-provides', +"""Please make sure that your provides entry reads like 'Provides: %name-branding = %version'.""", 'suse-branding-supplement-missing', """branding packages should provide a supplemnent in the form Supplements: packageand(basepackage:branding-<flavour>) """, +'suse-branding-unversioned-requires', +"""Please make sure that your requires entry reads like 'Requires: %name-branding = <versionnumber>'.""", 'suse-branding-missing-conflicts', """Any branding flavor package that provides the generic branding must also conflict with all other branding packages via a special ++++++ CheckBuildDate.py ++++++ ############################################################################# # File : CheckBuilDate.py # Package : rpmlint # Author : Cristian Rodriguez # Purpose : Check for binaries containing build date ############################################################################# from Filter import * import AbstractCheck import rpm import re import os import commands import Config import stat import time class BuildDateCheck(AbstractCheck.AbstractFilesCheck): def __init__(self): AbstractCheck.AbstractFilesCheck.__init__(self, "CheckBuildDate", ".*") self.looksliketime = re.compile('(2[0-3]|[01]?[0-9]):([0-5]?[0-9]):([0-5]?[0-9])') self.istoday = re.compile(time.strftime("%b %e %Y")) def check_file(self, pkg, filename): if filename.startswith('/usr/lib/debug') or pkg.isSource(): return if not stat.S_ISREG(pkg.files()[filename].mode): return grep_date = pkg.grep(self.istoday, filename) if len(grep_date): printWarning(pkg, "file-contains-current-date", filename) grep_time = pkg.grep(self.looksliketime, filename) if len(grep_date) and len(grep_time): printError(pkg, "file-contains-date-and-time", filename) check=BuildDateCheck() if Config.info: addDetails( 'file-contains-current-date', """Your file contains the current date, this may cause the package to rebuild in excess.""", 'file-contains-date-and-time', """Your file uses __DATE and __TIME__ this causes the package to rebuild when not needed""" ) ++++++ CheckDBUSServices.py ++++++ --- /var/tmp/diff_new_pack.hnf0R7/_old 2010-10-28 13:37:04.000000000 +0200 +++ /var/tmp/diff_new_pack.hnf0R7/_new 2010-10-28 13:37:04.000000000 +0200 @@ -51,6 +51,7 @@ if Config.info: addDetails( 'suse-dbus-unauthorized-service', -"""The package installs an unauthorized DBUS service. -Please contact security@suse.de for review.""", +"""The package installs a DBUS system service file. If the package +is intended for inclusion in any SUSE product please open a bug +report to request review of the service by the security team.""", ) ++++++ CheckFilelist.py ++++++ --- /var/tmp/diff_new_pack.hnf0R7/_old 2010-10-28 13:37:04.000000000 +0200 +++ /var/tmp/diff_new_pack.hnf0R7/_new 2010-10-28 13:37:04.000000000 +0200 @@ -453,4 +453,10 @@ if not 'error' in check: continue + addDetails('suse-filelist-forbidden', """ +Your package installs files or directories in a location that have +previously been blacklisted. Please have a look at the particular +file and see if the SUSE Packaging Guidelines propose a better place +on where to install the file or not install it at all.""") + addDetails(check['error'], check['details']) ++++++ CheckKDE4Deps.py ++++++ --- /var/tmp/diff_new_pack.hnf0R7/_old 2010-10-28 13:37:04.000000000 +0200 +++ /var/tmp/diff_new_pack.hnf0R7/_new 2010-10-28 13:37:04.000000000 +0200 @@ -53,6 +53,10 @@ "libakonadiprotocolinternals.so.1", ) +_kde4_knotificationdep = ( + "libknotificationitem-1.so", +) + class KDE4Check(AbstractCheck.AbstractCheck): def __init__(self): AbstractCheck.AbstractCheck.__init__(self, "CheckKDE4Deps") @@ -104,6 +108,8 @@ printError(pkg,"suse-kde4-excessive-dependency", "%kde4_akonadi_requires") if not "akonadi-runtime" in pkg_requires and libakonadi4_dep: printError(pkg,"suse-kde4-missing-dependency", "%kde4_akonadi_requires") + if not "libknotificationitem-1" in pkg_requires and _kde4_knotificationdep: + printError(pkg, "suse-kde4-missing-dependency", "kde4_knotification_requires") check=KDE4Check() ++++++ CheckPolkitPrivs.py ++++++ --- /var/tmp/diff_new_pack.hnf0R7/_old 2010-10-28 13:37:04.000000000 +0200 +++ /var/tmp/diff_new_pack.hnf0R7/_new 2010-10-28 13:37:04.000000000 +0200 @@ -115,9 +115,13 @@ if Config.info: addDetails( 'polkit-unauthorized-file', -"""Please contact security@suse.de for review.""", +"""If the package is intended for inclusion in any SUSE product +please open a bug report to request review of the package by the +security team""", 'polkit-unauthorized-privilege', -"""Please contact security@suse.de for review.""", +"""If the package is intended for inclusion in any SUSE product +please open a bug report to request review of the package by the +security team""", 'polkit-cant-acquire-privilege', """Usability can be improved by allowing users to acquire privileges via authentication. Use e.g. 'auth_admin' instead of 'no' and make ++++++ CheckSUIDPermissions.py ++++++ --- /var/tmp/diff_new_pack.hnf0R7/_old 2010-10-28 13:37:04.000000000 +0200 +++ /var/tmp/diff_new_pack.hnf0R7/_new 2010-10-28 13:37:04.000000000 +0200 @@ -141,7 +141,9 @@ if Config.info: addDetails( 'permissions-unauthorized-file', -"""Please remove the unauthorized files or contact security@suse.de for review.""", +"""If the package is intended for inclusion in any SUSE product +please open a bug report to request review of the package by the +security team""", 'permissions-symlink', """permissions handling for symlinks is useless. Please contact security@suse.de to remove the entry.""", @@ -158,9 +160,15 @@ 'permissions-incorrect-owner', """please use the %attr macro to set the correct ownership.""", 'permissions-file-setuid-bit', -"""Please remove the setuid/setgid bits or contact security@suse.de for review.""", +"""If the package is intended for inclusion in any SUSE product +please open a bug report to request review of the program by the +security team""", 'permissions-directory-setuid-bit', -"""Please contact security@suse.de for review.""", +"""If the package is intended for inclusion in any SUSE product +please open a bug report to request review of the package by the +security team""", 'permissions-world-writable', -"""Please remove the world writable permissions or contact security@suse.de for review.""" +"""If the package is intended for inclusion in any SUSE product +please open a bug report to request review of the package by the +security team""", ) ++++++ KMPPolicyCheck.py ++++++ --- /var/tmp/diff_new_pack.hnf0R7/_old 2010-10-28 13:37:04.000000000 +0200 +++ /var/tmp/diff_new_pack.hnf0R7/_new 2010-10-28 13:37:04.000000000 +0200 @@ -69,10 +69,22 @@ if Config.info: addDetails( +'suse-policy-kmp-missing-requires', +"""Make sure you have extended '%suse_kernel_module_package' by + '-p %_sourcedir/preamble', a file named 'preamble' as source and there + specified 'Requires: kernel-%1'. + """, +'suse-policy-kmp-excessive-enhances', +""" """, +'suse-policy-kmp-missing-enhances', +"""Make sure you have extended '%suse_kernel_module_package' by + '-p %_sourcedir/preamble', a file named 'preamble' as source and there + specified 'Enhances: kernel-%1'. + """, 'suse-policy-kmp-excessive-supplements', """ """, 'suse-policy-kmp-missing-supplements', -"""make sure that your buildrequires includes kernel-syms and module-init-tools +"""Make sure your 'BuildRequires:' include 'kernel-syms' and 'module-init-tools' for proper dependencies to be built. """, ) ++++++ add-weak-dependencies.diff ++++++ --- /var/tmp/diff_new_pack.hnf0R7/_old 2010-10-28 13:37:04.000000000 +0200 +++ /var/tmp/diff_new_pack.hnf0R7/_new 2010-10-28 13:37:04.000000000 +0200 @@ -34,7 +34,7 @@ def prereq(self): """Get package PreReqs as list of (name, flags, (epoch, version, release)) tuples.""" -@@ -692,7 +712,7 @@ +@@ -692,18 +712,25 @@ # internal function to gather dependency info used by the above ones def _gather_aux(self, header, list, nametag, flagstag, versiontag, @@ -43,7 +43,13 @@ names = header[nametag] flags = header[flagstag] versions = header[versiontag] -@@ -703,7 +723,11 @@ + ++ print "versions", versions ++ + if versions: + for loop in range(len(versions)): ++ print "looping over", versions[loop], type(versions[loop]) + evr = stringToVersion(versions[loop]) if prereq is not None and flags[loop] & PREREQ_FLAG: prereq.append((names[loop], flags[loop] & (~PREREQ_FLAG), evr)) @@ -56,7 +62,7 @@ list.append((names[loop], flags[loop], evr)) def _gatherDepInfo(self): -@@ -713,6 +737,10 @@ +@@ -713,6 +740,10 @@ self._provides = [] self._conflicts = [] self._obsoletes = [] @@ -67,27 +73,32 @@ self._gather_aux(self.header, self._requires, rpm.RPMTAG_REQUIRENAME, -@@ -732,6 +760,27 @@ +@@ -732,6 +763,32 @@ rpm.RPMTAG_OBSOLETEFLAGS, rpm.RPMTAG_OBSOLETEVERSION) + try: + self._gather_aux(self.header, self._recommends, + rpm.RPMTAG_SUGGESTSNAME, ++ rpm.RPMTAG_SUGGESTSFLAGS, + rpm.RPMTAG_SUGGESTSVERSION, -+ rpm.RPMTAG_SUGGESTSFLAGS, strong_only=True) ++ strong_only=True) + self._gather_aux(self.header, self._suggests, + rpm.RPMTAG_SUGGESTSNAME, ++ rpm.RPMTAG_SUGGESTSFLAGS, + rpm.RPMTAG_SUGGESTSVERSION, -+ rpm.RPMTAG_SUGGESTSFLAGS, weak_only=True) -+ self._gather_aux(self.header, self._enhances, ++ weak_only=True) ++ self._gather_aux(self.header, self._supplements, + rpm.RPMTAG_ENHANCESNAME, ++ rpm.RPMTAG_ENHANCESFLAGS, + rpm.RPMTAG_ENHANCESVERSION, -+ rpm.RPMTAG_ENHANCESFLAGS, weak_only=True) -+ self._gather_aux(self.header, self._supplements, ++ strong_only=True) ++ self._gather_aux(self.header, self._enhances, + rpm.RPMTAG_ENHANCESNAME, ++ rpm.RPMTAG_ENHANCESFLAGS, + rpm.RPMTAG_ENHANCESVERSION, -+ rpm.RPMTAG_ENHANCESFLAGS, strong_only=True) ++ weak_only=True) ++ + except: + pass + ++++++ config ++++++ --- /var/tmp/diff_new_pack.hnf0R7/_old 2010-10-28 13:37:04.000000000 +0200 +++ /var/tmp/diff_new_pack.hnf0R7/_new 2010-10-28 13:37:04.000000000 +0200 @@ -35,6 +35,7 @@ addCheck("KMPPolicyCheck") addCheck("CheckAlternativesGhostFiles") addCheck("BashismsCheck") +addCheck("CheckBuildDate") # stuff autobuild takes care about addFilter(".*invalid-version.*") ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... -- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org