Hello community, here is the log from the commit of package rpmlint for openSUSE:Factory checked in at Wed Sep 2 18:03:38 CEST 2009. -------- --- rpmlint/rpmlint.changes 2009-08-26 12:58:32.000000000 +0200 +++ rpmlint/rpmlint.changes 2009-08-28 12:46:51.000000000 +0200 @@ -1,0 +2,5 @@ +Fri Aug 28 10:45:02 UTC 2009 - mvyskocil@suse.cz + +- Added CheckAlternativesGhostFiles.py - see bnc#534451 comment#17 + +------------------------------------------------------------------- calling whatdependson for head-i586 New: ---- CheckAlternativesGhostFiles.py ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ rpmlint.spec ++++++ --- /var/tmp/diff_new_pack.QaYVSB/_old 2009-09-02 18:03:22.000000000 +0200 +++ /var/tmp/diff_new_pack.QaYVSB/_new 2009-09-02 18:03:22.000000000 +0200 @@ -23,7 +23,7 @@ BuildRequires: rpm-python Summary: Rpm correctness checker Version: 0.87 -Release: 2 +Release: 3 Source0: %{name}-%{version}.tar.bz2 Source1: config Source1001: config.in @@ -44,6 +44,7 @@ Source16: CheckDBUSServices.py Source17: CheckFilelist.py Source18: CheckDBusPolicy.py +Source19: CheckAlternativesGhostFiles.py Source100: syntax-validator.py Url: http://rpmlint.zarb.org/ License: GPL v2 or later @@ -197,6 +198,7 @@ cp -p %{SOURCE16} . cp -p %{SOURCE17} . cp -p %{SOURCE18} . +cp -p %{SOURCE19} . %build make ++++++ CheckAlternativesGhostFiles.py ++++++ # vim:sw=4:et ############################################################################# # File : CheckAlternativesGhostFiles.py # Package : rpmlint # Author : Michal Vyskocil # Purpose : Check if files used by update-alternatives are marked as %ghost ############################################################################# from Filter import * import AbstractCheck import rpm class CheckAlternativesGhostFiles(AbstractCheck.AbstractCheck): INSTALL="--install" SLAVE="--slave" def __init__(self): AbstractCheck.AbstractCheck.__init__(self, "CheckAlternativesGhostFiles") @classmethod def read_ghost_files(cls, script): ghost_files = [] if not script or not 'update-alternatives' in script: return ghost_files for command in ( \ c.replace('\\\n', '').strip() \ for c in script.split('update-alternatives') \ if cls.INSTALL in c): #parse install xs = command.split(None, 4) ghost_files.append(xs[1]) if cls.SLAVE in command: for sc in ( \ c.strip() \ for c in command[command.index(cls.SLAVE):].split(cls.SLAVE) \ if c.strip() != ''): xs = sc.split(None, 2) ghost_files.append(xs[0]) return ghost_files def check(self, pkg): if pkg.isSource(): return alt_files = [] for script in (pkg.header[tag] for tag in (rpm.RPMTAG_POSTIN, rpm.RPMTAG_PREIN, rpm.RPMTAG_POSTTRANS)): alt_files.extend(self.read_ghost_files(script)) files = pkg.files() ghost_files = pkg.ghostFiles() for af in alt_files: if af in files: printWarning(pkg, 'alternative-file-is-not-marked-as-ghost %s' % (af)) continue if not af in ghost_files: printWarning(pkg, 'no-ghost-alternative-file %s' % af) check=CheckAlternativesGhostFiles() if Config.info: addDetails( 'alternative-file-is-not-marked-as-ghost', '''The alternative file is listed in filelist, but not marked as a ghost, which may cause a problems during update. Mark it as a %ghost.''', 'no-ghost-alternative-file', '''The alternative file is not in a filelist, add it to list marked as %ghost. Note: this error will be raised, if you use a hash ($) in file name, so for suppress, use rpm macros in spec file instead.''', ) ++++++ config ++++++ --- /var/tmp/diff_new_pack.QaYVSB/_old 2009-09-02 18:03:23.000000000 +0200 +++ /var/tmp/diff_new_pack.QaYVSB/_new 2009-09-02 18:03:23.000000000 +0200 @@ -33,6 +33,7 @@ addCheck("CheckFilelist") addCheck("CheckKDE4Deps") addCheck("KMPPolicyCheck") +addCheck("CheckAlternativesGhostFiles") # 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