14
0
forked from pool/python-pypng

Accepting request 886560 from devel:languages:python

OBS-URL: https://build.opensuse.org/request/show/886560
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-pypng?expand=0&rev=8
This commit is contained in:
2021-04-19 19:05:58 +00:00
committed by Git OBS Bridge
3 changed files with 59 additions and 17 deletions

31
pypng-pr104-py39.patch Normal file
View File

@@ -0,0 +1,31 @@
From fe9c973c5e92f24746dfa1be8796c14a2befec4f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
Date: Wed, 15 Jul 2020 07:54:53 +0200
Subject: [PATCH] test_png: Use array.tobytes to fix py3.9 compatibility
The deprecated array.tostring() method has been removed in Python 3.9.
Use .tobytes() instead.
---
code/test_png.py | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/code/test_png.py b/code/test_png.py
index c858d18..447c314 100644
--- a/code/test_png.py
+++ b/code/test_png.py
@@ -448,13 +448,13 @@ def test_write_packed(self):
def test_interlaced_array(self):
"""Reading an interlaced PNG yields each row as an array."""
r = png.Reader(bytes=pngsuite.basi0g08)
- list(r.read()[2])[0].tostring
+ list(r.read()[2])[0].tobytes
def test_trns_array(self):
"""A type 2 PNG with tRNS chunk yields each row
as an array (using asDirect)."""
r = png.Reader(bytes=pngsuite.tbrn2c08)
- list(r.asDirect()[2])[0].tostring
+ list(r.asDirect()[2])[0].tobytes
def test_flat(self):
"""Test read_flat."""

View File

@@ -1,3 +1,10 @@
-------------------------------------------------------------------
Sat Apr 17 21:48:57 UTC 2021 - Ben Greiner <code@bnavigator.de>
- Add pypng-pr104-py39.patch for Python 3.9 compatibility
gh#drj11/pypng#104
- Expand u-a install scriptlets early (Fix rpmlint warnings)
-------------------------------------------------------------------
Fri Feb 26 21:28:52 UTC 2021 - Ben Greiner <code@bnavigator.de>

View File

@@ -17,7 +17,7 @@
%define binaries prichunkpng priforgepng prigreypng pripalpng pripamtopng pripnglsch pripngtopam priweavepng
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
%{?!python_module:%define python_module() python3-%{**}}
Name: python-pypng
Version: 0.0.20
Release: 0
@@ -26,14 +26,17 @@ License: MIT
Group: Development/Languages/Python
URL: https://github.com/drj11/pypng
Source: https://files.pythonhosted.org/packages/source/p/pypng/pypng-%{version}.tar.gz
# PATCH-FIX-UPSTREAM pr_106 -- gh#drj11/pypng#106 remove test modules
Patch0: pr_106.patch
# PATCH-FIX-UPSTREAM pypng-pr104-py39.patch -- gh#drj11/pypng#104 -- python 3.9 compat
Patch1: https://github.com/drj11/pypng/pull/104.patch#/pypng-pr104-py39.patch
BuildRequires: %{python_module Cython}
BuildRequires: %{python_module setuptools}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
BuildRequires: %{python_module numpy if (%python-base without python36-base)}
Requires(post): update-alternatives
Requires(postun): update-alternatives
Requires(postun):update-alternatives
BuildArch: noarch
%python_subpackages
@@ -43,6 +46,10 @@ PyPNG allows PNG image files to be read and written using pure Python.
%prep
%setup -q -n pypng-%{version}
%patch0 -p1
%if 0%{suse_version} >= 1550
# The patch for Python 3.9 compatibility breaks Python 2
%patch1 -p1
%endif
sed -i -e '/^#!\//, 1d' code/png.py
%build
@@ -59,25 +66,22 @@ done
%python_expand PYTHONPATH=%{buildroot}%{$python_sitelib}:code $python code/test_png.py
%post
for b in %{binaries}; do
%python_install_alternative $b
done
%{lua: for b in rpm.expand("%{binaries}"):gmatch("%S+") do
print(rpm.expand("%python_install_alternative " .. b))
end}
%postun
for b in %{binaries}; do
%python_uninstall_alternative $b
done
%{lua: for b in rpm.expand("%{binaries}"):gmatch("%S+") do
print(rpm.expand("%python_uninstall_alternative " .. b))
end}
%files %{python_files}
%license LICENCE
%{python_sitelib}/*
%python_alternative %{_bindir}/prichunkpng
%python_alternative %{_bindir}/priforgepng
%python_alternative %{_bindir}/prigreypng
%python_alternative %{_bindir}/pripalpng
%python_alternative %{_bindir}/pripamtopng
%python_alternative %{_bindir}/pripnglsch
%python_alternative %{_bindir}/pripngtopam
%python_alternative %{_bindir}/priweavepng
%{python_sitelib}/png.py*
%{python_sitelib}/pypng-%{version}*-info
%pycache_only %{python_sitelib}/__pycache__/png.*.pyc
%{lua: for b in rpm.expand("%{binaries}"):gmatch("%S+") do
print(rpm.expand("%python_alternative %{_bindir}/" .. b))
end}
%changelog