[elbe-devel] [PATCH v1 1/3] check_updates: use strings for concatenated changelogs
Bastian Germann
bage at linutronix.de
Fri Jul 2 18:28:59 CEST 2021
Am 02.07.21 um 18:14 schrieb Holger Dengler:
> Use strings instead of bytes for the concatenated changelogs and
> remove the late decoding.
>
> Signed-off-by: Holger Dengler <dengler at linutronix.de>
Reviewed-by: Bastian Germann <bage at linutronix.de>
> ---
> elbepack/changelogxml.py | 12 +-----------
> elbepack/pkgutils.py | 6 ++++--
> 2 files changed, 5 insertions(+), 13 deletions(-)
>
> diff --git a/elbepack/changelogxml.py b/elbepack/changelogxml.py
> index e0400328..869783cd 100644
> --- a/elbepack/changelogxml.py
> +++ b/elbepack/changelogxml.py
> @@ -3,29 +3,19 @@
> #
> # SPDX-License-Identifier: GPL-3.0-or-later
>
> -import re
> from elbepack.treeutils import etree
>
> -
> -remove_re = re.compile(u'[\x00-\x08\x0B-\x0C\x0E-\x1F\x7F]')
> -
> class changelogs_xml:
> def __init__(self):
> self.outxml = etree(None)
> self.pkglist = self.outxml.setroot('pkgchangelogs')
>
> def add_pkg_changelog(self, xp, changelog_text):
> - changelog_text, _ = remove_re.subn('', changelog_text)
> -
> xmlpkg = self.pkglist.append('changelog')
> xmlpkg.et.attrib['name'] = xp.name
> xmlpkg.et.attrib['version'] = xp.candidate_version
> xmlpkg.et.attrib['old_version'] = xp.installed_version
> -
> - try:
> - xmlpkg.et.text = changelog_text.decode('utf-8')
> - except ValueError:
> - print(changelog_text)
> + xmlpkg.et.text = changelog_text
>
> def write(self, fname):
> self.outxml.write(fname, encoding="utf-8")
> diff --git a/elbepack/pkgutils.py b/elbepack/pkgutils.py
> index ea8c49aa..598eb6b1 100644
> --- a/elbepack/pkgutils.py
> +++ b/elbepack/pkgutils.py
> @@ -111,12 +111,14 @@ def extract_pkg_changelog(fname, extra_pkg=None):
> ret = ""
>
> if fs.exists(dch_bin):
> - ret += fs.read_file(dch_bin, gz=True)
> + ret += fs.read_file(dch_bin, gz=True).decode(encoding='utf-8',
> + errors='replace')
> else:
> print("no bin")
>
> if fs.exists(dch_src):
> - ret += fs.read_file(dch_src, gz=True)
> + ret += fs.read_file(dch_src, gz=True).decode(encoding='utf-8',
> + errors='replace')
> else:
> print("no source")
>
>
More information about the elbe-devel
mailing list