From 9dff7fbf6a3184cdbc550ab28623229bb8c5085b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Tue, 15 Jun 2021 16:15:45 +0200 Subject: [PATCH] Fix %python_provide when fed python3.10-foo to obsolete python-foo instead of python--foo This has unlikely broken anything in practice, no packages in Fedora use %python_provide with major.minor-version-prefixed names. --- macros.python | 5 +++-- python-rpm-macros.spec | 5 ++++- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/macros.python b/macros.python index 79ff2d4..f0c3f14 100644 --- a/macros.python +++ b/macros.python @@ -74,6 +74,7 @@ local package = rpm.expand("%{?1}") local vr = rpm.expand("%{?epoch:%{epoch}:}%{version}-%{release}") local provides = python.python_altprovides(package, vr) + local default_python3_pkgversion = rpm.expand("%{__default_python3_pkgversion}") if (string.starts(package, "python3-")) then for i, provide in ipairs(provides) do print("\\nProvides: " .. provide) @@ -84,14 +85,14 @@ print(string.sub(package,9,string.len(package))) print(" < " .. vr) end - elseif (string.starts(package, "python" .. rpm.expand("%{__default_python3_pkgversion}") .. "-")) then + elseif (string.starts(package, "python" .. default_python3_pkgversion .. "-")) then for i, provide in ipairs(provides) do print("\\nProvides: " .. provide) end --Obsoleting the previous default python package (if it doesn't have isa) if (string.sub(package, "-1") ~= ")") then print("\\nObsoletes: python-") - print(string.sub(package,11,string.len(package))) + print(string.sub(package,8+string.len(default_python3_pkgversion),string.len(package))) print(" < " .. vr) end elseif (string.starts(package, "python")) then diff --git a/python-rpm-macros.spec b/python-rpm-macros.spec index dd9cc93..04fe84c 100644 --- a/python-rpm-macros.spec +++ b/python-rpm-macros.spec @@ -31,7 +31,7 @@ elseif posix.stat('macros.python-srpm') then end } Version: %{__default_python3_version} -Release: 1%{?dist} +Release: 2%{?dist} BuildArch: noarch @@ -109,6 +109,9 @@ install -m 644 compileall2.py %{buildroot}%{_rpmconfigdir}/redhat/ %changelog +* Tue Jun 15 2021 Miro Hrončok - 3.10-2 +- Fix %%python_provide when fed python3.10-foo to obsolete python-foo instead of python--foo + * Tue Jun 01 2021 Miro Hrončok - 3.10-1 - Update main Python to Python 3.10 - https://fedoraproject.org/wiki/Changes/Python3.10