Sync from SUSE:SLFO:Main python-docutils revision 6d592406be79ba8aff54969b13a7be76
This commit is contained in:
parent
a6ef9293b1
commit
d5d9187017
BIN
docutils-0.19.tar.gz
(Stored with Git LFS)
BIN
docutils-0.19.tar.gz
(Stored with Git LFS)
Binary file not shown.
BIN
docutils-0.20.1.tar.gz
(Stored with Git LFS)
Normal file
BIN
docutils-0.20.1.tar.gz
(Stored with Git LFS)
Normal file
Binary file not shown.
@ -1,676 +0,0 @@
|
|||||||
Index: docutils-0.19/test/test_parsers/test_rst/test_directives/test_code.py
|
|
||||||
===================================================================
|
|
||||||
--- docutils-0.19.orig/test/test_parsers/test_rst/test_directives/test_code.py
|
|
||||||
+++ docutils-0.19/test/test_parsers/test_rst/test_directives/test_code.py
|
|
||||||
@@ -10,14 +10,20 @@ Test the 'code' directive in parsers/rst
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
|
||||||
import __init__ # noqa: F401
|
|
||||||
+from packaging.version import Version
|
|
||||||
from test_parsers import DocutilsTestSupport
|
|
||||||
-from docutils.utils.code_analyzer import with_pygments
|
|
||||||
+from docutils.utils.code_analyzer import with_pygments, pygments_version
|
|
||||||
|
|
||||||
|
|
||||||
def suite():
|
|
||||||
s = DocutilsTestSupport.ParserTestSuite()
|
|
||||||
if not with_pygments:
|
|
||||||
del(totest['code-parsing'])
|
|
||||||
+ del(totest['code-parsing-2-14'])
|
|
||||||
+ elif pygments_version >= Version('2.14.0'):
|
|
||||||
+ del(totest['code-parsing'])
|
|
||||||
+ else:
|
|
||||||
+ del(totest['code-parsing-2-14'])
|
|
||||||
s.generateTests(totest)
|
|
||||||
return s
|
|
||||||
|
|
||||||
@@ -170,6 +176,165 @@ totest['code-parsing'] = [
|
|
||||||
\n\
|
|
||||||
<inline classes="name builtin">
|
|
||||||
print
|
|
||||||
+ <inline classes="punctuation">
|
|
||||||
+ (
|
|
||||||
+ <inline classes="literal number integer">
|
|
||||||
+ 8
|
|
||||||
+ <inline classes="operator">
|
|
||||||
+ /
|
|
||||||
+ <inline classes="literal number integer">
|
|
||||||
+ 2
|
|
||||||
+ <inline classes="punctuation">
|
|
||||||
+ )
|
|
||||||
+"""],
|
|
||||||
+["""\
|
|
||||||
+.. code:: latex
|
|
||||||
+ :class: testclass
|
|
||||||
+
|
|
||||||
+ hello \\emph{world} % emphasize
|
|
||||||
+""",
|
|
||||||
+"""\
|
|
||||||
+<document source="test data">
|
|
||||||
+ <literal_block classes="code latex testclass" xml:space="preserve">
|
|
||||||
+ hello \n\
|
|
||||||
+ <inline classes="keyword">
|
|
||||||
+ \\emph
|
|
||||||
+ <inline classes="name builtin">
|
|
||||||
+ {
|
|
||||||
+ world
|
|
||||||
+ <inline classes="name builtin">
|
|
||||||
+ }
|
|
||||||
+ \n\
|
|
||||||
+ <inline classes="comment">
|
|
||||||
+ % emphasize"""],
|
|
||||||
+["""\
|
|
||||||
+.. code:: rst
|
|
||||||
+ :number-lines:
|
|
||||||
+
|
|
||||||
+ This is a code block with text.
|
|
||||||
+""",
|
|
||||||
+"""\
|
|
||||||
+<document source="test data">
|
|
||||||
+ <literal_block classes="code rst" xml:space="preserve">
|
|
||||||
+ <inline classes="ln">
|
|
||||||
+ 1 \n\
|
|
||||||
+ This is a code block with text.
|
|
||||||
+"""],
|
|
||||||
+["""\
|
|
||||||
+Code not parsed but warning silenced in ParserTestCase.
|
|
||||||
+
|
|
||||||
+.. code:: s-lang
|
|
||||||
+
|
|
||||||
+ % abc.sl
|
|
||||||
+ autoload("abc_mode", "abc");
|
|
||||||
+""",
|
|
||||||
+"""\
|
|
||||||
+<document source="test data">
|
|
||||||
+ <paragraph>
|
|
||||||
+ Code not parsed but warning silenced in ParserTestCase.
|
|
||||||
+ <literal_block classes="code s-lang" xml:space="preserve">
|
|
||||||
+ % abc.sl
|
|
||||||
+ autoload("abc_mode", "abc");
|
|
||||||
+"""],
|
|
||||||
+["""\
|
|
||||||
+Place the language name in a class argument to avoid the no-lexer warning:
|
|
||||||
+
|
|
||||||
+.. code::
|
|
||||||
+ :class: s-lang
|
|
||||||
+
|
|
||||||
+ % abc.sl
|
|
||||||
+ autoload("abc_mode", "abc");
|
|
||||||
+""",
|
|
||||||
+"""\
|
|
||||||
+<document source="test data">
|
|
||||||
+ <paragraph>
|
|
||||||
+ Place the language name in a class argument to avoid the no-lexer warning:
|
|
||||||
+ <literal_block classes="code s-lang" xml:space="preserve">
|
|
||||||
+ % abc.sl
|
|
||||||
+ autoload("abc_mode", "abc");
|
|
||||||
+"""],
|
|
||||||
+]
|
|
||||||
+
|
|
||||||
+totest['code-parsing-2-14'] = [
|
|
||||||
+["""\
|
|
||||||
+.. code:: python3
|
|
||||||
+ :class: testclass
|
|
||||||
+
|
|
||||||
+ print('hello world') # to stdout
|
|
||||||
+""",
|
|
||||||
+"""\
|
|
||||||
+<document source="test data">
|
|
||||||
+ <literal_block classes="code python3 testclass" xml:space="preserve">
|
|
||||||
+ \n\
|
|
||||||
+ <inline classes="name builtin">
|
|
||||||
+ print
|
|
||||||
+ <inline classes="punctuation">
|
|
||||||
+ (
|
|
||||||
+ <inline classes="literal string single">
|
|
||||||
+ 'hello world'
|
|
||||||
+ <inline classes="punctuation">
|
|
||||||
+ )
|
|
||||||
+ \n\
|
|
||||||
+ <inline classes="comment single">
|
|
||||||
+ # to stdout
|
|
||||||
+"""],
|
|
||||||
+["""\
|
|
||||||
+.. code:: python3
|
|
||||||
+ :class: testclass
|
|
||||||
+ :name: my_function
|
|
||||||
+ :number-lines: 7
|
|
||||||
+
|
|
||||||
+ def my_function():
|
|
||||||
+ '''Test the lexer.
|
|
||||||
+ '''
|
|
||||||
+
|
|
||||||
+ # and now for something completely different
|
|
||||||
+ print(8/2)
|
|
||||||
+""",
|
|
||||||
+"""\
|
|
||||||
+<document source="test data">
|
|
||||||
+ <literal_block classes="code python3 testclass" ids="my-function" names="my_function" xml:space="preserve">
|
|
||||||
+ <inline classes="ln">
|
|
||||||
+ 7 \n\
|
|
||||||
+ <inline classes="keyword">
|
|
||||||
+ def
|
|
||||||
+ \n\
|
|
||||||
+ <inline classes="name function">
|
|
||||||
+ my_function
|
|
||||||
+ <inline classes="punctuation">
|
|
||||||
+ ():
|
|
||||||
+ <inline classes="whitespace">
|
|
||||||
+ \n\
|
|
||||||
+ <inline classes="ln">
|
|
||||||
+ 8 \n\
|
|
||||||
+ <inline classes="whitespace">
|
|
||||||
+ \n\
|
|
||||||
+ <inline classes="literal string doc">
|
|
||||||
+ \'\'\'Test the lexer.
|
|
||||||
+ <inline classes="ln">
|
|
||||||
+ 9 \n\
|
|
||||||
+ <inline classes="literal string doc">
|
|
||||||
+ \'\'\'
|
|
||||||
+ <inline classes="whitespace">
|
|
||||||
+ \n\
|
|
||||||
+ <inline classes="ln">
|
|
||||||
+ 10 \n\
|
|
||||||
+ <inline classes="whitespace">
|
|
||||||
+ \n\
|
|
||||||
+ <inline classes="ln">
|
|
||||||
+ 11 \n\
|
|
||||||
+ <inline classes="whitespace">
|
|
||||||
+ \n\
|
|
||||||
+ <inline classes="comment single">
|
|
||||||
+ # and now for something completely different
|
|
||||||
+ <inline classes="whitespace">
|
|
||||||
+ \n\
|
|
||||||
+ <inline classes="ln">
|
|
||||||
+ 12 \n\
|
|
||||||
+ <inline classes="whitespace">
|
|
||||||
+ \n\
|
|
||||||
+ <inline classes="name builtin">
|
|
||||||
+ print
|
|
||||||
<inline classes="punctuation">
|
|
||||||
(
|
|
||||||
<inline classes="literal number integer">
|
|
||||||
Index: docutils-0.19/test/test_parsers/test_rst/test_directives/test_code_long.py
|
|
||||||
===================================================================
|
|
||||||
--- docutils-0.19.orig/test/test_parsers/test_rst/test_directives/test_code_long.py
|
|
||||||
+++ docutils-0.19/test/test_parsers/test_rst/test_directives/test_code_long.py
|
|
||||||
@@ -10,15 +10,22 @@ Test the 'code' directive in body.py wit
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
|
||||||
import __init__ # noqa: F401
|
|
||||||
+from packaging.version import Version
|
|
||||||
from test_parsers import DocutilsTestSupport
|
|
||||||
-from docutils.utils.code_analyzer import with_pygments
|
|
||||||
+from docutils.utils.code_analyzer import with_pygments, pygments_version
|
|
||||||
|
|
||||||
|
|
||||||
def suite():
|
|
||||||
settings = {'syntax_highlight': 'long'}
|
|
||||||
s = DocutilsTestSupport.ParserTestSuite(suite_settings=settings)
|
|
||||||
if with_pygments:
|
|
||||||
+ if pygments_version >= Version('2.14.0'):
|
|
||||||
+ del(totest['code-parsing-long'])
|
|
||||||
+ else:
|
|
||||||
+ del(totest['code-parsing-long-2-14'])
|
|
||||||
+
|
|
||||||
s.generateTests(totest)
|
|
||||||
+
|
|
||||||
return s
|
|
||||||
|
|
||||||
|
|
||||||
@@ -73,6 +80,94 @@ totest['code-parsing-long'] = [
|
|
||||||
\n\
|
|
||||||
<inline classes="name builtin">
|
|
||||||
print
|
|
||||||
+ <inline classes="punctuation">
|
|
||||||
+ (
|
|
||||||
+ <inline classes="literal number integer">
|
|
||||||
+ 8
|
|
||||||
+ <inline classes="operator">
|
|
||||||
+ /
|
|
||||||
+ <inline classes="literal number integer">
|
|
||||||
+ 2
|
|
||||||
+ <inline classes="punctuation">
|
|
||||||
+ )
|
|
||||||
+"""],
|
|
||||||
+["""\
|
|
||||||
+.. code:: latex
|
|
||||||
+
|
|
||||||
+ hello \\emph{world} % emphasize
|
|
||||||
+""",
|
|
||||||
+"""\
|
|
||||||
+<document source="test data">
|
|
||||||
+ <literal_block classes="code latex" xml:space="preserve">
|
|
||||||
+ hello \n\
|
|
||||||
+ <inline classes="keyword">
|
|
||||||
+ \\emph
|
|
||||||
+ <inline classes="name builtin">
|
|
||||||
+ {
|
|
||||||
+ world
|
|
||||||
+ <inline classes="name builtin">
|
|
||||||
+ }
|
|
||||||
+ \n\
|
|
||||||
+ <inline classes="comment">
|
|
||||||
+ % emphasize"""],
|
|
||||||
+]
|
|
||||||
+
|
|
||||||
+totest['code-parsing-long-2-14'] = [
|
|
||||||
+["""\
|
|
||||||
+.. code:: python3
|
|
||||||
+ :number-lines: 7
|
|
||||||
+
|
|
||||||
+ def my_function():
|
|
||||||
+ '''Test the lexer.
|
|
||||||
+ '''
|
|
||||||
+
|
|
||||||
+ # and now for something completely different
|
|
||||||
+ print(8/2)
|
|
||||||
+""",
|
|
||||||
+"""\
|
|
||||||
+<document source="test data">
|
|
||||||
+ <literal_block classes="code python3" xml:space="preserve">
|
|
||||||
+ <inline classes="ln">
|
|
||||||
+ 7 \n\
|
|
||||||
+ <inline classes="keyword">
|
|
||||||
+ def
|
|
||||||
+ \n\
|
|
||||||
+ <inline classes="name function">
|
|
||||||
+ my_function
|
|
||||||
+ <inline classes="punctuation">
|
|
||||||
+ ():
|
|
||||||
+ <inline classes="whitespace">
|
|
||||||
+ \n\
|
|
||||||
+ <inline classes="ln">
|
|
||||||
+ 8 \n\
|
|
||||||
+ <inline classes="whitespace">
|
|
||||||
+ \n\
|
|
||||||
+ <inline classes="literal string doc">
|
|
||||||
+ \'\'\'Test the lexer.
|
|
||||||
+ <inline classes="ln">
|
|
||||||
+ 9 \n\
|
|
||||||
+ <inline classes="literal string doc">
|
|
||||||
+ \'\'\'
|
|
||||||
+ <inline classes="whitespace">
|
|
||||||
+ \n\
|
|
||||||
+ <inline classes="ln">
|
|
||||||
+ 10 \n\
|
|
||||||
+ <inline classes="whitespace">
|
|
||||||
+ \n\
|
|
||||||
+ <inline classes="ln">
|
|
||||||
+ 11 \n\
|
|
||||||
+ <inline classes="whitespace">
|
|
||||||
+ \n\
|
|
||||||
+ <inline classes="comment single">
|
|
||||||
+ # and now for something completely different
|
|
||||||
+ <inline classes="whitespace">
|
|
||||||
+ \n\
|
|
||||||
+ <inline classes="ln">
|
|
||||||
+ 12 \n\
|
|
||||||
+ <inline classes="whitespace">
|
|
||||||
+ \n\
|
|
||||||
+ <inline classes="name builtin">
|
|
||||||
+ print
|
|
||||||
<inline classes="punctuation">
|
|
||||||
(
|
|
||||||
<inline classes="literal number integer">
|
|
||||||
Index: docutils-0.19/test/test_parsers/test_rst/test_directives/test_include.py
|
|
||||||
===================================================================
|
|
||||||
--- docutils-0.19.orig/test/test_parsers/test_rst/test_directives/test_include.py
|
|
||||||
+++ docutils-0.19/test/test_parsers/test_rst/test_directives/test_include.py
|
|
||||||
@@ -10,9 +10,10 @@ Tests for misc.py "include" directive.
|
|
||||||
import os.path
|
|
||||||
if __name__ == '__main__':
|
|
||||||
import __init__ # noqa: F401
|
|
||||||
+from packaging.version import Version
|
|
||||||
from test_parsers import DocutilsTestSupport
|
|
||||||
from docutils import parsers
|
|
||||||
-from docutils.utils.code_analyzer import with_pygments
|
|
||||||
+from docutils.utils.code_analyzer import with_pygments, pygments_version
|
|
||||||
|
|
||||||
# optional 3rd-party markdown parser
|
|
||||||
md_parser_name = 'recommonmark'
|
|
||||||
@@ -27,6 +28,11 @@ def suite():
|
|
||||||
# eventually skip optional parts:
|
|
||||||
if not with_pygments:
|
|
||||||
del(totest['include-code'])
|
|
||||||
+ del(totest['include-code-2-14'])
|
|
||||||
+ elif pygments_version >= Version('2.14.0'):
|
|
||||||
+ del(totest['include-code'])
|
|
||||||
+ else:
|
|
||||||
+ del(totest['include-code-2-14'])
|
|
||||||
if not md_parser_class:
|
|
||||||
del(totest['include-markdown'])
|
|
||||||
s.generateTests(totest)
|
|
||||||
@@ -1191,6 +1197,313 @@ Including includes/include14.txt
|
|
||||||
<inline classes="punctuation">
|
|
||||||
..
|
|
||||||
\n\
|
|
||||||
+ <inline classes="operator word">
|
|
||||||
+ include
|
|
||||||
+ <inline classes="punctuation">
|
|
||||||
+ ::
|
|
||||||
+ ../sibling/include7.txt
|
|
||||||
+""" % reldir(include6)],
|
|
||||||
+["""\
|
|
||||||
+Circular inclusion
|
|
||||||
+
|
|
||||||
+.. include:: %s
|
|
||||||
+""" % include15,
|
|
||||||
+"""\
|
|
||||||
+<document source="test data">
|
|
||||||
+ <paragraph>
|
|
||||||
+ Circular inclusion
|
|
||||||
+ <paragraph>
|
|
||||||
+ File "include15.txt": example of rekursive inclusion.
|
|
||||||
+ <paragraph>
|
|
||||||
+ File "include16.txt": example of rekursive inclusion.
|
|
||||||
+ <system_message level="2" line="3" source="%s" type="WARNING">
|
|
||||||
+ <paragraph>
|
|
||||||
+ circular inclusion in "include" directive:
|
|
||||||
+ %s
|
|
||||||
+ > %s
|
|
||||||
+ > %s
|
|
||||||
+ > test data
|
|
||||||
+ <literal_block xml:space="preserve">
|
|
||||||
+ .. include:: include15.txt
|
|
||||||
+ <paragraph>
|
|
||||||
+ No loop when clipping before the "include" directive:
|
|
||||||
+ <paragraph>
|
|
||||||
+ File "include15.txt": example of rekursive inclusion.
|
|
||||||
+""" % (reldir(include16), reldir(include15),
|
|
||||||
+ reldir(include16), reldir(include15))],
|
|
||||||
+["""\
|
|
||||||
+Circular inclusion with clipping.
|
|
||||||
+
|
|
||||||
+.. include:: %s
|
|
||||||
+ :start-line: 2
|
|
||||||
+""" % include16,
|
|
||||||
+"""\
|
|
||||||
+<document source="test data">
|
|
||||||
+ <paragraph>
|
|
||||||
+ Circular inclusion with clipping.
|
|
||||||
+ <paragraph>
|
|
||||||
+ File "include15.txt": example of rekursive inclusion.
|
|
||||||
+ <paragraph>
|
|
||||||
+ File "include16.txt": example of rekursive inclusion.
|
|
||||||
+ <system_message level="2" line="3" source="%s" type="WARNING">
|
|
||||||
+ <paragraph>
|
|
||||||
+ circular inclusion in "include" directive:
|
|
||||||
+ %s
|
|
||||||
+ > %s
|
|
||||||
+ > %s
|
|
||||||
+ > %s
|
|
||||||
+ > test data
|
|
||||||
+ <literal_block xml:space="preserve">
|
|
||||||
+ .. include:: include15.txt
|
|
||||||
+ <paragraph>
|
|
||||||
+ No loop when clipping before the "include" directive:
|
|
||||||
+ <paragraph>
|
|
||||||
+ File "include15.txt": example of rekursive inclusion.
|
|
||||||
+ <paragraph>
|
|
||||||
+ No loop when clipping before the "include" directive:
|
|
||||||
+ <paragraph>
|
|
||||||
+ File "include15.txt": example of rekursive inclusion.
|
|
||||||
+""" % (reldir(include16), reldir(include15), reldir(include16),
|
|
||||||
+ reldir(include15), reldir(include16))],
|
|
||||||
+["""\
|
|
||||||
+Circular inclusion with specified parser.
|
|
||||||
+
|
|
||||||
+.. include:: %s
|
|
||||||
+ :parser: rst
|
|
||||||
+""" % include15,
|
|
||||||
+"""\
|
|
||||||
+<document source="test data">
|
|
||||||
+ <paragraph>
|
|
||||||
+ Circular inclusion with specified parser.
|
|
||||||
+ <paragraph>
|
|
||||||
+ File "include15.txt": example of rekursive inclusion.
|
|
||||||
+ <paragraph>
|
|
||||||
+ File "include16.txt": example of rekursive inclusion.
|
|
||||||
+ <system_message level="2" line="3" source="%s" type="WARNING">
|
|
||||||
+ <paragraph>
|
|
||||||
+ circular inclusion in "include" directive:
|
|
||||||
+ %s
|
|
||||||
+ > %s
|
|
||||||
+ > %s
|
|
||||||
+ > test data
|
|
||||||
+ <literal_block xml:space="preserve">
|
|
||||||
+ .. include:: include15.txt
|
|
||||||
+ <paragraph>
|
|
||||||
+ No loop when clipping before the "include" directive:
|
|
||||||
+ <paragraph>
|
|
||||||
+ File "include15.txt": example of rekursive inclusion.
|
|
||||||
+""" % (reldir(include16), reldir(include15),
|
|
||||||
+ reldir(include16), reldir(include15))],
|
|
||||||
+["""\
|
|
||||||
+No circular inclusion.
|
|
||||||
+
|
|
||||||
+============================= =============================
|
|
||||||
+.. include:: data/include.txt .. include:: data/include.txt
|
|
||||||
+============================= =============================
|
|
||||||
+""",
|
|
||||||
+"""\
|
|
||||||
+<document source="test data">
|
|
||||||
+ <paragraph>
|
|
||||||
+ No circular inclusion.
|
|
||||||
+ <table>
|
|
||||||
+ <tgroup cols="2">
|
|
||||||
+ <colspec colwidth="29">
|
|
||||||
+ <colspec colwidth="29">
|
|
||||||
+ <tbody>
|
|
||||||
+ <row>
|
|
||||||
+ <entry>
|
|
||||||
+ <paragraph>
|
|
||||||
+ Some include text.
|
|
||||||
+ <entry>
|
|
||||||
+ <paragraph>
|
|
||||||
+ Some include text."""],
|
|
||||||
+]
|
|
||||||
+
|
|
||||||
+totest['include-code-2-14'] = [
|
|
||||||
+["""\
|
|
||||||
+Included code
|
|
||||||
+
|
|
||||||
+.. include:: %s
|
|
||||||
+ :code: rst
|
|
||||||
+""" % include1,
|
|
||||||
+"""\
|
|
||||||
+<document source="test data">
|
|
||||||
+ <paragraph>
|
|
||||||
+ Included code
|
|
||||||
+ <literal_block classes="code rst" source="%s" xml:space="preserve">
|
|
||||||
+ <inline classes="generic heading">
|
|
||||||
+ Inclusion 1
|
|
||||||
+ \n\
|
|
||||||
+ <inline classes="generic heading">
|
|
||||||
+ -----------
|
|
||||||
+ \n\
|
|
||||||
+ <inline classes="whitespace">
|
|
||||||
+ \n\
|
|
||||||
+ This file is used by \n\
|
|
||||||
+ <inline classes="literal string">
|
|
||||||
+ ``test_include.py``
|
|
||||||
+ .
|
|
||||||
+""" % reldir(include1)],
|
|
||||||
+["""\
|
|
||||||
+Included code
|
|
||||||
+
|
|
||||||
+.. include:: %s
|
|
||||||
+ :code: rst
|
|
||||||
+ :number-lines:
|
|
||||||
+""" % include1,
|
|
||||||
+"""\
|
|
||||||
+<document source="test data">
|
|
||||||
+ <paragraph>
|
|
||||||
+ Included code
|
|
||||||
+ <literal_block classes="code rst" source="%s" xml:space="preserve">
|
|
||||||
+ <inline classes="ln">
|
|
||||||
+ 1 \n\
|
|
||||||
+ <inline classes="generic heading">
|
|
||||||
+ Inclusion 1
|
|
||||||
+ \n\
|
|
||||||
+ <inline classes="ln">
|
|
||||||
+ 2 \n\
|
|
||||||
+ <inline classes="generic heading">
|
|
||||||
+ -----------
|
|
||||||
+ \n\
|
|
||||||
+ <inline classes="ln">
|
|
||||||
+ 3 \n\
|
|
||||||
+ <inline classes="whitespace">
|
|
||||||
+ \n\
|
|
||||||
+ <inline classes="ln">
|
|
||||||
+ 4 \n\
|
|
||||||
+ <inline classes="whitespace">
|
|
||||||
+ This file is used by \n\
|
|
||||||
+ <inline classes="literal string">
|
|
||||||
+ ``test_include.py``
|
|
||||||
+ .
|
|
||||||
+""" % reldir(include1)],
|
|
||||||
+["""\
|
|
||||||
+TAB expansion with included code:
|
|
||||||
+
|
|
||||||
+.. include:: %s
|
|
||||||
+ :code: rst
|
|
||||||
+""" % include_literal,
|
|
||||||
+"""\
|
|
||||||
+<document source="test data">
|
|
||||||
+ <paragraph>
|
|
||||||
+ TAB expansion with included code:
|
|
||||||
+ <literal_block classes="code rst" source="%s" xml:space="preserve">
|
|
||||||
+ Literal included this should \n\
|
|
||||||
+ <inline classes="generic strong">
|
|
||||||
+ **not**
|
|
||||||
+ be \n\
|
|
||||||
+ <inline classes="generic emph">
|
|
||||||
+ *marked*
|
|
||||||
+ \n\
|
|
||||||
+ <inline classes="name variable">
|
|
||||||
+ `up`
|
|
||||||
+ .
|
|
||||||
+ <inline classes="whitespace">
|
|
||||||
+ \n\
|
|
||||||
+ <- leading raw tab.
|
|
||||||
+ <inline classes="whitespace">
|
|
||||||
+ \n\
|
|
||||||
+ \n\
|
|
||||||
+ Newlines
|
|
||||||
+ <inline classes="whitespace">
|
|
||||||
+ \n\
|
|
||||||
+ are
|
|
||||||
+ <inline classes="whitespace">
|
|
||||||
+ \n\
|
|
||||||
+ normalized.
|
|
||||||
+""" % include_literal],
|
|
||||||
+["""\
|
|
||||||
+Custom TAB expansion with included code:
|
|
||||||
+
|
|
||||||
+.. include:: %s
|
|
||||||
+ :code: rst
|
|
||||||
+ :tab-width: 2
|
|
||||||
+""" % include_literal,
|
|
||||||
+"""\
|
|
||||||
+<document source="test data">
|
|
||||||
+ <paragraph>
|
|
||||||
+ Custom TAB expansion with included code:
|
|
||||||
+ <literal_block classes="code rst" source="%s" xml:space="preserve">
|
|
||||||
+ Literal included this should \n\
|
|
||||||
+ <inline classes="generic strong">
|
|
||||||
+ **not**
|
|
||||||
+ be \n\
|
|
||||||
+ <inline classes="generic emph">
|
|
||||||
+ *marked*
|
|
||||||
+ \n\
|
|
||||||
+ <inline classes="name variable">
|
|
||||||
+ `up`
|
|
||||||
+ .
|
|
||||||
+ <inline classes="whitespace">
|
|
||||||
+ \n\
|
|
||||||
+ <- leading raw tab.
|
|
||||||
+ <inline classes="whitespace">
|
|
||||||
+ \n\
|
|
||||||
+ \n\
|
|
||||||
+ Newlines
|
|
||||||
+ <inline classes="whitespace">
|
|
||||||
+ \n\
|
|
||||||
+ are
|
|
||||||
+ <inline classes="whitespace">
|
|
||||||
+ \n\
|
|
||||||
+ normalized.
|
|
||||||
+""" % include_literal],
|
|
||||||
+["""\
|
|
||||||
+Custom TAB expansion with included code:
|
|
||||||
+
|
|
||||||
+.. include:: %s
|
|
||||||
+ :code: rst
|
|
||||||
+ :tab-width: -1
|
|
||||||
+""" % include_literal,
|
|
||||||
+"""\
|
|
||||||
+<document source="test data">
|
|
||||||
+ <paragraph>
|
|
||||||
+ Custom TAB expansion with included code:
|
|
||||||
+ <literal_block classes="code rst" source="%s" xml:space="preserve">
|
|
||||||
+ Literal included this should \n\
|
|
||||||
+ <inline classes="generic strong">
|
|
||||||
+ **not**
|
|
||||||
+ be \n\
|
|
||||||
+ <inline classes="generic emph">
|
|
||||||
+ *marked*
|
|
||||||
+ \n\
|
|
||||||
+ <inline classes="name variable">
|
|
||||||
+ `up`
|
|
||||||
+ .
|
|
||||||
+ <inline classes="whitespace">
|
|
||||||
+ \n\
|
|
||||||
+ \t<- leading raw tab.
|
|
||||||
+ <inline classes="whitespace">
|
|
||||||
+ \n\
|
|
||||||
+ \n\
|
|
||||||
+ Newlines
|
|
||||||
+ <inline classes="whitespace">
|
|
||||||
+ \n\
|
|
||||||
+ are
|
|
||||||
+ <inline classes="whitespace">
|
|
||||||
+ \n\
|
|
||||||
+ normalized.
|
|
||||||
+""" % include_literal],
|
|
||||||
+["""\
|
|
||||||
+Including includes/include14.txt
|
|
||||||
+
|
|
||||||
+.. include:: %s
|
|
||||||
+""" % include14,
|
|
||||||
+"""\
|
|
||||||
+<document source="test data">
|
|
||||||
+ <paragraph>
|
|
||||||
+ Including includes/include14.txt
|
|
||||||
+ <paragraph>
|
|
||||||
+ Including more/include6.txt as rst-code from includes/include14.txt:
|
|
||||||
+ <literal_block classes="code rst" source="%s" xml:space="preserve">
|
|
||||||
+ In includes/more/include6.txt
|
|
||||||
+ <inline classes="whitespace">
|
|
||||||
+ \n\
|
|
||||||
+ \n\
|
|
||||||
+ <inline classes="punctuation">
|
|
||||||
+ ..
|
|
||||||
+ \n\
|
|
||||||
<inline classes="operator word">
|
|
||||||
include
|
|
||||||
<inline classes="punctuation">
|
|
||||||
Index: docutils-0.19/docutils/utils/code_analyzer.py
|
|
||||||
===================================================================
|
|
||||||
--- docutils-0.19.orig/docutils/utils/code_analyzer.py
|
|
||||||
+++ docutils-0.19/docutils/utils/code_analyzer.py
|
|
||||||
@@ -9,11 +9,14 @@
|
|
||||||
from docutils import ApplicationError
|
|
||||||
try:
|
|
||||||
import pygments
|
|
||||||
+ from packaging.version import Version
|
|
||||||
from pygments.lexers import get_lexer_by_name
|
|
||||||
from pygments.formatters.html import _get_ttype_class
|
|
||||||
with_pygments = True
|
|
||||||
+ pygments_version = Version(pygments.__version__)
|
|
||||||
except ImportError:
|
|
||||||
with_pygments = False
|
|
||||||
+ pygments_version = '0'
|
|
||||||
|
|
||||||
# Filter the following token types from the list of class arguments:
|
|
||||||
unstyled_tokens = ['token', # Token (base token type)
|
|
@ -1,3 +1,56 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat Mar 30 15:15:42 UTC 2024 - Ben Greiner <code@bnavigator.de>
|
||||||
|
|
||||||
|
- Fix update-alternatives updates: docutils is the master but
|
||||||
|
rst2html from old installations can create update failures
|
||||||
|
- Fix bytecode cache errors: Don't modify python scripts after
|
||||||
|
install
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Feb 23 11:02:30 UTC 2024 - Dan Čermák <dcermak@suse.com>
|
||||||
|
|
||||||
|
- Drop obsolete Requires & BuildRequires on python-packaging & python-xml
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Nov 10 02:31:29 UTC 2023 - Steve Kowalik <steven.kowalik@suse.com>
|
||||||
|
|
||||||
|
- Update to 0.20.1:
|
||||||
|
* Include tox.ini and docutils.conf in the source package
|
||||||
|
* Docutils 0.20 is the last version supporting Python 3.7 and 3.8.
|
||||||
|
* Support Python 3.11 (patch #198 by Hugo van Kemenade).
|
||||||
|
* New functions `rst2…()` for use as "console_scripts" `entry points`_.
|
||||||
|
* Fix `previous_sibling()` method that led to invalid HTML in some cases
|
||||||
|
* Fix bug #463. Spurious comma in deprecation warning.
|
||||||
|
* Improved mock Sphinx module.
|
||||||
|
* `Transformer.populate_from_components()` now silently ignores
|
||||||
|
components that are not instances of `docutils.TransformSpec`.
|
||||||
|
* Accept author names with initials like ``A. Einstein`` in the "author"
|
||||||
|
`bibliographic field`_ instead of rising an error
|
||||||
|
* `DanglingReferences` ignores `citation_reference` nodes if the
|
||||||
|
"use_bibex" setting is active.
|
||||||
|
* New utility function `xml_declaration()`.
|
||||||
|
* `DependencyList.add()` accepts `pathlib.Path` instances.
|
||||||
|
* Support "mod" notation for modulo operation / modulus arithmetic.
|
||||||
|
* Wrap definition lists with "details" class argument in a <div>
|
||||||
|
with the "id" and "class" values of the list node.
|
||||||
|
* Use dpub-ARIA role "doc-footnote__" (instead of ARIA role "note")
|
||||||
|
for footnotes.
|
||||||
|
* Do not load the `inputenc` package in UTF-8 encoded LaTeX sources.
|
||||||
|
(UTF-8 is the default encoding for LaTeX2e since 2018).
|
||||||
|
* Fix behaviour of the use_bibtex_ setting.
|
||||||
|
* Outsource parts of `depart_document()` to new auxiliary methods
|
||||||
|
`make_title()` and `append_bibliography()`.
|
||||||
|
* Drop ``\usepackage{fixltx2e}`` from template.
|
||||||
|
* Fix SetuptoolsDeprecationWarning: ``Installing '' as data is deprecated``
|
||||||
|
by adding data directories to package_data.packages list.
|
||||||
|
* Refactored tests to use common `unittest` idioms.
|
||||||
|
- Drop pygments-2.14.patch, no longer needed.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Oct 13 22:59:14 UTC 2023 - Matej Cepl <mcepl@cepl.eu>
|
||||||
|
|
||||||
|
- python-roman is not actually necessary for testing.
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Fri Apr 21 12:24:23 UTC 2023 - Dirk Müller <dmueller@suse.com>
|
Fri Apr 21 12:24:23 UTC 2023 - Dirk Müller <dmueller@suse.com>
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
#
|
#
|
||||||
# spec file
|
# spec file for package python-docutils
|
||||||
#
|
#
|
||||||
# Copyright (c) 2023 SUSE LLC
|
# Copyright (c) 2024 SUSE LLC
|
||||||
#
|
#
|
||||||
# All modifications and additions to the file contributed by third parties
|
# All modifications and additions to the file contributed by third parties
|
||||||
# remain the property of their copyright owners, unless otherwise agreed
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
@ -26,34 +26,30 @@
|
|||||||
%bcond_with test
|
%bcond_with test
|
||||||
%endif
|
%endif
|
||||||
Name: python-docutils%{psuffix}
|
Name: python-docutils%{psuffix}
|
||||||
Version: 0.19
|
Version: 0.20.1
|
||||||
Release: 0
|
Release: 0
|
||||||
Summary: Python Documentation Utilities
|
Summary: Python Documentation Utilities
|
||||||
License: BSD-2-Clause AND Python-2.0 AND GPL-2.0-or-later AND GPL-3.0-or-later AND SUSE-Public-Domain
|
License: BSD-2-Clause AND Python-2.0 AND GPL-2.0-or-later AND GPL-3.0-or-later AND SUSE-Public-Domain
|
||||||
URL: https://pypi.python.org/pypi/docutils/
|
URL: https://pypi.python.org/pypi/docutils/
|
||||||
Source: https://files.pythonhosted.org/packages/source/d/docutils/docutils-%{version}.tar.gz
|
Source: https://files.pythonhosted.org/packages/source/d/docutils/docutils-%{version}.tar.gz
|
||||||
Source99: python-docutils-rpmlintrc
|
Source99: python-docutils-rpmlintrc
|
||||||
# PATCH-FIX-OPENSUSE pygments-2.14.patch shp#docutils#201
|
|
||||||
Patch0: pygments-2.14.patch
|
|
||||||
BuildRequires: %{python_module pip}
|
BuildRequires: %{python_module pip}
|
||||||
BuildRequires: %{python_module setuptools}
|
BuildRequires: %{python_module setuptools}
|
||||||
BuildRequires: %{python_module wheel}
|
BuildRequires: %{python_module wheel}
|
||||||
BuildRequires: %{python_module xml}
|
|
||||||
BuildRequires: fdupes
|
BuildRequires: fdupes
|
||||||
BuildRequires: python-rpm-macros
|
BuildRequires: python-rpm-macros
|
||||||
Requires: python-xml
|
Requires(pre): update-alternatives
|
||||||
Requires(post): update-alternatives
|
Requires(post): update-alternatives
|
||||||
Requires(postun):update-alternatives
|
Requires(postun): update-alternatives
|
||||||
Recommends: python-Pillow
|
Recommends: python-Pillow
|
||||||
Recommends: python-Pygments
|
Recommends: python-Pygments
|
||||||
Requires: python-packaging
|
|
||||||
Recommends: python-roman
|
Recommends: python-roman
|
||||||
BuildArch: noarch
|
BuildArch: noarch
|
||||||
%if %{with test}
|
%if %{with test}
|
||||||
BuildRequires: %{python_module Pillow}
|
BuildRequires: %{python_module Pillow}
|
||||||
BuildRequires: %{python_module Pygments}
|
BuildRequires: %{python_module Pygments}
|
||||||
BuildRequires: %{python_module packaging}
|
BuildRequires: %{python_module packaging}
|
||||||
BuildRequires: %{python_module roman}
|
# BuildRequires: %%{python_module roman}
|
||||||
%endif
|
%endif
|
||||||
%if "%{python_flavor}" == "python3" || "%{?python_provides}" == "python3"
|
%if "%{python_flavor}" == "python3" || "%{?python_provides}" == "python3"
|
||||||
Provides: docutils = %{version}
|
Provides: docutils = %{version}
|
||||||
@ -74,7 +70,20 @@ sed -i "s|'tools/\(rst.*\)\.py'|'tools/\1'|" setup.py
|
|||||||
find . -name \*.mp4 -print -exec chmod -x '{}' \;
|
find . -name \*.mp4 -print -exec chmod -x '{}' \;
|
||||||
|
|
||||||
# Actually seems to work with Python 3.6
|
# Actually seems to work with Python 3.6
|
||||||
sed -i -e '/python_requires/s/7/6/' setup.py
|
sed -i -e '/python_requires/ s/7/6/' setup.py
|
||||||
|
|
||||||
|
# Remove shebang from non-executable files
|
||||||
|
sed -i '1{/^#!/d}' \
|
||||||
|
docutils/__main__.py \
|
||||||
|
docutils/parsers/commonmark_wrapper.py \
|
||||||
|
docutils/parsers/recommonmark_wrapper.py \
|
||||||
|
docutils/utils/error_reporting.py \
|
||||||
|
docutils/utils/math/math2html.py \
|
||||||
|
docutils/utils/math/tex2unichar.py \
|
||||||
|
docutils/utils/smartquotes.py \
|
||||||
|
docutils/writers/_html_base.py \
|
||||||
|
docutils/writers/odf_odt/prepstyles.py \
|
||||||
|
docutils/writers/xetex/__init__.py
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%pyproject_wheel
|
%pyproject_wheel
|
||||||
@ -85,17 +94,7 @@ sed -i -e '/python_requires/s/7/6/' setup.py
|
|||||||
for binary in docutils rst2html rst2latex rst2man rst2odt rst2odt_prepstyles rst2pseudoxml rst2s5 rst2xetex rst2xml rstpep2html rst2html4 rst2html5 ; do
|
for binary in docutils rst2html rst2latex rst2man rst2odt rst2odt_prepstyles rst2pseudoxml rst2s5 rst2xetex rst2xml rstpep2html rst2html4 rst2html5 ; do
|
||||||
%python_clone -a %{buildroot}%{_bindir}/$binary
|
%python_clone -a %{buildroot}%{_bindir}/$binary
|
||||||
done
|
done
|
||||||
%{python_expand %fdupes %{buildroot}%{$python_sitelib}
|
%python_expand %fdupes %{buildroot}%{$python_sitelib}
|
||||||
|
|
||||||
# Remove shebang from non-executable files
|
|
||||||
for i in code_analyzer error_reporting punctuation_chars smartquotes math/latex2mathml math/math2html math/tex2mathml_extern ; do
|
|
||||||
sed -i -e '1{\@^#! *%{_bindir}.*python@d}' %{buildroot}%{$python_sitelib}/docutils/utils/$i.py
|
|
||||||
done
|
|
||||||
for i in writers/xetex/__init__ writers/_html_base __main__ parsers/commonmark_wrapper parsers/recommonmark_wrapper ; do
|
|
||||||
sed -i -e '1{\@^#! *%{_bindir}.*python@d}' %{buildroot}%{$python_sitelib}/docutils/$i.py
|
|
||||||
done
|
|
||||||
}
|
|
||||||
|
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%check
|
%check
|
||||||
@ -104,14 +103,16 @@ done
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if !%{with test}
|
%if !%{with test}
|
||||||
|
# sometime ago rst2html was the master which would let fail the upgrade with master docutils in post below
|
||||||
|
%pre
|
||||||
|
update-alternatives --query rst2html >/dev/null 2>&1 && update-alternatives --quiet --remove-all rst2html ||:
|
||||||
|
|
||||||
%post
|
%post
|
||||||
%{python_install_alternative docutils rst2html rst2latex rst2man rst2odt rst2odt_prepstyles rst2pseudoxml rst2s5 rst2xetex rst2xml rstpep2html rst2html4 rst2html5}
|
%python_install_alternative docutils rst2html rst2latex rst2man rst2odt rst2odt_prepstyles rst2pseudoxml rst2s5 rst2xetex rst2xml rstpep2html rst2html4 rst2html5
|
||||||
|
|
||||||
%postun
|
%postun
|
||||||
%{python_uninstall_alternative docutils rst2html rst2latex rst2man rst2odt rst2odt_prepstyles rst2pseudoxml rst2s5 rst2xetex rst2xml rstpep2html rst2html4 rst2html5}
|
%python_uninstall_alternative docutils
|
||||||
%endif
|
|
||||||
|
|
||||||
%if !%{with test}
|
|
||||||
%files %{python_files}
|
%files %{python_files}
|
||||||
%license COPYING.txt licenses/*.txt
|
%license COPYING.txt licenses/*.txt
|
||||||
%doc FAQ.txt HISTORY.txt README.txt THANKS.txt BUGS.txt docs/*
|
%doc FAQ.txt HISTORY.txt README.txt THANKS.txt BUGS.txt docs/*
|
||||||
@ -129,7 +130,7 @@ done
|
|||||||
%python_alternative %{_bindir}/rst2html4
|
%python_alternative %{_bindir}/rst2html4
|
||||||
%python_alternative %{_bindir}/rst2html5
|
%python_alternative %{_bindir}/rst2html5
|
||||||
%{python_sitelib}/docutils/
|
%{python_sitelib}/docutils/
|
||||||
%{python_sitelib}/docutils-%{version}*-info
|
%{python_sitelib}/docutils-%{version}.dist-info
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
Loading…
x
Reference in New Issue
Block a user