diff --git a/rpmlint-decode-fix.diff b/rpmlint-decode-fix.diff index 0cbf307..bb1f203 100644 --- a/rpmlint-decode-fix.diff +++ b/rpmlint-decode-fix.diff @@ -11,3 +11,197 @@ Index: rpmlint-1.5/Pkg.py sts = proc.wait() if sts is None: sts = 0 +diff -ruN rpmlint-1.5/BinariesCheck.py rpmlint-1.5.new/BinariesCheck.py +--- rpmlint-1.5/BinariesCheck.py 2014-02-27 12:06:25.018163441 +0100 ++++ rpmlint-1.5.new/BinariesCheck.py 2014-02-27 12:04:14.210110261 +0100 +@@ -198,7 +198,7 @@ + try: + fobj = open(path, 'rb') + fobj.seek(-12, 2) # 2 == os.SEEK_END, for python 2.4 compat (#172) +- self.tail = fobj.read().decode() ++ self.tail = fobj.read() + except Exception: + e = sys.exc_info()[1] + printWarning(pkg, 'binaryinfo-tail-failed %s: %s' % (file, e)) +@@ -296,7 +296,7 @@ + multi_pkg = False + srpm = pkg[rpm.RPMTAG_SOURCERPM] + if srpm: +- res = srcname_regex.search(srpm.decode()) ++ res = srcname_regex.search(srpm) + if res: + multi_pkg = (pkg.name != res.group(1)) + +diff -ruN rpmlint-1.5/DocFilesCheck.py rpmlint-1.5.new/DocFilesCheck.py +--- rpmlint-1.5/DocFilesCheck.py 2014-02-27 12:06:24.826161897 +0100 ++++ rpmlint-1.5.new/DocFilesCheck.py 2014-02-27 12:04:29.681234928 +0100 +@@ -44,7 +44,7 @@ + + # register things which are provided by the package + for i in pkg.header[rpm.RPMTAG_PROVIDES]: +- core_reqs[i.decode()] = [] ++ core_reqs[i] = [] + for i in files: + core_reqs[i] = [] + +diff -ruN rpmlint-1.5/FilesCheck.py rpmlint-1.5.new/FilesCheck.py +--- rpmlint-1.5/FilesCheck.py 2014-02-27 12:06:25.012163393 +0100 ++++ rpmlint-1.5.new/FilesCheck.py 2014-02-27 12:04:41.277328352 +0100 +@@ -957,11 +957,11 @@ + + # Prefetch scriptlets, strip quotes from them (#169) + postin = (pkg[rpm.RPMTAG_POSTIN] or \ +- pkg.scriptprog(rpm.RPMTAG_POSTINPROG)).decode() ++ pkg.scriptprog(rpm.RPMTAG_POSTINPROG)) + if postin: + postin = quotes_regex.sub('', postin) + postun = (pkg[rpm.RPMTAG_POSTUN] or \ +- pkg.scriptprog(rpm.RPMTAG_POSTUNPROG)).decode() ++ pkg.scriptprog(rpm.RPMTAG_POSTUNPROG)) + if postun: + postun = quotes_regex.sub('', postun) + +diff -ruN rpmlint-1.5/LSBCheck.py rpmlint-1.5.new/LSBCheck.py +--- rpmlint-1.5/LSBCheck.py 2014-02-27 12:06:24.827161905 +0100 ++++ rpmlint-1.5.new/LSBCheck.py 2014-02-27 12:04:52.612419655 +0100 +@@ -32,13 +32,11 @@ + + version = pkg[rpm.RPMTAG_VERSION] + if version: +- version = version.decode() + if not version_regex.search(version): + printError(pkg, 'non-lsb-compliant-version', version) + + release = pkg[rpm.RPMTAG_RELEASE] + if release: +- release = release.decode() + if not version_regex.search(release): + printError(pkg, 'non-lsb-compliant-release', release) + +diff -ruN rpmlint-1.5/Pkg.py rpmlint-1.5.new/Pkg.py +--- rpmlint-1.5/Pkg.py 2014-02-27 12:06:25.041163626 +0100 ++++ rpmlint-1.5.new/Pkg.py 2014-02-27 12:03:33.599782891 +0100 +@@ -448,7 +448,7 @@ + os.close(fd) + self.is_source = not self.header[rpm.RPMTAG_SOURCERPM] + +- self.name = self.header[rpm.RPMTAG_NAME].decode() ++ self.name = self.header[rpm.RPMTAG_NAME] + if self.isNoSource(): + self.arch = 'nosrc' + elif self.isSource(): +@@ -534,7 +534,7 @@ + # LANGUAGE trumps other env vars per GNU gettext docs, see also #166 + orig = os.environ.get('LANGUAGE') + os.environ['LANGUAGE'] = lang +- ret = self[tag].decode() ++ ret = self[tag] + if orig is not None: + os.environ['LANGUAGE'] = orig + return ret +@@ -599,17 +599,17 @@ + modes = self.header[rpm.RPMTAG_FILEMODES] + users = self.header[rpm.RPMTAG_FILEUSERNAME] + groups = self.header[rpm.RPMTAG_FILEGROUPNAME] +- links = [x.decode() for x in self.header[rpm.RPMTAG_FILELINKTOS]] ++ links = self.header[rpm.RPMTAG_FILELINKTOS] + sizes = self.header[rpm.RPMTAG_FILESIZES] + md5s = self.header[rpm.RPMTAG_FILEMD5S] + mtimes = self.header[rpm.RPMTAG_FILEMTIMES] + rdevs = self.header[rpm.RPMTAG_FILERDEVS] + langs = self.header[rpm.RPMTAG_FILELANGS] + inodes = self.header[rpm.RPMTAG_FILEINODES] +- requires = [x.decode() for x in self.header[rpm.RPMTAG_FILEREQUIRE]] +- provides = [x.decode() for x in self.header[rpm.RPMTAG_FILEPROVIDE]] +- files = [x.decode() for x in self.header[rpm.RPMTAG_FILENAMES]] +- magics = [x.decode() for x in self.header[rpm.RPMTAG_FILECLASS]] ++ requires = self.header[rpm.RPMTAG_FILEREQUIRE] ++ provides = self.header[rpm.RPMTAG_FILEPROVIDE] ++ files = self.header[rpm.RPMTAG_FILENAMES] ++ magics = self.header[rpm.RPMTAG_FILECLASS] + try: # rpm >= 4.7.0 + filecaps = self.header[rpm.RPMTAG_FILECAPS] + except: +@@ -736,8 +736,8 @@ + + if versions: + for loop in range(len(versions)): +- name = names[loop].decode() +- evr = stringToVersion(versions[loop].decode()) ++ name = names[loop] ++ evr = stringToVersion(versions[loop]) + if prereq is not None and flags[loop] & PREREQ_FLAG: + prereq.append((name, flags[loop] & (~PREREQ_FLAG), evr)) + elif strong_only and flags[loop] & rpm.RPMSENSE_STRONG: +diff -ruN rpmlint-1.5/rpmdiff rpmlint-1.5.new/rpmdiff +--- rpmlint-1.5/rpmdiff 2014-02-27 12:06:24.826161897 +0100 ++++ rpmlint-1.5.new/rpmdiff 2014-02-27 12:03:50.387918248 +0100 +@@ -228,16 +228,16 @@ + if namestr == 'REQUIRES': + namestr = self.req2str(oldentry[1]) + self.__add(self.DEPFORMAT, +- (self.REMOVED, namestr, oldentry[0].decode(), +- self.sense2str(oldentry[1]), oldentry[2].decode())) ++ (self.REMOVED, namestr, oldentry[0], ++ self.sense2str(oldentry[1]), oldentry[2])) + for newentry in n: + if not newentry in o: + namestr = name + if namestr == 'REQUIRES': + namestr = self.req2str(newentry[1]) + self.__add(self.DEPFORMAT, +- (self.ADDED, namestr, newentry[0].decode(), +- self.sense2str(newentry[1]), newentry[2].decode())) ++ (self.ADDED, namestr, newentry[0], ++ self.sense2str(newentry[1]), newentry[2])) + + def __fileIteratorToDict(self, fi): + result = {} +diff -ruN rpmlint-1.5/TagsCheck.py rpmlint-1.5.new/TagsCheck.py +--- rpmlint-1.5/TagsCheck.py 2014-02-27 12:06:25.036163586 +0100 ++++ rpmlint-1.5.new/TagsCheck.py 2014-02-27 12:05:51.742895726 +0100 +@@ -536,7 +536,6 @@ + + packager = pkg[rpm.RPMTAG_PACKAGER] + if packager: +- packager = packager.decode() + self._unexpanded_macros(pkg, 'Packager', packager) + if Config.getOption('Packager') and \ + not packager_regex.search(packager): +@@ -546,7 +545,6 @@ + + version = pkg[rpm.RPMTAG_VERSION] + if version: +- version = version.decode() + self._unexpanded_macros(pkg, 'Version', version) + res = invalid_version_regex.search(version) + if res: +@@ -556,7 +554,6 @@ + + release = pkg[rpm.RPMTAG_RELEASE] + if release: +- release = release.decode() + self._unexpanded_macros(pkg, 'Release', release) + if release_ext and not extension_regex.search(release): + printWarning(pkg, 'not-standard-release-extension', release) +@@ -688,12 +685,9 @@ + ignored_words.update((x[0] for x in pkg.obsoletes())) + + langs = pkg[rpm.RPMTAG_HEADERI18NTABLE] +- if langs: +- langs = [x.decode() for x in langs] + + summary = pkg[rpm.RPMTAG_SUMMARY] + if summary: +- summary = summary.decode() + if not langs: + self._unexpanded_macros(pkg, 'Summary', summary) + else: +@@ -704,7 +698,6 @@ + + description = pkg[rpm.RPMTAG_DESCRIPTION] + if description: +- description = description.decode() + if not langs: + self._unexpanded_macros(pkg, '%description', description) + else: diff --git a/rpmlint.changes b/rpmlint.changes index 5fd90bc..02c539a 100644 --- a/rpmlint.changes +++ b/rpmlint.changes @@ -1,4 +1,10 @@ ------------------------------------------------------------------- +Thu Feb 27 11:07:25 UTC 2014 - lnussel@suse.de + +- rip out all decode in an attempt to make it work +- modified patches: + * rpmlint-decode-fix.diff +------------------------------------------------------------------- Thu Feb 27 08:25:03 UTC 2014 - aplanas@suse.com - added paches: