From a23a59dca79d8b681262533280ddf66a2b6e5e91 Mon Sep 17 00:00:00 2001 From: tigro Date: Fri, 12 Jul 2024 04:51:31 +0300 Subject: [PATCH] import python-xlib-0.33-2.el8 --- .gitignore | 1 + .python-xlib.metadata | 1 + SOURCES/fix-ssh-tunnel-auth | 48 +++++ SOURCES/python-xlib-mock.patch | 15 ++ SOURCES/python-xlib-test.patch | 15 ++ SOURCES/python-xlib-tohex.patch | 26 +++ SOURCES/xorg.conf | 135 +++++++++++++ SPECS/python-xlib.spec | 322 ++++++++++++++++++++++++++++++++ 8 files changed, 563 insertions(+) create mode 100644 .gitignore create mode 100644 .python-xlib.metadata create mode 100644 SOURCES/fix-ssh-tunnel-auth create mode 100644 SOURCES/python-xlib-mock.patch create mode 100644 SOURCES/python-xlib-test.patch create mode 100644 SOURCES/python-xlib-tohex.patch create mode 100644 SOURCES/xorg.conf create mode 100644 SPECS/python-xlib.spec diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..1e2f358 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +SOURCES/python-xlib-0.33.tar.gz diff --git a/.python-xlib.metadata b/.python-xlib.metadata new file mode 100644 index 0000000..5558a7e --- /dev/null +++ b/.python-xlib.metadata @@ -0,0 +1 @@ +8647f2c00df67778ba6a75a0e681a056f7433a1a SOURCES/python-xlib-0.33.tar.gz diff --git a/SOURCES/fix-ssh-tunnel-auth b/SOURCES/fix-ssh-tunnel-auth new file mode 100644 index 0000000..89c86d5 --- /dev/null +++ b/SOURCES/fix-ssh-tunnel-auth @@ -0,0 +1,48 @@ +Index: trunk/Xlib/support/unix_connect.py +=================================================================== +--- trunk.orig/Xlib/support/unix_connect.py 2009-11-05 06:06:09.000000000 -0500 ++++ trunk/Xlib/support/unix_connect.py 2009-11-05 06:06:23.000000000 -0500 +@@ -161,6 +161,14 @@ + except os.error: + pass + ++ if not auth_data and host=='localhost': ++ # 127.0.0.1 counts as FamilyLocal, not FamilyInternet ++ # See Xtransutil.c:ConvertAddress. ++ # There might be more ways to spell 127.0.0.1 but ++ # 'localhost', yet this code fixes a the case of ++ # OpenSSH tunneling X. ++ return get_auth('unix:%d' % dno, 'unix', dno) ++ + return auth_name, auth_data + + get_auth = new_get_auth +commit 95e9996cf86b08fa5af12190b71dd9067cc85270 +Author: Orion Poplawski +Date: Fri Sep 30 16:05:28 2016 -0600 + + Replace tabs with spaces + +diff --git a/Xlib/support/unix_connect.py b/Xlib/support/unix_connect.py +index 677c36e..c1a2201 100644 +--- a/Xlib/support/unix_connect.py ++++ b/Xlib/support/unix_connect.py +@@ -168,12 +168,12 @@ def old_get_auth(sock, dname, host, dno): + pass + + if not auth_data and host=='localhost': +- # 127.0.0.1 counts as FamilyLocal, not FamilyInternet +- # See Xtransutil.c:ConvertAddress. +- # There might be more ways to spell 127.0.0.1 but +- # 'localhost', yet this code fixes a the case of +- # OpenSSH tunneling X. +- return get_auth('unix:%d' % dno, 'unix', dno) ++ # 127.0.0.1 counts as FamilyLocal, not FamilyInternet ++ # See Xtransutil.c:ConvertAddress. ++ # There might be more ways to spell 127.0.0.1 but ++ # 'localhost', yet this code fixes a the case of ++ # OpenSSH tunneling X. ++ return get_auth('unix:%d' % dno, 'unix', dno) + + return auth_name, auth_data + diff --git a/SOURCES/python-xlib-mock.patch b/SOURCES/python-xlib-mock.patch new file mode 100644 index 0000000..6224fd9 --- /dev/null +++ b/SOURCES/python-xlib-mock.patch @@ -0,0 +1,15 @@ +diff -up python-xlib-0.31/test/test_unix_connect.py.mock python-xlib-0.31/test/test_unix_connect.py +--- python-xlib-0.31/test/test_unix_connect.py.mock 2021-07-02 04:30:09.000000000 -0600 ++++ python-xlib-0.31/test/test_unix_connect.py 2022-01-11 22:06:31.771838501 -0700 +@@ -6,7 +6,10 @@ import socket + import sys + import unittest + +-from mock import patch ++try: ++ from unittest.mock import patch ++except ImportError: ++ from mock import patch + + from Xlib.support import unix_connect + from Xlib.error import DisplayConnectionError, DisplayNameError diff --git a/SOURCES/python-xlib-test.patch b/SOURCES/python-xlib-test.patch new file mode 100644 index 0000000..ebea7cc --- /dev/null +++ b/SOURCES/python-xlib-test.patch @@ -0,0 +1,15 @@ +diff -up python-xlib-0.20/test/test_xlib_display.py.test python-xlib-0.20/test/test_xlib_display.py +--- python-xlib-0.20/test/test_xlib_display.py.test 2017-09-07 06:20:35.000000000 -0600 ++++ python-xlib-0.20/test/test_xlib_display.py 2018-04-13 19:06:29.334521849 -0600 +@@ -96,8 +96,9 @@ class TestXlibDisplay(unittest.TestCase) + def test_keysym_to_keycode_for_nosymbol(self): + self.assertEqual(self.display.keysym_to_keycode(Xlib.X.NoSymbol), 0) + +- def test_keysym_to_keycode_for_valid_symbol(self): +- self.assertEqual(self.display.keysym_to_keycode(self.keysym), 119) ++ # FAILS - https://github.com/python-xlib/python-xlib/issues/1 ++ #def test_keysym_to_keycode_for_valid_symbol(self): ++ # self.assertEqual(self.display.keysym_to_keycode(self.keysym), 119) + + def test_keysym_to_keycodes_for_nosymbol(self): + self.assertEqual(self.display.keysym_to_keycodes(Xlib.X.NoSymbol), []) diff --git a/SOURCES/python-xlib-tohex.patch b/SOURCES/python-xlib-tohex.patch new file mode 100644 index 0000000..35349bc --- /dev/null +++ b/SOURCES/python-xlib-tohex.patch @@ -0,0 +1,26 @@ +diff --git a/test/test_events_be.py b/test/test_events_be.py +index d911ee1..92f9e43 100644 +--- a/test/test_events_be.py ++++ b/test/test_events_be.py +@@ -6,7 +6,7 @@ sys.path.insert(0, os.path.normpath(os.path.join(__file__, '../..'))) + import unittest + from Xlib.protocol import request, event + from . import BigEndianTest as EndianTest +-from . import DummyDisplay ++from . import DummyDisplay, tohex + + dummy_display = DummyDisplay() + +diff --git a/test/test_requests_be.py b/test/test_requests_be.py +index e41ccfc..bf37c87 100644 +--- a/test/test_requests_be.py ++++ b/test/test_requests_be.py +@@ -6,7 +6,7 @@ sys.path.insert(0, os.path.normpath(os.path.join(__file__, '../..'))) + import unittest + from Xlib.protocol import request, event + from . import BigEndianTest as EndianTest +-from . import DummyDisplay ++from . import DummyDisplay, tohex + + dummy_display = DummyDisplay() + diff --git a/SOURCES/xorg.conf b/SOURCES/xorg.conf new file mode 100644 index 0000000..39bc48a --- /dev/null +++ b/SOURCES/xorg.conf @@ -0,0 +1,135 @@ +# This xorg configuration file is meant to be used +# to start a dummy X11 server for graphical testing. + +Section "ServerFlags" + Option "DontVTSwitch" "true" + Option "AllowMouseOpenFail" "true" + Option "PciForceNone" "true" + Option "AutoEnableDevices" "false" + Option "AutoAddDevices" "false" +EndSection + +Section "InputDevice" + Identifier "dummy_mouse" + Option "CorePointer" "true" + Driver "void" +EndSection + +Section "InputDevice" + Identifier "dummy_keyboard" + Option "CoreKeyboard" "true" + Driver "void" +EndSection + +Section "Device" + Identifier "dummy_videocard" + Driver "dummy" + Option "ConstantDPI" "true" + #VideoRam 4096000 + #VideoRam 256000 + VideoRam 192000 +EndSection + +Section "Monitor" + Identifier "dummy_monitor" + HorizSync 5.0 - 1000.0 + VertRefresh 5.0 - 200.0 + #This can be used to get a specific DPI, but only for the default resolution: + #DisplaySize 508 317 + #NOTE: the highest modes will not work without increasing the VideoRam + # for the dummy video card. + Modeline "32768x32768" 15226.50 32768 35800 39488 46208 32768 32771 32781 32953 + Modeline "32768x16384" 7516.25 32768 35544 39192 45616 16384 16387 16397 16478 + Modeline "16384x8192" 2101.93 16384 16416 24400 24432 8192 8390 8403 8602 + Modeline "8192x4096" 424.46 8192 8224 9832 9864 4096 4195 4202 4301 + Modeline "5496x1200" 199.13 5496 5528 6280 6312 1200 1228 1233 1261 + Modeline "5280x1080" 169.96 5280 5312 5952 5984 1080 1105 1110 1135 + Modeline "5280x1200" 191.40 5280 5312 6032 6064 1200 1228 1233 1261 + Modeline "5120x3200" 199.75 5120 5152 5904 5936 3200 3277 3283 3361 + Modeline "4800x1200" 64.42 4800 4832 5072 5104 1200 1229 1231 1261 + Modeline "3840x2880" 133.43 3840 3872 4376 4408 2880 2950 2955 3025 + Modeline "3840x2560" 116.93 3840 3872 4312 4344 2560 2622 2627 2689 + Modeline "3840x2048" 91.45 3840 3872 4216 4248 2048 2097 2101 2151 + Modeline "3840x1080" 100.38 3840 3848 4216 4592 1080 1081 1084 1093 + Modeline "3600x1200" 106.06 3600 3632 3984 4368 1200 1201 1204 1214 + Modeline "3288x1080" 39.76 3288 3320 3464 3496 1080 1106 1108 1135 + Modeline "2048x2048" 49.47 2048 2080 2264 2296 2048 2097 2101 2151 + Modeline "2048x1536" 80.06 2048 2104 2312 2576 1536 1537 1540 1554 + Modeline "2560x1600" 47.12 2560 2592 2768 2800 1600 1639 1642 1681 + Modeline "2560x1440" 42.12 2560 2592 2752 2784 1440 1475 1478 1513 + Modeline "1920x1440" 69.47 1920 1960 2152 2384 1440 1441 1444 1457 + Modeline "1920x1200" 26.28 1920 1952 2048 2080 1200 1229 1231 1261 + Modeline "1920x1080" 23.53 1920 1952 2040 2072 1080 1106 1108 1135 + Modeline "1680x1050" 20.08 1680 1712 1784 1816 1050 1075 1077 1103 + Modeline "1600x1200" 22.04 1600 1632 1712 1744 1200 1229 1231 1261 + Modeline "1600x900" 33.92 1600 1632 1760 1792 900 921 924 946 + Modeline "1440x900" 30.66 1440 1472 1584 1616 900 921 924 946 + ModeLine "1366x768" 72.00 1366 1414 1446 1494 768 771 777 803 + Modeline "1280x1024" 31.50 1280 1312 1424 1456 1024 1048 1052 1076 + Modeline "1280x800" 24.15 1280 1312 1400 1432 800 819 822 841 + Modeline "1280x768" 23.11 1280 1312 1392 1424 768 786 789 807 + Modeline "1360x768" 24.49 1360 1392 1480 1512 768 786 789 807 + Modeline "1024x768" 18.71 1024 1056 1120 1152 768 786 789 807 + Modeline "768x1024" 19.50 768 800 872 904 1024 1048 1052 1076 + + + #common resolutions for android devices (both orientations): + Modeline "800x1280" 25.89 800 832 928 960 1280 1310 1315 1345 + Modeline "1280x800" 24.15 1280 1312 1400 1432 800 819 822 841 + Modeline "720x1280" 30.22 720 752 864 896 1280 1309 1315 1345 + Modeline "1280x720" 27.41 1280 1312 1416 1448 720 737 740 757 + Modeline "768x1024" 24.93 768 800 888 920 1024 1047 1052 1076 + Modeline "1024x768" 23.77 1024 1056 1144 1176 768 785 789 807 + Modeline "600x1024" 19.90 600 632 704 736 1024 1047 1052 1076 + Modeline "1024x600" 18.26 1024 1056 1120 1152 600 614 617 631 + Modeline "536x960" 16.74 536 568 624 656 960 982 986 1009 + Modeline "960x536" 15.23 960 992 1048 1080 536 548 551 563 + Modeline "600x800" 15.17 600 632 688 720 800 818 822 841 + Modeline "800x600" 14.50 800 832 880 912 600 614 617 631 + Modeline "480x854" 13.34 480 512 560 592 854 873 877 897 + Modeline "848x480" 12.09 848 880 920 952 480 491 493 505 + Modeline "480x800" 12.43 480 512 552 584 800 818 822 841 + Modeline "800x480" 11.46 800 832 872 904 480 491 493 505 + #resolutions for android devices (both orientations) + #minus the status bar + #38px status bar (and width rounded up) + Modeline "800x1242" 25.03 800 832 920 952 1242 1271 1275 1305 + Modeline "1280x762" 22.93 1280 1312 1392 1424 762 780 783 801 + Modeline "720x1242" 29.20 720 752 856 888 1242 1271 1276 1305 + Modeline "1280x682" 25.85 1280 1312 1408 1440 682 698 701 717 + Modeline "768x986" 23.90 768 800 888 920 986 1009 1013 1036 + Modeline "1024x730" 22.50 1024 1056 1136 1168 730 747 750 767 + Modeline "600x986" 19.07 600 632 704 736 986 1009 1013 1036 + Modeline "1024x562" 17.03 1024 1056 1120 1152 562 575 578 591 + Modeline "536x922" 16.01 536 568 624 656 922 943 947 969 + Modeline "960x498" 14.09 960 992 1040 1072 498 509 511 523 + Modeline "600x762" 14.39 600 632 680 712 762 779 783 801 + Modeline "800x562" 13.52 800 832 880 912 562 575 578 591 + Modeline "480x810" 12.59 480 512 552 584 810 828 832 851 + Modeline "848x442" 11.09 848 880 920 952 442 452 454 465 + Modeline "480x762" 11.79 480 512 552 584 762 779 783 801 +EndSection + +Section "Screen" + Identifier "dummy_screen" + Device "dummy_videocard" + Monitor "dummy_monitor" + DefaultDepth 24 + SubSection "Display" + Viewport 0 0 + Depth 24 + #Modes "32768x32768" "32768x16384" "16384x8192" "8192x4096" "5120x3200" "3840x2880" "3840x2560" "3840x2048" "2048x2048" "2560x1600" "1920x1440" "1920x1200" "1920x1080" "1600x1200" "1680x1050" "1600x900" "1400x1050" "1440x900" "1280x1024" "1366x768" "1280x800" "1024x768" "1024x600" "800x600" "320x200" + Modes "5120x3200" "3840x2880" "3840x2560" "3840x2048" "2048x2048" "2560x1600" "1920x1440" "1920x1200" "1920x1080" "1600x1200" "1680x1050" "1600x900" "1400x1050" "1440x900" "1280x1024" "1366x768" "1280x800" "1024x768" "1024x600" "800x600" "320x200" + #Virtual 32000 32000 + #Virtual 16384 8192 + Virtual 8192 4096 + #Virtual 5120 3200 + EndSubSection +EndSection + +Section "ServerLayout" + Identifier "dummy_layout" + Screen "dummy_screen" + InputDevice "dummy_mouse" + InputDevice "dummy_keyboard" +EndSection diff --git a/SPECS/python-xlib.spec b/SPECS/python-xlib.spec new file mode 100644 index 0000000..1fad7e4 --- /dev/null +++ b/SPECS/python-xlib.spec @@ -0,0 +1,322 @@ +%if 0%{?fedora} >= 32 || 0%{?rhel} >= 8 +%bcond_with python2 +%else +%bcond_without python2 +%endif + +Name: python-xlib +Version: 0.33 +Release: 2%{?dist} +Summary: X client library for Python + +License: LGPLv2+ +URL: https://github.com/python-xlib/python-xlib +Source0: https://github.com/%{name}/%{name}/archive/%{version}/%{name}-%{version}.tar.gz +Source1: xorg.conf +# Use unittest.mock in py3.8+ +Patch0: python-xlib-mock.patch +# tests need to import tohex +# https://github.com/python-xlib/python-xlib/pull/75 +Patch1: python-xlib-tohex.patch +Patch2: fix-ssh-tunnel-auth +# Remove failing test +# https://github.com/python-xlib/python-xlib/issues/1 +Patch4: python-xlib-test.patch + +BuildArch: noarch +BuildRequires: make +BuildRequires: texinfo-tex +BuildRequires: tex(dvips) +# For tests +BuildRequires: xorg-x11-drv-dummy + +%description +The Python X Library is a complete X11R6 client-side implementation, +written in pure Python. It can be used to write low-levelish X Windows +client applications in Python. + +%if %{with python2} +%package -n python2-xlib +Summary: X client library for Python 2 +BuildRequires: python2-devel +BuildRequires: python2-setuptools +BuildRequires: python2-setuptools_scm +BuildRequires: python2-six >= 1.10.0 +BuildRequires: python2-tkinter +# For tests +BuildRequires: python2-mock +Requires: python2-six >= 1.10.0 +#Requires: python2-tkinter +%{?python_provide:%python_provide python2-xlib} + +%description -n python2-xlib +The Python X Library is a complete X11R6 client-side implementation, +written in pure Python. It can be used to write low-levelish X Windows +client applications in Python 2. +%endif + +%package -n python%{python3_pkgversion}-xlib +Summary: X client library for Python 3 +BuildRequires: python%{python3_pkgversion}-devel +BuildRequires: python%{python3_pkgversion}-setuptools +BuildRequires: python%{python3_pkgversion}-setuptools_scm +BuildRequires: python%{python3_pkgversion}-six >= 1.10.0 +BuildRequires: python%{python3_pkgversion}-tkinter +Requires: python%{python3_pkgversion}-six >= 1.10.0 +Suggests: python%{python3_pkgversion}-tkinter +%{?python_provide:%python_provide python%{python3_pkgversion}-xlib} + +%description -n python%{python3_pkgversion}-xlib +The Python X Library is a complete X11R6 client-side implementation, +written in pure Python. It can be used to write low-levelish X Windows +client applications in Python 3. + +%package doc +Summary: Documentation and examples for python-xlib +BuildRequires: texi2html + +%description doc +Install this package if you want the developers' documentation and examples +that tell you how to program with python-xlib. + +%prep +%autosetup -p1 + +%build +%if %{with python2} +%py2_build +%endif +%py3_build +cd doc +make html ps +cd html +rm Makefile + +%install +%if %{with python2} +%py2_install +%endif +%py3_install +chmod a-x examples/*.py + +%check +# Note - tests fail on big-endian, see https://github.com/python-xlib/python-xlib/issues/76 +cp %SOURCE1 . +if [ -x /usr/libexec/Xorg ]; then + Xorg=/usr/libexec/Xorg +elif [ -x /usr/libexec/Xorg.bin ]; then + Xorg=/usr/libexec/Xorg.bin +else + Xorg=/usr/bin/Xorg +fi +$Xorg -noreset +extension GLX +extension RANDR +extension RENDER -logfile ./xorg.log -config ./xorg.conf -configdir . :99 & +export DISPLAY=:99 +%if %{with python2} +%__python2 setup.py test || (cat xorg.log && exit 1) +%endif +%__python3 setup.py test || (cat xorg.log && exit 1) +kill %1 || : +cat xorg.log + +%if %{with python2} +%files -n python2-xlib +%license LICENSE +%doc CHANGELOG.md README.rst TODO +%{python2_sitelib}/* +%endif + +%files -n python%{python3_pkgversion}-xlib +%license LICENSE +%doc CHANGELOG.md README.rst TODO +%{python3_sitelib}/* + +%files doc +%license LICENSE +%doc examples doc/html doc/ps/python-xlib.ps + + +%changelog +* Fri Jul 12 2024 Arkady L. Shane - 0.33-2 +- Rebuilt for MSVSphere 8.10 + +* Fri Jan 20 2023 Fedora Release Engineering - 0.33-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Mon Jan 02 2023 Sérgio Basto - 0.33-1 +- Update python-xlib to 0.33 (#2156387) + +* Mon Nov 07 2022 Orion Poplawski - 0.32-1 +- Update to 0.32 + +* Fri Jul 22 2022 Fedora Release Engineering - 0.31-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Mon Jun 13 2022 Python Maint - 0.31-4 +- Rebuilt for Python 3.11 + +* Mon Apr 25 2022 Orion Poplawski - 0.31-3 +- Drop mock for python 3 + +* Fri Jan 21 2022 Fedora Release Engineering - 0.31-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Fri Jul 30 2021 Aleksei Bavshin - 0.31-1 +- Update to 0.31 + +* Tue Jul 27 2021 Fedora Release Engineering - 0.29-3 +- Second attempt - Rebuilt for + https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Fri Jun 04 2021 Python Maint - 0.29-2 +- Rebuilt for Python 3.10 + +* Sat Apr 10 2021 Artem Polishchuk - 0.29-1 +- Update to 0.29 + +* Wed Jan 27 2021 Fedora Release Engineering - 0.28-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Mon Oct 05 2020 Orion Poplawski - 0.28-2 +- Add BR on python-setuptools + +* Wed Sep 23 2020 Artem Polishchuk - 0.28-1 +- Update to 0.28 + +* Wed Jul 29 2020 Fedora Release Engineering - 0.26-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Tue May 26 2020 Miro Hrončok - 0.26-3 +- Rebuilt for Python 3.9 + +* Thu Jan 30 2020 Fedora Release Engineering - 0.26-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Wed Jan 08 2020 Artem Polishchuk - 0.26-1 +- Update to 0.26 + +* Tue Nov 26 2019 Orion Poplawski - 0.25-1 +- Update to 0.25 + +* Tue Oct 29 2019 Orion Poplawski - 0.23-8 +- Drop python2 for Fedora 32+ (bz#1764881) + +* Thu Oct 03 2019 Miro Hrončok - 0.23-7 +- Rebuilt for Python 3.8.0rc1 (#1748018) + +* Mon Aug 19 2019 Miro Hrončok - 0.23-6 +- Rebuilt for Python 3.8 + +* Fri Jul 26 2019 Fedora Release Engineering - 0.23-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Sat Feb 02 2019 Fedora Release Engineering - 0.23-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Sat Jul 14 2018 Fedora Release Engineering - 0.23-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Tue Jun 19 2018 Miro Hrončok - 0.23-2 +- Rebuilt for Python 3.7 + +* Fri Apr 13 2018 Orion Poplawski - 0.23-1 +- Update to 0.23 + +* Fri Apr 13 2018 Orion Poplawski - 0.20-4 +- Use Xdummy for tests, remove failing one. + +* Thu Apr 12 2018 Orion Poplawski - 0.20-3 +- Fix dvips BR + +* Fri Feb 09 2018 Fedora Release Engineering - 0.20-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Tue Nov 21 2017 Orion Poplawski - 0.20-1 +- Update to 0.20 + +* Thu Jul 27 2017 Fedora Release Engineering - 0.19-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Wed Mar 1 2017 Orion Poplawski - 0.19-2 +- Add patch to fix test error + +* Tue Feb 28 2017 Orion Poplawski - 0.19-1 +- Update to 0.19 +- Drop upstreamed patches + +* Sat Feb 11 2017 Fedora Release Engineering - 0.17-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Mon Dec 19 2016 Miro Hrončok - 0.17-2 +- Rebuild for Python 3.6 + +* Fri Sep 30 2016 Orion Poplawski - 0.17-1 +- Update to 0.17 +- License changed to LGPLv2+ +- Ship python3-xlib (bug #1360713) +- Modernize spec + +* Thu Feb 04 2016 Fedora Release Engineering - 0.15-0.12.rc1 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Fri Jun 19 2015 Orion Poplawski - 0.15-0.11.rc1 +- Add patch to fix perl usage + +* Thu Jun 18 2015 Fedora Release Engineering - 0.15-0.11.rc1 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Sun Jun 08 2014 Fedora Release Engineering - 0.15-0.10.rc1 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Sun Aug 04 2013 Fedora Release Engineering - 0.15-0.9.rc1 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Thu Feb 14 2013 Fedora Release Engineering - 0.15-0.8.rc1 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + +* Sat Jul 21 2012 Fedora Release Engineering - 0.15-0.7.rc1 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Sat Jan 14 2012 Fedora Release Engineering - 0.15-0.6.rc1 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Sat Jun 04 2011 Luke Macken - 0.15-0.5.rc1 +- Apply a couple of patches from upstream: + * r139 - Accept IPv6 addresses in Xlib.display.Display + * r138 - Remove a stray print statement + +* Wed Feb 09 2011 Fedora Release Engineering - 0.15-0.4.rc1 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Fri Sep 3 2010 Thomas Spura - 0.15-0.3.rc1 +- try a workaround proposed by upstream for #552491 + +* Thu Jul 22 2010 David Malcolm - 0.15-0.2.rc1 +- Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild + +* Mon Dec 14 2009 Jef Spaleta - 0.15-0.1.rc1 +- New upstream pre-release and some cherry picked patches from Debian from Fedora bug 537264 + +* Sun Jul 26 2009 Fedora Release Engineering - 0.14-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild + +* Thu Feb 26 2009 Fedora Release Engineering - 0.14-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild + +* Sat Nov 29 2008 Ignacio Vazquez-Abrams - 0.14-3 +- Rebuild for Python 2.6 + +* Wed Sep 3 2008 Tom "spot" Callaway - 0.14-2 +- fix license tag + +* Tue Jul 1 2008 Jef Spaleta - 0.14-1 +- Latest upstream release + +* Tue Apr 10 2007 Jef Spaleta - 0.13-3 +- Created doc subpackage per suggestion in review + +* Mon Mar 26 2007 Jef Spaleta - 0.13-2 +- Review Cleanup + +* Sat Mar 24 2007 Jef Spaleta - 0.13-1 +- Initial packaging +