Accepting request 1118452 from devel:languages:python

- Add patch update-module-loader.patch:
  * Add find_spec to the magic bottle.ext loader, Python 3.12 no longer
    calls find_module.
- Switch to pyproject and autosetup macros.

OBS-URL: https://build.opensuse.org/request/show/1118452
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-bottle?expand=0&rev=27
This commit is contained in:
Ana Guerrero 2023-10-19 20:47:18 +00:00 committed by Git OBS Bridge
commit 85475a31d3
3 changed files with 48 additions and 5 deletions

View File

@ -1,3 +1,11 @@
-------------------------------------------------------------------
Wed Oct 18 05:46:24 UTC 2023 - Steve Kowalik <steven.kowalik@suse.com>
- Add patch update-module-loader.patch:
* Add find_spec to the magic bottle.ext loader, Python 3.12 no longer
calls find_module.
- Switch to pyproject and autosetup macros.
-------------------------------------------------------------------
Fri May 19 09:25:55 UTC 2023 - Jiri Srain <jsrain@suse.com>

View File

@ -25,7 +25,11 @@ License: MIT
URL: https://bottlepy.org/
Source: https://files.pythonhosted.org/packages/source/b/bottle/bottle-%{version}.tar.gz
Source1: http://bottlepy.org/docs/0.12/bottle-docs.pdf
# PATCH-FIX-UPSTREAM gh#bottlepy/bottle#ca6762c559c5e71e0dff71dc97eb4c6b3ed9bbcd
Patch0: update-module-loader.patch
BuildRequires: %{python_module pip}
BuildRequires: %{python_module setuptools}
BuildRequires: %{python_module wheel}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
Requires(post): update-alternatives
@ -56,15 +60,14 @@ This subpackage contains the PDF documentation for %{name}.
%endif
%prep
%setup -q -n bottle-%{version}
%autosetup -p1 -n bottle-%{version}
cp %{SOURCE1} .
%build
%python_build
%pyproject_wheel
%install
%python_install
%pyproject_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%python_clone -a %{buildroot}%{_bindir}/bottle.py
@ -83,7 +86,7 @@ cp %{SOURCE1} .
%python_alternative %{_bindir}/bottle.py
%{python_sitelib}/bottle.py*
%pycache_only %{python_sitelib}/__pycache__
%{python_sitelib}/bottle-%{version}-py%{python_version}.egg-info
%{python_sitelib}/bottle-%{version}.dist-info
%if 0%{?suse_version} > 1500
%files -n %{name}-doc

View File

@ -0,0 +1,32 @@
From ca6762c559c5e71e0dff71dc97eb4c6b3ed9bbcd Mon Sep 17 00:00:00 2001
From: Marcel Hellkamp <marc@gsites.de>
Date: Sun, 12 Jun 2022 15:15:35 +0200
Subject: [PATCH] Fix #1378: Module loader should move from find_mdoule to
find_spec.
---
bottle.py | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
Index: bottle-0.12.25/bottle.py
===================================================================
--- bottle-0.12.25.orig/bottle.py
+++ bottle-0.12.25/bottle.py
@@ -1803,10 +1803,15 @@ class _ImportRedirect(object):
'__all__': [], '__loader__': self})
sys.meta_path.append(self)
+ def find_spec(self, fullname, path, target=None):
+ if '.' not in fullname: return
+ if fullname.rsplit('.', 1)[0] != self.name: return
+ from importlib.util import spec_from_loader
+ return spec_from_loader(fullname, self)
+
def find_module(self, fullname, path=None):
if '.' not in fullname: return
- packname = fullname.rsplit('.', 1)[0]
- if packname != self.name: return
+ if fullname.rsplit('.', 1)[0] != self.name: return
return self
def load_module(self, fullname):