14
0

Accepting request 1034202 from home:pgajdos:python

- do not require python-six
- added patches
  fix 28dddd6f45
  + python-iniparse-no-python2.patch
  fix b3684a45d0
  + python-iniparse-no-six.patch

OBS-URL: https://build.opensuse.org/request/show/1034202
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-iniparse?expand=0&rev=35
This commit is contained in:
2022-11-07 14:29:53 +00:00
committed by Git OBS Bridge
parent 3c6bb32708
commit b51b80e66e
4 changed files with 267 additions and 4 deletions

View File

@@ -0,0 +1,66 @@
diff --git a/iniparse/configparser.py b/iniparse/configparser.py
index c543d50..e39fe63 100644
--- a/iniparse/configparser.py
+++ b/iniparse/configparser.py
@@ -1,7 +1,2 @@
-try:
- from ConfigParser import *
- # not all objects get imported with __all__
- from ConfigParser import Error, InterpolationMissingOptionError
-except ImportError:
- from configparser import *
- from configparser import Error, InterpolationMissingOptionError
+from configparser import *
+from configparser import Error, InterpolationMissingOptionError
diff --git a/runtests.py b/runtests.py
index 53a723d..1619714 100755
--- a/runtests.py
+++ b/runtests.py
@@ -1,12 +1,8 @@
#!/usr/bin/env python
-import sys
import tests
+
if __name__ == '__main__':
- if len(sys.argv) == 2 and sys.argv[1] == '-g':
- import unittestgui
- unittestgui.main('tests.Suite')
- else:
- import unittest
- unittest.main(defaultTest='tests.Suite')
+ import unittest
+ unittest.main(defaultTest='tests.Suite')
diff --git a/tests/test_compat.py b/tests/test_compat.py
index 253ac40..8d7c785 100644
--- a/tests/test_compat.py
+++ b/tests/test_compat.py
@@ -6,11 +6,7 @@
import collections as UserDict
import unittest
-import sys
-if sys.version_info[0] < 3:
- from test import test_support
-else:
- from test import support as test_support
+from test import support as test_support
class SortedDict(UserDict.UserDict):
@@ -264,13 +260,6 @@ class mystr(str):
cf.set("sect", "option1", mystr("splat"))
cf.set("sect", "option2", "splat")
cf.set("sect", "option2", mystr("splat"))
- try:
- unicode
- except NameError:
- pass
- else:
- cf.set("sect", "option1", unicode("splat"))
- cf.set("sect", "option2", unicode("splat"))
def test_read_returns_file_list(self):
file1 = test_support.findfile("cfgparser.1")

View File

@@ -0,0 +1,181 @@
Index: iniparse-0.5/iniparse/compat.py
===================================================================
--- iniparse-0.5.orig/iniparse/compat.py
+++ iniparse-0.5/iniparse/compat.py
@@ -24,8 +24,6 @@ from .configparser import DuplicateSecti
from .configparser import Error, InterpolationError, \
MissingSectionHeaderError, ParsingError
-import six
-
from . import ini
@@ -91,7 +89,7 @@ class RawConfigParser(object):
filename may also be given.
"""
files_read = []
- if isinstance(filenames, six.string_types):
+ if isinstance(filenames, str):
filenames = [filenames]
for filename in filenames:
try:
@@ -284,7 +282,7 @@ class SafeConfigParser(ConfigParser):
_badpercent_re = re.compile(r"%[^%]|%$")
def set(self, section, option, value):
- if not isinstance(value, six.string_types):
+ if not isinstance(value, str):
raise TypeError("option values must be strings")
# check for bad percent signs:
# first, replace all "good" interpolations
Index: iniparse-0.5/iniparse/config.py
===================================================================
--- iniparse-0.5.orig/iniparse/config.py
+++ iniparse-0.5/iniparse/config.py
@@ -161,7 +161,7 @@ class BasicConfig(ConfigNamespace):
Finally, values can be read from a file as follows:
- >>> from six import StringIO
+ >>> from io import StringIO
>>> sio = StringIO('''
... # comment
... ui.height = 100
Index: iniparse-0.5/iniparse/ini.py
===================================================================
--- iniparse-0.5.orig/iniparse/ini.py
+++ iniparse-0.5/iniparse/ini.py
@@ -7,7 +7,7 @@
Example:
- >>> from six import StringIO
+ >>> from io import StringIO
>>> sio = StringIO('''# configure foo-application
... [foo]
... bar1 = qualia
@@ -44,8 +44,6 @@ Example:
import re
from .configparser import DEFAULTSECT, ParsingError, MissingSectionHeaderError
-import six
-
from . import config
@@ -569,7 +567,7 @@ class INIConfig(config.ConfigNamespace):
for line in readline_iterator(fp):
# Check for BOM on first line
- if line_count == 0 and isinstance(line, six.text_type):
+ if line_count == 0 and isinstance(line, str):
if line[0] == u'\ufeff':
line = line[1:]
self._bom = True
Index: iniparse-0.5/setup.py
===================================================================
--- iniparse-0.5.orig/setup.py
+++ iniparse-0.5/setup.py
@@ -33,7 +33,6 @@ use.''',
'Topic :: Software Development :: Libraries :: Python Modules',
],
packages = ['iniparse'],
- install_requires=['six'],
data_files = [
('share/doc/iniparse-%s' % VERSION, ['README.md', 'LICENSE-PSF',
'LICENSE', 'Changelog',
Index: iniparse-0.5/tests/test_compat.py
===================================================================
--- iniparse-0.5.orig/tests/test_compat.py
+++ iniparse-0.5/tests/test_compat.py
@@ -1,5 +1,5 @@
from iniparse import compat as ConfigParser
-from six import StringIO
+from io import StringIO
try:
import UserDict
except ImportError:
Index: iniparse-0.5/tests/test_fuzz.py
===================================================================
--- iniparse-0.5.orig/tests/test_fuzz.py
+++ iniparse-0.5/tests/test_fuzz.py
@@ -3,8 +3,8 @@ import os
import random
import sys
import unittest
-from six import StringIO
-from six.moves import configparser
+from io import StringIO
+import configparser
from iniparse import compat, ini, tidy
# TODO:
Index: iniparse-0.5/tests/test_ini.py
===================================================================
--- iniparse-0.5.orig/tests/test_ini.py
+++ iniparse-0.5/tests/test_ini.py
@@ -1,5 +1,5 @@
import unittest
-from six import StringIO
+from io import StringIO
from iniparse import ini
from iniparse import compat
Index: iniparse-0.5/tests/test_misc.py
===================================================================
--- iniparse-0.5.orig/tests/test_misc.py
+++ iniparse-0.5/tests/test_misc.py
@@ -1,8 +1,8 @@
import re
import unittest
import pickle
-from six.moves import configparser
-from six import StringIO
+import configparser
+from io import StringIO
from textwrap import dedent
from iniparse import compat, ini
Index: iniparse-0.5/tests/test_tidy.py
===================================================================
--- iniparse-0.5.orig/tests/test_tidy.py
+++ iniparse-0.5/tests/test_tidy.py
@@ -1,6 +1,6 @@
import unittest
from textwrap import dedent
-from six import StringIO
+from io import StringIO
from iniparse import tidy, INIConfig
from iniparse.compat import ConfigParser
Index: iniparse-0.5/tests/test_unicode.py
===================================================================
--- iniparse-0.5.orig/tests/test_unicode.py
+++ iniparse-0.5/tests/test_unicode.py
@@ -1,5 +1,5 @@
import unittest
-import six
+from io import StringIO
from iniparse import ini
@@ -18,14 +18,14 @@ baz = Marc-Andr\202
"""
def basic_tests(self, s, strable):
- f = six.StringIO(s)
+ f = StringIO(s)
i = ini.INIConfig(f)
- self.assertEqual(six.text_type(i), s)
- self.assertEqual(type(i.foo.bar), six.text_type)
+ self.assertEqual(str(i), s)
+ self.assertEqual(type(i.foo.bar), str)
if strable:
self.assertEqual(str(i), str(s))
else:
- self.assertRaises(UnicodeEncodeError, lambda: six.text_type(i).encode('ascii'))
+ self.assertRaises(UnicodeEncodeError, lambda: str(i).encode('ascii'))
return i
def test_ascii(self):

View File

@@ -1,3 +1,13 @@
-------------------------------------------------------------------
Mon Nov 7 13:24:14 UTC 2022 - pgajdos@suse.com
- do not require python-six
- added patches
fix https://github.com/candlepin/python-iniparse/commit/28dddd6f45fb5928d1477d14fac5daca92ffbb4c
+ python-iniparse-no-python2.patch
fix https://github.com/candlepin/python-iniparse/commit/b3684a45d02af784d3d8f6ea680a351b38a865dc
+ python-iniparse-no-six.patch
-------------------------------------------------------------------
Wed Mar 2 14:26:46 UTC 2022 - Matej Cepl <mcepl@suse.com>

View File

@@ -17,7 +17,6 @@
#
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-iniparse
Version: 0.5
Release: 0
@@ -28,14 +27,17 @@ URL: https://github.com/candlepin/python-iniparse
Source: https://files.pythonhosted.org/packages/source/i/iniparse/iniparse-%{version}.tar.gz
# PATCH-FIX-UPSTREAM: speilicke@suse.com -- Backport of https://code.google.com/p/iniparse/issues/detail?id=31
Patch0: iniparse-insert-after-commented-option.patch
# https://github.com/candlepin/python-iniparse/commit/28dddd6f45fb5928d1477d14fac5daca92ffbb4c
Patch1: python-iniparse-no-python2.patch
# https://github.com/candlepin/python-iniparse/commit/b3684a45d02af784d3d8f6ea680a351b38a865dc
Patch2: python-iniparse-no-six.patch
BuildRequires: %{python_module setuptools}
BuildRequires: %{python_module six}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
# python2-devel contains test module, even for noarch package
BuildRequires: %{python_module devel}
# tests require testsuite modules
BuildRequires: %{python_module testsuite}
Requires: python-six
BuildArch: noarch
%python_subpackages
@@ -48,6 +50,8 @@ are preserved when data is updated), and is more convenient to use.
%prep
%setup -q -n iniparse-%{version}
%patch0
%patch1 -p1
%patch2 -p1
chmod 644 html/index.html
sed -i "/.*test_multiprocessing.*/d" tests/__init__.py # NOTE(saschpe): Doesn't work and I'm lazy
@@ -58,6 +62,7 @@ sed -i "/.*test_multiprocessing.*/d" tests/__init__.py # NOTE(saschpe): Doesn't
%install
%python_install
rm -rf %{buildroot}%{_datadir}/doc/iniparse-%{version} # Remove unwanted stuff
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%check
%python_exec runtests.py -v
@@ -65,6 +70,7 @@ rm -rf %{buildroot}%{_datadir}/doc/iniparse-%{version} # Remove unwanted stuff
%files %{python_files}
%license LICENSE
%doc Changelog LICENSE-PSF README.md html/*
%{python_sitelib}/*
%{python_sitelib}/iniparse
%{python_sitelib}/iniparse-*.egg-info
%changelog