From 5379cd34d1dcfa6f5b2e6214c3bb531e97a9a42f Mon Sep 17 00:00:00 2001 From: Piraty Date: Fri, 27 Oct 2023 20:47:53 +0200 Subject: [PATCH] gpodder: update to 3.11.4, adpopt Closes: #46683 Closes: #46693 --- ...he-removed-imp-module-with-importlib.patch | 47 +++++++++++++++++++ ...-Switch-from-distutils-to-setuptools.patch | 32 +++++++++++++ srcpkgs/gpodder/template | 8 ++-- 3 files changed, 83 insertions(+), 4 deletions(-) create mode 100644 srcpkgs/gpodder/patches/0001-Replace-the-removed-imp-module-with-importlib.patch create mode 100644 srcpkgs/gpodder/patches/0002-Switch-from-distutils-to-setuptools.patch diff --git a/srcpkgs/gpodder/patches/0001-Replace-the-removed-imp-module-with-importlib.patch b/srcpkgs/gpodder/patches/0001-Replace-the-removed-imp-module-with-importlib.patch new file mode 100644 index 00000000000000..910a1e900670ac --- /dev/null +++ b/srcpkgs/gpodder/patches/0001-Replace-the-removed-imp-module-with-importlib.patch @@ -0,0 +1,47 @@ +From 16f52b8b96e05b8acb20354429269c4c9acc563a Mon Sep 17 00:00:00 2001 +From: auouymous +Date: Fri, 20 Oct 2023 03:03:01 -0600 +Subject: [PATCH 1/2] Replace the removed imp module with importlib. + +--- + src/gpodder/extensions.py | 13 +++++++------ + 1 file changed, 7 insertions(+), 6 deletions(-) + +diff --git a/src/gpodder/extensions.py b/src/gpodder/extensions.py +index 8f50ff31..44fc35d5 100644 +--- a/src/gpodder/extensions.py ++++ b/src/gpodder/extensions.py +@@ -31,7 +31,7 @@ For an example extension see share/gpodder/examples/extensions.py + + import functools + import glob +-import imp ++import importlib + import logging + import os + import re +@@ -291,15 +291,16 @@ class ExtensionContainer(object): + self.name, self.metadata.only_for) + return + +- basename, extension = os.path.splitext(os.path.basename(self.filename)) +- fp = open(self.filename, 'r') ++ basename, _ = os.path.splitext(os.path.basename(self.filename)) + try: +- module_file = imp.load_module(basename, fp, self.filename, +- (extension, 'r', imp.PY_SOURCE)) ++ # from load_source() on https://docs.python.org/dev/whatsnew/3.12.html ++ loader = importlib.machinery.SourceFileLoader(basename, self.filename) ++ spec = importlib.util.spec_from_file_location(basename, self.filename, loader=loader) ++ module_file = importlib.util.module_from_spec(spec) ++ loader.exec_module(module_file) + finally: + # Remove the .pyc file if it was created during import + util.delete_file(self.filename + 'c') +- fp.close() + + self.default_config = getattr(module_file, 'DefaultConfig', {}) + if self.default_config: +-- +2.42.0 + diff --git a/srcpkgs/gpodder/patches/0002-Switch-from-distutils-to-setuptools.patch b/srcpkgs/gpodder/patches/0002-Switch-from-distutils-to-setuptools.patch new file mode 100644 index 00000000000000..179bf503d7f419 --- /dev/null +++ b/srcpkgs/gpodder/patches/0002-Switch-from-distutils-to-setuptools.patch @@ -0,0 +1,32 @@ +From 4b75a049f5bc49273bb4a395ab16be3ba48491bd Mon Sep 17 00:00:00 2001 +From: auouymous +Date: Tue, 24 Oct 2023 03:39:53 -0600 +Subject: [PATCH 2/2] Switch from distutils to setuptools. + +Closes: #1571 [via git-merge-pr] +--- + setup.py | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/setup.py b/setup.py +index 86963fc5..9eb8ca39 100644 +--- a/setup.py ++++ b/setup.py +@@ -21,11 +21,12 @@ + import os + import re + import sys +-from distutils.core import setup ++ ++from setuptools import setup + + installing = ('install' in sys.argv and '--help' not in sys.argv) + +-# distutils depends on setup.py being executed from the same dir. ++# setuptools depends on setup.py being executed from the same dir. + # Most of our custom commands work either way, but this makes + # it work in all cases. + os.chdir(os.path.dirname(os.path.realpath(__file__))) +-- +2.42.0 + diff --git a/srcpkgs/gpodder/template b/srcpkgs/gpodder/template index 7d4161ee3e429b..9cc3b23caa47c9 100644 --- a/srcpkgs/gpodder/template +++ b/srcpkgs/gpodder/template @@ -1,7 +1,7 @@ # Template file for 'gpodder' pkgname=gpodder -version=3.11.1 -revision=2 +version=3.11.4 +revision=1 hostmakedepends="python3-setuptools intltool" depends="eyeD3 gtk+3 hicolor-icon-theme python3-dbus python3-gobject python3-html5lib python3-mygpoclient python3-podcastparser python3-mutagen @@ -10,11 +10,11 @@ checkdepends="${depends} python3-MiniMock python3-coverage desktop-file-utils python3-pytest python3-pytest-httpserver python3-pytest-cov python3-requests which" short_desc="Podcast client" -maintainer="Orphaned " +maintainer="Piraty " license="GPL-3.0-or-later" homepage="https://github.com/gpodder/gpodder" distfiles="https://github.com/gpodder/gpodder/archive/${version}.tar.gz" -checksum=c24fb3ef70b5acf43c07e6dd4e78c309e1cbacff621eb59f73c137b9597c6e87 +checksum=8022a6c29157dc287b5661f8915d04404767c33b6858e8d1a6c728904f8dae55 do_check() { make releasetest