|
From: <mi...@us...> - 2019-08-27 12:11:17
|
Revision: 8372
http://sourceforge.net/p/docutils/code/8372
Author: milde
Date: 2019-08-27 12:11:15 +0000 (Tue, 27 Aug 2019)
Log Message:
-----------
py3: Wrap 'foo.keys()', 'zip(foo, bar') in 'list'
In Python 3, 'dict.keys()', 'zip' and 'map' no longer return a list but
rather types 'dict_keys', 'zip' and 'map', respectively. You can't
append to these types nor can you delete from them while in a loop. The
simple solution to both issues is to wrap things in 'list'.
Signed-off-by: Stephen Finucane <st...@th...>
Modified Paths:
--------------
trunk/docutils/docutils/parsers/rst/tableparser.py
trunk/docutils/docutils/statemachine.py
trunk/docutils/docutils/utils/__init__.py
trunk/docutils/docutils/utils/math/math2html.py
trunk/docutils/docutils/writers/odf_odt/__init__.py
trunk/docutils/test/DocutilsTestSupport.py
trunk/docutils/test/test_functional.py
trunk/docutils/test/test_language.py
trunk/docutils/test/test_statemachine.py
Modified: trunk/docutils/docutils/parsers/rst/tableparser.py
===================================================================
--- trunk/docutils/docutils/parsers/rst/tableparser.py 2019-08-27 12:10:52 UTC (rev 8371)
+++ trunk/docutils/docutils/parsers/rst/tableparser.py 2019-08-27 12:11:15 UTC (rev 8372)
@@ -290,7 +290,7 @@
rowindex = {}
for i in range(len(rowseps)):
rowindex[rowseps[i]] = i # row boundary -> row number mapping
- colseps = self.colseps.keys() # list of column boundaries
+ colseps = list(self.colseps.keys()) # list of column boundaries
colseps.sort()
colindex = {}
for i in range(len(colseps)):
Modified: trunk/docutils/docutils/statemachine.py
===================================================================
--- trunk/docutils/docutils/statemachine.py 2019-08-27 12:10:52 UTC (rev 8371)
+++ trunk/docutils/docutils/statemachine.py 2019-08-27 12:11:15 UTC (rev 8372)
@@ -1297,7 +1297,7 @@
self.parent = None
def sort(self, *args):
- tmp = zip(self.data, self.items)
+ tmp = list(zip(self.data, self.items))
tmp.sort(*args)
self.data = [entry[0] for entry in tmp]
self.items = [entry[1] for entry in tmp]
Modified: trunk/docutils/docutils/utils/__init__.py
===================================================================
--- trunk/docutils/docutils/utils/__init__.py 2019-08-27 12:10:52 UTC (rev 8371)
+++ trunk/docutils/docutils/utils/__init__.py 2019-08-27 12:11:15 UTC (rev 8372)
@@ -618,7 +618,7 @@
"""
# TODO: account for asian wide chars here instead of using dummy
# replacements in the tableparser?
- string_indices = range(len(text))
+ string_indices = list(range(len(text)))
for index in find_combining_chars(text):
string_indices[index] = None
return [i for i in string_indices if i is not None]
Modified: trunk/docutils/docutils/utils/math/math2html.py
===================================================================
--- trunk/docutils/docutils/utils/math/math2html.py 2019-08-27 12:10:52 UTC (rev 8371)
+++ trunk/docutils/docutils/utils/math/math2html.py 2019-08-27 12:11:15 UTC (rev 8372)
@@ -2819,7 +2819,7 @@
def innertext(self, pos):
"Parse some text inside the bracket, following textual rules."
- specialchars = FormulaConfig.symbolfunctions.keys()
+ specialchars = list(FormulaConfig.symbolfunctions.keys())
specialchars.append(FormulaConfig.starts['command'])
specialchars.append(FormulaConfig.starts['bracket'])
specialchars.append(Comment.start)
Modified: trunk/docutils/docutils/writers/odf_odt/__init__.py
===================================================================
--- trunk/docutils/docutils/writers/odf_odt/__init__.py 2019-08-27 12:10:52 UTC (rev 8371)
+++ trunk/docutils/docutils/writers/odf_odt/__init__.py 2019-08-27 12:11:15 UTC (rev 8372)
@@ -1117,8 +1117,7 @@
fin = os.popen("paperconf -s 2> /dev/null")
content = fin.read()
content = content.split()
- content = map(float, content)
- content = list(content)
+ content = list(map(float, content))
w, h = content
except (IOError, ValueError):
w, h = 612, 792 # default to Letter
Modified: trunk/docutils/test/DocutilsTestSupport.py
===================================================================
--- trunk/docutils/test/DocutilsTestSupport.py 2019-08-27 12:10:52 UTC (rev 8371)
+++ trunk/docutils/test/DocutilsTestSupport.py 2019-08-27 12:11:15 UTC (rev 8372)
@@ -811,7 +811,7 @@
parts['html_prolog'] = parts['html_prolog'].replace(
self.standard_html_prolog, '')
# remove empty values:
- for key in parts.keys():
+ for key in list(parts.keys()):
if not parts[key]:
del parts[key]
# standard output format:
Modified: trunk/docutils/test/test_functional.py
===================================================================
--- trunk/docutils/test/test_functional.py 2019-08-27 12:10:52 UTC (rev 8371)
+++ trunk/docutils/test/test_functional.py 2019-08-27 12:11:15 UTC (rev 8372)
@@ -154,7 +154,7 @@
del params['test_source']
del params['test_destination']
# Delete private stuff like params['__builtins__']:
- for key in params.keys():
+ for key in list(params.keys()):
if key.startswith('_'):
del params[key]
# Get output (automatically written to the output/ directory
Modified: trunk/docutils/test/test_language.py
===================================================================
--- trunk/docutils/test/test_language.py 2019-08-27 12:10:52 UTC (rev 8371)
+++ trunk/docutils/test/test_language.py 2019-08-27 12:11:15 UTC (rev 8372)
@@ -52,7 +52,7 @@
match = self.language_module_pattern.match(mod)
if match:
languages[match.group(1)] = 1
- self.languages = languages.keys()
+ self.languages = list(languages.keys())
# test language tag normalization:
self.languages += ['en_gb', 'en_US', 'en-CA', 'de-DE', 'de-AT-1901',
'pt-BR', 'pt-foo-BR']
Modified: trunk/docutils/test/test_statemachine.py
===================================================================
--- trunk/docutils/test/test_statemachine.py 2019-08-27 12:10:52 UTC (rev 8371)
+++ trunk/docutils/test/test_statemachine.py 2019-08-27 12:11:15 UTC (rev 8372)
@@ -152,7 +152,7 @@
self.sm.unlink()
def test___init__(self):
- self.assertEqual(self.sm.states.keys(), ['MockState'])
+ self.assertEqual(list(self.sm.states.keys()), ['MockState'])
self.assertEqual(len(self.sm.states['MockState'].transitions), 4)
def test_get_indented(self):
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|