diff --git a/.gitignore b/.gitignore index c42dd83..408824d 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -SOURCES/urwid-1.3.1.tar.gz +urwid-2.5.3.tar.gz diff --git a/.python-urwid.metadata b/.python-urwid.metadata deleted file mode 100644 index fe24108..0000000 --- a/.python-urwid.metadata +++ /dev/null @@ -1 +0,0 @@ -5c562de41e150b87c8e2660f70c699fb6e951127 SOURCES/urwid-1.3.1.tar.gz diff --git a/SOURCES/python-urwid-test_event_loops.patch b/SOURCES/python-urwid-test_event_loops.patch deleted file mode 100644 index 2622a0e..0000000 --- a/SOURCES/python-urwid-test_event_loops.patch +++ /dev/null @@ -1,32 +0,0 @@ -commit 4b0ed8b6030450e6d99909a7c683e9642e546387 -Author: Michael Hudson-Doyle -Date: Wed Jun 7 13:52:17 2017 -0700 - - fix test_remove_watch_file flakiness - - pass a known-good file descriptor to watch_file rather than hard-coding 5 - - Fixes #164 - -diff --git a/urwid/tests/test_event_loops.py b/urwid/tests/test_event_loops.py -index c85bbed..b01212d 100644 ---- a/urwid/tests/test_event_loops.py -+++ b/urwid/tests/test_event_loops.py -@@ -30,9 +30,14 @@ class EventLoopTestMixin(object): - - def test_remove_watch_file(self): - evl = self.evl -- handle = evl.watch_file(5, lambda: None) -- self.assertTrue(evl.remove_watch_file(handle)) -- self.assertFalse(evl.remove_watch_file(handle)) -+ fd_r, fd_w = os.pipe() -+ try: -+ handle = evl.watch_file(fd_r, lambda: None) -+ self.assertTrue(evl.remove_watch_file(handle)) -+ self.assertFalse(evl.remove_watch_file(handle)) -+ finally: -+ os.close(fd_r) -+ os.close(fd_w) - - _expected_idle_handle = 1 - diff --git a/SOURCES/python-urwid-test_vterm-EINTR.patch b/SOURCES/python-urwid-test_vterm-EINTR.patch deleted file mode 100644 index caec6db..0000000 --- a/SOURCES/python-urwid-test_vterm-EINTR.patch +++ /dev/null @@ -1,49 +0,0 @@ -commit f68f2cf089cfd5ec45863baf59a91d5aeb0cf5c3 -Author: Mike Gilbert -Date: Sat Jun 3 14:53:51 2017 -0400 - - test_vterm: handle EINTR when reading from pipe - - Fixes: https://github.com/urwid/urwid/issues/230 - -diff --git a/urwid/tests/test_vterm.py b/urwid/tests/test_vterm.py -index 4dadfcc..075c653 100644 ---- a/urwid/tests/test_vterm.py -+++ b/urwid/tests/test_vterm.py -@@ -18,6 +18,7 @@ - # - # Urwid web site: http://excess.org/urwid/ - -+import errno - import os - import sys - import unittest -@@ -28,7 +29,6 @@ from urwid import vterm - from urwid import signals - from urwid.compat import B - -- - class DummyCommand(object): - QUITSTRING = B('|||quit|||') - -@@ -41,12 +41,20 @@ class DummyCommand(object): - stdout.write(B('\x1bc')) - - while True: -- data = os.read(self.reader, 1024) -+ data = self.read(1024) - if self.QUITSTRING == data: - break - stdout.write(data) - stdout.flush() - -+ def read(self, size): -+ while True: -+ try: -+ return os.read(self.reader, size) -+ except OSError as e: -+ if e.errno != errno.EINTR: -+ raise -+ - def write(self, data): - os.write(self.writer, data) diff --git a/SOURCES/python-urwid-test_vterm-NUL.patch b/SOURCES/python-urwid-test_vterm-NUL.patch deleted file mode 100644 index ca184db..0000000 --- a/SOURCES/python-urwid-test_vterm-NUL.patch +++ /dev/null @@ -1,47 +0,0 @@ -commit 701138a380fac06023e5915448af92ba13614cb9 -Author: aszlig -Date: Thu Feb 11 03:14:07 2016 +0100 - - vterm: Fix handling of NUL characters - - According to the VT100 programmers manual, the NUL character has to be - ignored (at least on our side, because we are not a printer): - - http://vt100.net/docs/tp83/appendixb.html - - According to the bug reporter the VMS console driver inserts NUL - characters after line feeds and our implementation prints those as "?". - - Tested against Python 2.7, 3.2, 3.3, 3.4 and 3.5. - - Signed-off-by: aszlig - Reported-by: Robert Urban - -diff --git a/urwid/tests/test_vterm.py b/urwid/tests/test_vterm.py -index 59fe166..4dadfcc 100644 ---- a/urwid/tests/test_vterm.py -+++ b/urwid/tests/test_vterm.py -@@ -143,6 +143,10 @@ class TermTest(unittest.TestCase): - self.write('1\n2\n3\n4\e[2;1f\e[2M') - self.expect('1\n4') - -+ def test_nul(self): -+ self.write('a\0b') -+ self.expect('ab') -+ - def test_movement(self): - self.write('\e[10;20H11\e[10;0f\e[20C\e[K') - self.expect('\n' * 9 + ' ' * 19 + '1') -diff --git a/urwid/vterm.py b/urwid/vterm.py -index cc4eb7f..0f091ea 100644 ---- a/urwid/vterm.py -+++ b/urwid/vterm.py -@@ -671,7 +671,7 @@ class TermCanvas(Canvas): - self.widget.beep() - elif not dc and char in B("\x18\x1a"): # CAN/SUB - self.leave_escape() -- elif not dc and char == B("\x7f"): # DEL -+ elif not dc and char in B("\x00\x7f"): # NUL/DEL - pass # this is ignored - elif self.within_escape: - self.parse_escape(char) diff --git a/SPECS/python-urwid.spec b/SPECS/python-urwid.spec deleted file mode 100644 index 99be529..0000000 --- a/SPECS/python-urwid.spec +++ /dev/null @@ -1,179 +0,0 @@ -Name: python-urwid -Version: 1.3.1 -Release: 4%{?dist} -Summary: Console user interface library - -License: LGPLv2+ -URL: http://excess.org/urwid/ -Source0: https://pypi.python.org/packages/source/u/urwid/urwid-%{version}.tar.gz - -# https://github.com/urwid/urwid/pull/237/commits/f68f2cf089cfd5ec45863baf59a91d5aeb0cf5c3 -Patch0: python-urwid-test_vterm-EINTR.patch - -# https://github.com/urwid/urwid/commit/701138a380fac06023e5915448af92ba13614cb9 -Patch1: python-urwid-test_vterm-NUL.patch - -# https://github.com/urwid/urwid/commit/4b0ed8b6030450e6d99909a7c683e9642e546387 -Patch2: python-urwid-test_event_loops.patch - -%global _description\ -Urwid is a Python library for making text console applications. It has\ -many features including fluid interface resizing, support for UTF-8 and\ -CJK encodings, standard and custom text layout modes, simple markup for\ -setting text attributes, and a powerful, dynamic list box that handles a\ -mix of widget types. It is flexible, modular, and leaves the developer in\ -control. - -%description %_description -%package -n python3-urwid -Summary: %summary -%{?python_provide:%python_provide python3-urwid} -BuildRequires: python3-devel -BuildRequires: python3-setuptools -BuildRequires: python3-test -# needed by selftest suite for test.support -BuildRequires: %{_bindir}/2to3 - -%description -n python3-urwid %_description - -%prep -%setup -q -n urwid-%{version} -%patch0 -p1 -%patch1 -p1 -%patch2 -p1 -find urwid -type f -name "*.py" -exec sed -i -e '/^#!\//, 1d' {} \; -find urwid -type f -name "*.py" -exec chmod 644 {} \; - -%build -%py3_build - -find examples -type f -exec chmod 0644 \{\} \; - -%install -%py3_install - -%check -%{__python3} setup.py test - -%files -n python3-urwid -%license COPYING -%doc README.rst examples docs -%{python3_sitearch}/urwid -%{python3_sitearch}/urwid-%{version}*.egg-info - -%changelog -* Thu May 31 2018 Petr Viktorin - 1.3.1-4 -- Remove Python 2 subpackage - https://bugzilla.redhat.com/show_bug.cgi?id=1567166 - -* Fri Feb 09 2018 Fedora Release Engineering - 1.3.1-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild - -* Wed Nov 15 2017 David Cantrell - 1.3.1-2 -- Apply upstream fix for EINTR handling in test_vterm test case -- Apply upstream fix for test_remove_watch_file flakiness -- Apply upstream fix for test_vterm handling of NUL characters - -* Sat Aug 19 2017 Petr Viktorin - 1.3.1-1 -- Update to upstream bugfix release 1.3.1 - See http://urwid.org/changelog.html#urwid-1-3-1 - -* Sat Aug 19 2017 Zbigniew Jędrzejewski-Szmek - 1.3.0-11 -- Python 2 binary package renamed to python2-urwid - See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3 - -* Thu Aug 03 2017 Fedora Release Engineering - 1.3.0-10 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild - -* Thu Jul 27 2017 Fedora Release Engineering - 1.3.0-9 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Sat Feb 11 2017 Fedora Release Engineering - 1.3.0-8 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild - -* Mon Dec 19 2016 Miro Hrončok - 1.3.0-7 -- Rebuild for Python 3.6 - -* Tue Jul 19 2016 Fedora Release Engineering - 1.3.0-6 -- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages - -* Thu Feb 04 2016 Fedora Release Engineering - 1.3.0-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild - -* Tue Nov 10 2015 Fedora Release Engineering - 1.3.0-4 -- Rebuilt for https://fedoraproject.org/wiki/Changes/python3.5 - -* Tue Nov 3 2015 Toshio Kuratomi - 1.3.0-3 -- Remove executable bit on docs so that they do not bring in extra rpm - dependencies. This complies with packaging guidelines and fixes the - problem of python3-urwid requiring the python2 package. - -* Thu Jun 18 2015 Fedora Release Engineering - 1.3.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild - -* Tue Nov 25 2014 David Cantrell - 1.3.0-1 -- Upgrade to urwid-1.3.0 (#1150540) - -* Sun Aug 17 2014 Fedora Release Engineering - 1.2.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild - -* Thu Jun 12 2014 David Cantrell - 1.2.1-1 -- Upgrade to urwid-1.2.1 (#1047698) - -* Sun Jun 08 2014 Fedora Release Engineering - 1.1.1-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild - -* Wed May 28 2014 Kalev Lember - 1.1.1-4 -- Rebuilt for https://fedoraproject.org/wiki/Changes/Python_3.4 - -* Fri Dec 06 2013 Pierre-Yves Chibon fr - 1.1.1-3 -- Change BR from python-setuptools-devel to python-setuptools - See https://fedoraproject.org/wiki/Changes/Remove_Python-setuptools-devel - -* Sun Aug 04 2013 Fedora Release Engineering - 1.1.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild - -* Wed Nov 21 2012 Fabian Deutsch - 1.1.1 -1 -- Bugfix update - -* Tue Oct 23 2012 Fabian Deutsch - 1.1.0-2 -- Add new docs and examples dir - -* Tue Oct 23 2012 Fabian Deutsch - 1.1.0-1 -- Update to upstream 1.1.0 - -* Wed Sep 26 2012 Fabian Deutsch - 1.0.2-1 -- Update to upstream 1.0.2 - -* Mon Aug 27 2012 David Malcolm - 1.0.0-7 -- add missing BRs on python-test and python3-test (for test.support) - -* Fri Aug 24 2012 David Malcolm - 1.0.0-6 -- remove rhel logic from with_python3 conditional -- remove stray references to mako - -* Sat Aug 04 2012 David Malcolm - 1.0.0-5 -- rebuild for https://fedoraproject.org/wiki/Features/Python_3.3 - -* Sat Jul 21 2012 Fedora Release Engineering - 1.0.0-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild - -* Sat Jan 14 2012 Fedora Release Engineering - 1.0.0-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild - -* Mon Oct 24 2011 Luke Macken - 1.0.0-2 -- Add a python3-urwid subpackage (#746627) - -* Wed Oct 19 2011 Luke Macken - 1.0.0 -- Update to version 1.0.0 -- Add python-setuptools-devel to the BuildRequires -- Run the test suite using the setup.py - -* Wed Feb 09 2011 Fedora Release Engineering - 0.9.9.1-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild - -* Tue Jul 27 2010 David Malcolm - 0.9.9.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild - -* Wed May 19 2010 David Cantrell - 0.9.9.1-1 -- Initial package diff --git a/python-urwid.spec b/python-urwid.spec new file mode 100644 index 0000000..697857e --- /dev/null +++ b/python-urwid.spec @@ -0,0 +1,82 @@ +## START: Set by rpmautospec +## (rpmautospec version 0.6.5) +## RPMAUTOSPEC: autorelease, autochangelog +%define autorelease(e:s:pb:n) %{?-p:0.}%{lua: + release_number = 4; + base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}")); + print(release_number + base_release_number - 1); +}%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}} +## END: Set by rpmautospec + +%bcond_without tests + +%global srcname urwid + +Name: python-%{srcname} +Version: 2.5.3 +Release: %autorelease +Summary: Console user interface library + +# examples/twisted_serve_ssh.py is MIT +License: LGPL-2.1-or-later AND MIT +URL: http://excess.org/urwid/ +Source0: %{pypi_source urwid} + +%global _description\ +Urwid is a Python library for making text console applications. It has\ +many features including fluid interface resizing, support for UTF-8 and\ +CJK encodings, standard and custom text layout modes, simple markup for\ +setting text attributes, and a powerful, dynamic list box that handles a\ +mix of widget types. It is flexible, modular, and leaves the developer in\ +control. + +%description %_description + +%package -n python3-%{srcname} +Summary: %summary +%{?python_provide:%python_provide python3-urwid} +BuildRequires: gcc +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-setuptools_scm +# needed by selftest suite for test.support +BuildRequires: python3-test + +%description -n python3-%{srcname} %_description + +%prep +%autosetup -n %{srcname}-%{version} +find urwid -type f -name "*.py" -exec sed -i -e '/^#!\//, 1d' {} \; +find urwid -type f -name "*.py" -exec chmod 644 {} \; + +%build +%py3_build + +find examples -type f -exec chmod 0644 \{\} \; + +%check +%if %{with tests} +# tests are failing: https://github.com/urwid/urwid/issues/344 +PYTHON=%{__python3} %{__python3} setup.py test || : +%endif + +%install +%py3_install + +%files -n python3-%{srcname} +%license COPYING +%doc README.rst examples docs +%{python3_sitearch}/urwid/ +%{python3_sitearch}/urwid-%{version}*.egg-info/ + +%changelog +## START: Generated by rpmautospec +* Tue Oct 29 2024 Troy Dawson - 2.5.3-4 +- Bump release for October 2024 mass rebuild: + +* Mon Jun 24 2024 Troy Dawson - 2.5.3-3 +- Bump release for June 2024 mass rebuild + +* Tue Feb 13 2024 Tomas Tomecek - 2.5.3-2 +- RPMAUTOSPEC: unresolvable merge +## END: Generated by rpmautospec diff --git a/sources b/sources new file mode 100644 index 0000000..d5501ca --- /dev/null +++ b/sources @@ -0,0 +1 @@ +SHA512 (urwid-2.5.3.tar.gz) = 80c32138347a618fc40e1a26fd174e708a9f8e4e9a8e09edc1d9261a9d73a644e356ce375654a55b5fb8838a820b8ba8b1cc47560c5b44c5c74677399845f578