Hello community,
here is the log from the commit of package rpmlint
checked in at Tue Nov 18 13:33:44 CET 2008.
--------
--- rpmlint/rpmlint.changes 2008-11-04 14:45:45.000000000 +0100
+++ /mounts/work_src_done/STABLE/rpmlint/rpmlint.changes 2008-11-07 15:55:08.000000000 +0100
@@ -1,0 +2,10 @@
+Fri Nov 7 15:53:11 CET 2008 - dmueller@suse.de
+
+- add check for otherproviders() in branding packages
+- correct kde4 related dependency checkers to not give false advises
+- check for wrong-arch references in pkgconfig files (graphviz)
+- lower false positives of untranslated-desktop files check
+- support for checking .comment.SUSE.OPTs. real check has been
+ left out for now
+
+-------------------------------------------------------------------
@@ -11,0 +22,7 @@
+Fri Oct 3 19:50:23 CEST 2008 - dmueller@suse.de
+
+- update to 0.84:
+ * remove upstreamed patches
+ * no significant changes
+
+-------------------------------------------------------------------
calling whatdependson for head-i586
Old:
----
fix-tabs-indenting.diff
pt-gnu-stack.diff
rpmlint-0.83.tar.bz2
subdir-dangling-symlink.diff
New:
----
rpmlint-0.84.tar.bz2
suse-binary-info-compile-opts.diff
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ rpmlint.spec ++++++
--- /var/tmp/diff_new_pack.v26508/_old 2008-11-18 13:32:17.000000000 +0100
+++ /var/tmp/diff_new_pack.v26508/_new 2008-11-18 13:32:17.000000000 +0100
@@ -1,5 +1,5 @@
#
-# spec file for package rpmlint (Version 0.83)
+# spec file for package rpmlint (Version 0.84)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -21,8 +21,8 @@
Name: rpmlint
BuildRequires: rpm-python
Summary: Rpm correctness checker
-Version: 0.83
-Release: 43
+Version: 0.84
+Release: 2
Source0: %{name}-%{version}.tar.bz2
Source1: config
Source1001: config.in
@@ -62,7 +62,6 @@
Patch12: usr-arch.diff
Patch13: script-interpreter-only-for-exec-scripts.diff
Patch14: sourced-dirs.diff
-Patch15: subdir-dangling-symlink.diff
Patch16: dependency-parsing.diff
Patch17: docdata-examples.diff
Patch18: suse-hide-unstripped-outside-build.diff
@@ -95,16 +94,15 @@
Patch57: suse-mono-deps-checks.diff
Patch58: add-weak-dependencies.diff
Patch60: selfconflicts-provide.diff
-Patch61: fix-tabs-indenting.diff
Patch62: no-badness-return.diff
Patch63: suse-factory-config.diff
-Patch64: pt-gnu-stack.diff
Patch65: suse-shlib-devel-dependency.diff
Patch66: suse-no-python-base.diff
Patch67: suse-required-lsb-tags.diff
Patch68: more-verbose-lsb-check.diff
Patch69: useless-requires-doc.diff
Patch70: subprocess-support.diff
+Patch71: suse-binary-info-compile-opts.diff
%py_requires
%description
@@ -135,7 +133,6 @@
%patch12
%patch13
%patch14
-%patch15
%patch16
%patch17
%patch18
@@ -168,16 +165,15 @@
%patch57
%patch58
%patch60
-%patch61
%patch62
%patch63
-%patch64
%patch65
%patch66
%patch67
%patch68
%patch69
%patch70
+%patch71
cp -p %{SOURCE1} .
cp -p %{SOURCE2} .
cp -p %{SOURCE3} .
@@ -218,13 +214,24 @@
/usr/share/man/man1/rpmlint.1.gz
%changelog
+* Fri Nov 07 2008 dmueller@suse.de
+- add check for otherproviders() in branding packages
+- correct kde4 related dependency checkers to not give false advises
+- check for wrong-arch references in pkgconfig files (graphviz)
+- lower false positives of untranslated-desktop files check
+- support for checking .comment.SUSE.OPTs. real check has been
+ left out for now
* Tue Nov 04 2008 lnussel@suse.de
- generate a different error for directories with setuid/setgid bit
* Tue Oct 28 2008 lnussel@suse.de
- add check for /etc/permissions violations
+* Fri Oct 03 2008 dmueller@suse.de
+- update to 0.84:
+ * remove upstreamed patches
+ * no significant changes
* Wed Sep 03 2008 dmueller@suse.de
- add description for useless-explicit-requires (bnc#405887)
-* Thu Aug 21 2008 dmueller@suse.de
+* Wed Aug 20 2008 dmueller@suse.de
- rediff patch
* Mon Aug 18 2008 schwab@suse.de
- Fix name of completions file.
@@ -247,7 +254,7 @@
- also read /etc/rpmlint/factory.config
* Fri Jun 27 2008 dmueller@suse.de
- fix typo in suse-version check
-* Mon Jun 23 2008 dmueller@suse.de
+* Sun Jun 22 2008 dmueller@suse.de
- update to 0.83:
* removed upstreamed patches
* a couple of new checks, bugfixes
@@ -388,7 +395,7 @@
- fix hardlink check for /bin
* Sat Sep 01 2007 schwab@suse.de
- Fix last change.
-* Sat Sep 01 2007 dmueller@suse.de
+* Fri Aug 31 2007 dmueller@suse.de
- fix off-by-one in hardlink check
* Fri Aug 31 2007 dmueller@suse.de
- fix exception in DuplicatesCheck
@@ -435,7 +442,7 @@
- its also a devel package if it provides a -devel subpackage (#289735)
* Wed Jul 04 2007 dmueller@suse.de
- suppress %%config check for now (#286231)
-* Wed Jun 27 2007 dmueller@suse.de
+* Tue Jun 26 2007 dmueller@suse.de
- fix typo in devel-rpmgroup check
* Mon Jun 25 2007 dmueller@suse.de
- another update list of legacy packages
@@ -500,7 +507,7 @@
- add description for missing lsb tags check
- fix obsolete-not-provided for yast2-provides
- fix devel-file check matching module names (e.g. apache2)
-* Sat May 26 2007 dmueller@suse.de
+* Fri May 25 2007 dmueller@suse.de
- avoid spurious executable warnings for docdatadir/examples
- add LibraryPolicy checker from Richard (warning only)
- suppression update
@@ -533,15 +540,15 @@
- Suppress devel-file-in-non-devel-package for systemtap (#277338)
- Make sure that the package fails if there is any syntax
error anywhere
-* Wed May 23 2007 dmueller@suse.de
+* Tue May 22 2007 dmueller@suse.de
- typo fix
* Tue May 22 2007 dmueller@suse.de
- update config
* Sat May 19 2007 coolo@suse.de
- add three more checks
-* Fri May 18 2007 dmueller@suse.de
+* Thu May 17 2007 dmueller@suse.de
- update Duplicates Check to not crash on ghost files
-* Wed May 16 2007 dmueller@suse.de
+* Tue May 15 2007 dmueller@suse.de
- suppress bzip2 related warnings
- no documentation for lib packages
* Tue May 15 2007 coolo@suse.de
@@ -562,7 +569,7 @@
* Fri May 04 2007 dmueller@suse.de
- remove check for usedforbuild tag. magic happens and
it is created automatically
-* Thu Apr 19 2007 dmueller@suse.de
+* Wed Apr 18 2007 dmueller@suse.de
- add spec checks for obsolete suse hacks
* Wed Apr 18 2007 dmueller@suse.de
- update to 0.80:
++++++ BrandingPolicyCheck.py ++++++
--- /var/tmp/diff_new_pack.v26508/_old 2008-11-18 13:32:17.000000000 +0100
+++ /var/tmp/diff_new_pack.v26508/_new 2008-11-18 13:32:17.000000000 +0100
@@ -85,6 +85,17 @@
branding_provide=p
break
+ # check for Conflicts: otherproviders(kde4-kdm-branding)
+ conflict_prop = "otherproviders(%s)" % (generic_branding)
+ have_conflict_prop = False
+ for c in pkg_conflicts:
+ if c[0] == conflict_prop:
+ have_conflict_prop = True
+ break
+
+ if not have_conflict_prop:
+ printError(pkg,'suse-branding-missing-conflicts', conflict_prop)
+
if not branding_provide:
printError(pkg,'suse-branding-no-branding-provide')
else:
@@ -108,5 +119,9 @@
'suse-branding-supplement-missing',
"""branding packages should provide a supplemnent in the form
Supplements: packageand(basepackage:branding-<flavour>)
-"""
+""",
+'suse-branding-missing-conflicts',
+"""Any branding flavor package that provides the generic branding
+must also conflict with all other branding packages via a special
+otherproviders()""",
)
++++++ CheckKDE4Deps.py ++++++
--- /var/tmp/diff_new_pack.v26508/_old 2008-11-18 13:32:17.000000000 +0100
+++ /var/tmp/diff_new_pack.v26508/_new 2008-11-18 13:32:17.000000000 +0100
@@ -38,6 +38,21 @@
"libsyndication.so.4"
)
+_kde4_libkdepim4 = (
+ "libkdepim.so.4",
+ "libkontactinterfaces.so.4",
+ "libkleopatraclientcore.so.0.2.0",
+ "libkleopatraclientgui.so.0.2.0",
+)
+
+_kde4_libakonadi4 = (
+ "libakonadi-kde.so.4",
+ "libakonadi-kabc.so.4",
+ "libakonadi-kcal.so.4",
+ "libakonadi-kmime.so.4",
+ "libakonadiprotocolinternals.so.1",
+)
+
class KDE4Check(AbstractCheck.AbstractCheck):
def __init__(self):
AbstractCheck.AbstractCheck.__init__(self, "KDE4Check")
@@ -62,11 +77,34 @@
kdepimlibs4_dep=True
break
+ libkdepim4_dep=False
+ for r in pkg_requires:
+ if r in _kde4_libkdepim4:
+ libkdepim4_dep =True
+ break
+
+ libakonadi4_dep=False
+ for r in pkg_requires:
+ if r in _kde4_libakonadi4:
+ libakonadi4_dep =True
+ break
+
if not pkg.name.startswith("lib"):
- if "libkdepimlibs4" in pkg_requires and not kdepimlibs4_dep:
- printError(pkg,"suse-kde4-excessive-pimlibs-dependency")
- if not "libkdepimlibs4" in pkg_requires and kdepimlibs4_dep:
- printError(pkg,"suse-kde4-missing-pimlibs-dependency")
+ if "kdepimlibs4" in pkg_requires and not kdepimlibs4_dep:
+ printError(pkg,"suse-kde4-excessive-dependency", "%kde4_pimlibs_requires")
+ if not "kdepimlibs4" in pkg_requires and kdepimlibs4_dep:
+ printError(pkg,"suse-kde4-missing-dependency", "%kde4_pimlibs_requires")
+
+ if "libkdepim4" in pkg_requires and not libkdepim4_dep:
+ printError(pkg,"suse-kde4-excessive-dependency", "libkdepim4")
+ if not "libkdepim4" in pkg_requires and libkdepim4_dep:
+ printError(pkg,"suse-kde4-missing-dependency", "libkdepim4")
+
+ if "akonadi-runtime" in pkg_requires and not libakonadi4_dep:
+ 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")
+
check=KDE4Check()
++++++ CheckPkgConfig.py ++++++
--- /var/tmp/diff_new_pack.v26508/_old 2008-11-18 13:32:17.000000000 +0100
+++ /var/tmp/diff_new_pack.v26508/_new 2008-11-18 13:32:17.000000000 +0100
@@ -21,6 +21,16 @@
#self.suspicious_dir=re.compile('(?:/usr/src/\w+/BUILD|/var/tmp|/tmp|/home|\@\w{1,50}\@)')
self.suspicious_dir=re.compile('(?:/usr/src/\w+/BUILD|/var/tmp|/tmp|/home)')
+ def check(self, pkg):
+ # check for references to /lib when in lib64 mode
+ if pkg.arch in ('x86_64', 'ppc64', 's390x'):
+ self.wronglib_dir=re.compile('-L/usr/lib\\b')
+ else:
+ self.wronglib_dir=re.compile('-L/usr/lib64\\b')
+
+ AbstractCheck.AbstractFilesCheck.check(self, pkg)
+
+
def check_file(self, pkg, filename):
if pkg.isSource():
return
@@ -28,6 +38,11 @@
if pkg.grep(self.suspicious_dir, filename):
printError(pkg, "invalid-pkgconfig-file", filename)
+ pc_file=file(pkg.dirName() + "/" + filename, "r")
+ for l in pc_file:
+ if l.startswith('Libs:') and self.wronglib_dir.search(l):
+ printError(pkg, 'pkgconfig-invalid-libs-dir', filename, l)
+
check=PkgConfigCheck()
if Config.info:
@@ -39,5 +54,9 @@
- it references invalid paths (e.g. /home or /tmp)
Please double-check and report false positives.
-'''
+''',
+'pkgconfig-invalid-libs-dir',
+''' Your .pc file contains -L/usr/lib or -L/lib and is built for a lib64 target,
+or contains references to -L/usr/lib64 or -L/lib64 and is built for a lib target.
+Please remove the wrong library paths from the pc file.'''
)
++++++ DesktopTranslationCheck.py ++++++
--- /var/tmp/diff_new_pack.v26508/_old 2008-11-18 13:32:17.000000000 +0100
+++ /var/tmp/diff_new_pack.v26508/_new 2008-11-18 13:32:18.000000000 +0100
@@ -29,16 +29,20 @@
printWarning(pkg, "read-error", e)
return 0
+ found_desktop_group=False
for line in f:
if line.startswith('X-SuSE-translate='):
return
- printWarning(pkg, "untranslated-desktop-file", filename)
+ if line.startswith('[Desktop Entry]'):
+ found_desktop_group=True
+ if found_desktop_group:
+ printWarning(pkg, "untranslated-desktop-file", filename)
check=DesktopCheck()
if Config.info:
addDetails(
'untranslated-desktop-file',
-"""Your desktop file hasn't been handled by suse_update_desktop.sh.
+"""Your desktop file hasn't been handled by %suse_update_desktop_file
Please use it to make the desktop file translate-able by Novell translations."""
)
++++++ docdata-examples.diff ++++++
--- /var/tmp/diff_new_pack.v26508/_old 2008-11-18 13:32:18.000000000 +0100
+++ /var/tmp/diff_new_pack.v26508/_new 2008-11-18 13:32:18.000000000 +0100
@@ -5,7 +5,7 @@
includefile_regex=re.compile('\.(c|h|a|cmi)$')
buildconfigfile_regex=re.compile('(\.pc|/bin/.+-config)$')
+docdir_examples_regex=re.compile('^/usr/(?:share/doc/packages|lib(?:64))/[^/]+/(?:example|demo|script|contrib)')
- sofile_regex=re.compile('/lib(64)?(?:/.+)?/lib[^/]+\.so$')
+ sofile_regex=re.compile('/lib(64)?/(.+/)?lib[^/]+\.so$')
devel_regex=re.compile('(.*)-(debug(info)?|devel|source|static)$')
debuginfo_package_regex=re.compile('-debug(info)?$')
@@ -990,7 +991,7 @@
++++++ rpmlint-0.83.tar.bz2 -> rpmlint-0.84.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/rpmlint-0.83/BinariesCheck.py new/rpmlint-0.84/BinariesCheck.py
--- old/rpmlint-0.83/BinariesCheck.py 2008-04-29 21:22:14.000000000 +0200
+++ new/rpmlint-0.84/BinariesCheck.py 2008-07-09 18:23:42.000000000 +0200
@@ -3,7 +3,7 @@
# Package : rpmlint
# Author : Frederic Lepied
# Created on : Tue Sep 28 07:01:42 1999
-# Version : $Id: BinariesCheck.py 1417 2008-04-29 19:22:13Z scop $
+# Version : $Id: BinariesCheck.py 1437 2008-07-09 16:23:42Z scop $
# Purpose : check binary files in a binary rpm package.
#############################################################################
@@ -300,7 +300,7 @@
if bin_info.stack:
if bin_info.exec_stack:
printWarning(pkg, 'executable-stack', i[0])
- else:
+ elif pkg.arch.endswith("86") or pkg.arch.startswith("pentium") or pkg.arch in ("athlon", "x86_64"):
printError(pkg, 'missing-PT_GNU_STACK-section', i[0])
else:
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/rpmlint-0.83/ChangeLog new/rpmlint-0.84/ChangeLog
--- old/rpmlint-0.83/ChangeLog 2008-05-27 18:27:10.000000000 +0200
+++ new/rpmlint-0.84/ChangeLog 2008-07-26 18:48:16.000000000 +0200
@@ -1,3 +1,43 @@
+2008-07-14 Ville Skyttä