You can subscribe to this list here.
2002 |
Jan
|
Feb
|
Mar
|
Apr
(5) |
May
(27) |
Jun
(22) |
Jul
(72) |
Aug
(82) |
Sep
(86) |
Oct
(138) |
Nov
(100) |
Dec
(62) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2003 |
Jan
(122) |
Feb
(147) |
Mar
(92) |
Apr
(82) |
May
(101) |
Jun
(153) |
Jul
(37) |
Aug
(34) |
Sep
(46) |
Oct
(46) |
Nov
(6) |
Dec
(38) |
2004 |
Jan
(64) |
Feb
(81) |
Mar
(36) |
Apr
(194) |
May
(329) |
Jun
(272) |
Jul
(68) |
Aug
(74) |
Sep
(150) |
Oct
(57) |
Nov
(62) |
Dec
(63) |
2005 |
Jan
(78) |
Feb
(30) |
Mar
(137) |
Apr
(78) |
May
(54) |
Jun
(122) |
Jul
(72) |
Aug
(110) |
Sep
(80) |
Oct
(75) |
Nov
(125) |
Dec
(79) |
2006 |
Jan
(100) |
Feb
(15) |
Mar
(41) |
Apr
(67) |
May
(30) |
Jun
(11) |
Jul
(14) |
Aug
(22) |
Sep
(20) |
Oct
(14) |
Nov
(11) |
Dec
(15) |
2007 |
Jan
(17) |
Feb
(16) |
Mar
(35) |
Apr
(21) |
May
(33) |
Jun
(50) |
Jul
(12) |
Aug
(7) |
Sep
(2) |
Oct
(6) |
Nov
(5) |
Dec
(2) |
2008 |
Jan
(14) |
Feb
(20) |
Mar
(35) |
Apr
(9) |
May
(57) |
Jun
(21) |
Jul
(42) |
Aug
(4) |
Sep
(13) |
Oct
(76) |
Nov
(40) |
Dec
(55) |
2009 |
Jan
(26) |
Feb
(15) |
Mar
(3) |
Apr
(67) |
May
(32) |
Jun
(39) |
Jul
(59) |
Aug
(31) |
Sep
(59) |
Oct
(64) |
Nov
(21) |
Dec
(10) |
2010 |
Jan
(21) |
Feb
(3) |
Mar
(116) |
Apr
(33) |
May
(9) |
Jun
(28) |
Jul
(21) |
Aug
(23) |
Sep
(146) |
Oct
(70) |
Nov
(31) |
Dec
(57) |
2011 |
Jan
(33) |
Feb
(22) |
Mar
(11) |
Apr
(21) |
May
(51) |
Jun
(47) |
Jul
(35) |
Aug
(26) |
Sep
(25) |
Oct
(34) |
Nov
(61) |
Dec
(51) |
2012 |
Jan
(75) |
Feb
(31) |
Mar
(26) |
Apr
(16) |
May
(24) |
Jun
(24) |
Jul
(31) |
Aug
(46) |
Sep
(36) |
Oct
(28) |
Nov
(37) |
Dec
(21) |
2013 |
Jan
(16) |
Feb
(56) |
Mar
(31) |
Apr
(44) |
May
(45) |
Jun
(29) |
Jul
(38) |
Aug
(18) |
Sep
(12) |
Oct
(16) |
Nov
(21) |
Dec
(11) |
2014 |
Jan
(13) |
Feb
(14) |
Mar
(28) |
Apr
(7) |
May
(72) |
Jun
(33) |
Jul
(21) |
Aug
(1) |
Sep
(6) |
Oct
(14) |
Nov
(18) |
Dec
(22) |
2015 |
Jan
(23) |
Feb
(108) |
Mar
(76) |
Apr
(114) |
May
(60) |
Jun
(9) |
Jul
(8) |
Aug
(9) |
Sep
(42) |
Oct
(9) |
Nov
|
Dec
(7) |
2016 |
Jan
(6) |
Feb
(15) |
Mar
(7) |
Apr
|
May
(33) |
Jun
(3) |
Jul
(19) |
Aug
(12) |
Sep
(6) |
Oct
(16) |
Nov
(17) |
Dec
(125) |
2017 |
Jan
(66) |
Feb
(98) |
Mar
(29) |
Apr
(32) |
May
(63) |
Jun
(98) |
Jul
(26) |
Aug
(33) |
Sep
(19) |
Oct
(77) |
Nov
(31) |
Dec
(27) |
2018 |
Jan
(32) |
Feb
(11) |
Mar
(5) |
Apr
(12) |
May
(4) |
Jun
(9) |
Jul
(9) |
Aug
(13) |
Sep
(11) |
Oct
(6) |
Nov
(23) |
Dec
(2) |
2019 |
Jan
(26) |
Feb
(12) |
Mar
(20) |
Apr
(18) |
May
(7) |
Jun
(22) |
Jul
(81) |
Aug
(129) |
Sep
(32) |
Oct
(18) |
Nov
(11) |
Dec
(44) |
2020 |
Jan
(19) |
Feb
(10) |
Mar
(38) |
Apr
(4) |
May
(9) |
Jun
(15) |
Jul
(29) |
Aug
(79) |
Sep
(12) |
Oct
(22) |
Nov
(10) |
Dec
(37) |
2021 |
Jan
(16) |
Feb
(14) |
Mar
(20) |
Apr
(100) |
May
(21) |
Jun
(19) |
Jul
(13) |
Aug
(13) |
Sep
(37) |
Oct
(112) |
Nov
(64) |
Dec
(22) |
2022 |
Jan
(209) |
Feb
(38) |
Mar
(11) |
Apr
(10) |
May
(55) |
Jun
(104) |
Jul
(35) |
Aug
(10) |
Sep
(21) |
Oct
(21) |
Nov
(50) |
Dec
(12) |
2023 |
Jan
(6) |
Feb
|
Mar
(3) |
Apr
(41) |
May
(48) |
Jun
(9) |
Jul
(6) |
Aug
(25) |
Sep
(3) |
Oct
(22) |
Nov
(56) |
Dec
(12) |
2024 |
Jan
(5) |
Feb
(5) |
Mar
(38) |
Apr
(62) |
May
(12) |
Jun
(10) |
Jul
(3) |
Aug
(59) |
Sep
(2) |
Oct
(36) |
Nov
(14) |
Dec
(3) |
2025 |
Jan
(5) |
Feb
(19) |
Mar
(7) |
Apr
(65) |
May
(11) |
Jun
(13) |
Jul
(46) |
Aug
(27) |
Sep
(26) |
Oct
|
Nov
|
Dec
|
From: Günter M. <mi...@us...> - 2025-09-19 15:25:38
|
I cannot reproduce the install problem here. Installing Docutils 0.22.1 with pip into a new created venv worked without problem, despite the spurious file. What is the OS? Which command was used for the install? If you used pip, run it with increased verbosity and share the details: pip install <package-name> --verbose You may consider removing the spurious file /docutils-0.22.1/docutils/.__init__.py.swp from the wheel or tar.gz archive (or manually unpacking and then removing) and trying again. --- **[bugs:#513] error on v0.22.1** **Status:** open **Created:** Thu Sep 18, 2025 11:58 AM UTC by Daeho Ro **Last Updated:** Fri Sep 19, 2025 12:36 PM UTC **Owner:** nobody Hello, when I install `docutil` v0.22.1, I got an error ``` docutils-0.22.1/docutils/__init__.py: Failed to restore metadata: File exists tar: Error exit delayed from previous errors. Error: Failure while executing; `/usr/bin/env tar --extract --no-same-owner --file /Users/brew/Library/Caches/Homebrew/downloads/88b03c744685105eccb97d4a6655d840b7fed55a81342d1432838845ab291c6f--docutils-0.22.1.tar.gz --directory /private/tmp/homebrew-unpack-20250917-6599-dbea5b` exited with 1. Here's the output: ``` Some other package depending on this also occur same error. Can you check? Thanks, --- Sent from sourceforge.net because doc...@li... is subscribed to https://sourceforge.net/p/docutils/bugs/ To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/docutils/admin/bugs/options. Or, if this is a mailing list, you can unsubscribe from the mailing list. |
From: Günter M. <mi...@us...> - 2025-09-18 08:33:08
|
- **status**: open-fixed --> closed-fixed - **Comment**: Fixed in Docutils 0.22.1. Thanks again. --- **[patches:#214] Give better messages on malformed tables** **Status:** closed-fixed **Group:** None **Created:** Sun Jun 08, 2025 05:58 PM UTC by Jynn Nelson **Last Updated:** Tue Aug 19, 2025 09:30 PM UTC **Owner:** nobody **Attachments:** - [tables.diff](https://sourceforge.net/p/docutils/patches/214/attachment/tables.diff) (5.2 kB; application/octet-stream) This does several things: - Specifies `Misaligned right border` for that error, instead of just "malformed table". - Shows the line where each error happened, not the line where the table starts. - This had a complication that line numbers appear to be wrong when `include` directives are present (they include the lines in the source document, instead of being relative to the included document). Just disabled the new smarter logic in that case. - Changes `malformed_table` to require both detail and an offset, so poor errors like this can't happen in the future. Fixes https://sourceforge.net/p/docutils/bugs/504/. --- Sent from sourceforge.net because doc...@li... is subscribed to https://sourceforge.net/p/docutils/patches/ To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/docutils/admin/patches/options. Or, if this is a mailing list, you can unsubscribe from the mailing list. |
From: Günter M. <mi...@us...> - 2025-09-18 07:56:47
|
- **status**: open-fixed --> closed-fixed --- **[bugs:#493] Test failure on Windows with embedded images** **Status:** closed-fixed **Created:** Wed Aug 07, 2024 02:25 AM UTC by Adam Turner **Last Updated:** Wed Jul 30, 2025 09:11 AM UTC **Owner:** nobody xref [r9785], [r9853], [r9855] Dear @milde, Thank you for the fix to my recent patch. It seems neither my patch nor the fix addressed the root cause of the test failures, as tests have resumed failing on Windows. I believe the following demonstrates the problem: ```pycon >>> import sys; print(sys.platform) win32 >>> import urllib.parse, urllib.request >>> urllib.request.url2pathname('test/data/circle-broken.svg') 'test\\data\\circle-broken.svg' >>> urllib.parse.unquote('test/data/circle-broken.svg') 'test/data/circle-broken.svg' ``` Currently, we use `imagepath = urllib.request.url2pathname(uri_parts.path)`, which converts path separators to their platform-native format. On UNIX, `url2pathname` simply calls `unquote`, but on Windows it handles UNC paths (``\\host\path\``) and escaped drive letters (``///C|/users/``). I don't know what led to using `url2pathname()`, as it is quite specialised (the docstring notes "not recommended for general use"). Is it possible to use the simpler `unquote()` here? For local file paths (e.g. without a ``file:///`` scheme), should we even be using URI parsing? Perhaps we should use proper path handling if there is no URI scheme (i.e. the user has provided a file-path). A --- Sent from sourceforge.net because doc...@li... is subscribed to https://sourceforge.net/p/docutils/bugs/ To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/docutils/admin/bugs/options. Or, if this is a mailing list, you can unsubscribe from the mailing list. |
From: Günter M. <mi...@us...> - 2025-09-18 07:45:06
|
- **status**: open-fixed --> closed-fixed --- **[bugs:#503] LaTeX writer fails to generate "labels" for some elements with "ids".** **Status:** closed-fixed **Created:** Wed Jun 04, 2025 04:34 PM UTC by Günter Milde **Last Updated:** Thu Sep 18, 2025 07:43 AM UTC **Owner:** nobody Most doctree elements (nodes) accept the "ids" attribute that can be used as end-point for internal cross references. In LaTeX, "ids" are represented as "labels". This is only implemented for a small subset of elements. For example the internal hyperlink in ~~~ .. note:: :name: my-note This is an admonition with ID Link to my-note_. ~~~ does not work because there is no `\label{my-note}` in the LaTeX output. See also [Sphinx issue #13609](https://github.com/sphinx-doc/sphinx/issues/13609#issuecomment-2937289148). --- Sent from sourceforge.net because doc...@li... is subscribed to https://sourceforge.net/p/docutils/bugs/ To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/docutils/admin/bugs/options. Or, if this is a mailing list, you can unsubscribe from the mailing list. |
From: Günter M. <mi...@us...> - 2025-09-18 07:44:00
|
- **Comment**: Fixed in [Docutils 0.22.1](https://pypi.org/project/docutils/0.22.1/). --- **[bugs:#503] LaTeX writer fails to generate "labels" for some elements with "ids".** **Status:** open-fixed **Created:** Wed Jun 04, 2025 04:34 PM UTC by Günter Milde **Last Updated:** Thu Aug 21, 2025 04:24 PM UTC **Owner:** nobody Most doctree elements (nodes) accept the "ids" attribute that can be used as end-point for internal cross references. In LaTeX, "ids" are represented as "labels". This is only implemented for a small subset of elements. For example the internal hyperlink in ~~~ .. note:: :name: my-note This is an admonition with ID Link to my-note_. ~~~ does not work because there is no `\label{my-note}` in the LaTeX output. See also [Sphinx issue #13609](https://github.com/sphinx-doc/sphinx/issues/13609#issuecomment-2937289148). --- Sent from sourceforge.net because doc...@li... is subscribed to https://sourceforge.net/p/docutils/bugs/ To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/docutils/admin/bugs/options. Or, if this is a mailing list, you can unsubscribe from the mailing list. |
From: Günter M. <mi...@us...> - 2025-09-18 07:43:12
|
- **status**: open-fixed --> closed-fixed - **Comment**: Fixed in [Docutils 0.22.1](https://pypi.org/project/docutils/0.22.1/). Thanks again! --- **[bugs:#504] errors for malformed tables do not indicate what the error is** **Status:** closed-fixed **Created:** Thu Jun 05, 2025 09:04 PM UTC by Jynn Nelson **Last Updated:** Tue Aug 19, 2025 09:30 PM UTC **Owner:** nobody **Attachments:** - [table.rst](https://sourceforge.net/p/docutils/bugs/504/attachment/table.rst) (1.1 kB; application/octet-stream) The error messages for malformed tables are quite long and do not indicate where the error occurred. I expect docutils to point at a single line of code, and say why it was malformed. Instead it points at the whole table and just says "malformed table". ~~~ $ grep PRETTY /etc/os-release PRETTY_NAME="Pop!_OS 22.04 LTS" $ python -V Python 3.10.12 $ docutils -V docutils (Docutils 0.21.2, Python 3.10.12, on linux) $ docutils --traceback table.rst >/dev/null table.rst:5: (ERROR/3) Malformed table. +-------------------------+-------------------+ | Standard Code | Message(s) | +=========================+===================+ | M1, indicator undefined | Illegal reference | +-------------------------+-------------------+ | M1, indicator undefined | Illegal reference | +-------------------------+-------------------+ | M1, indicator undefined | Illegal reference | +-------------------------+-------------------+ | M1, indicator undefined | Illegal reference | +-------------------------+-------------------+ | M1, indicator undefined | Illegal reference | +-------------------------+-------------------+ | M1, indicator undefined | Illegal reference | +-------------------------+-------------------+ | M1, indicator undefined | Illegal reference | +-------------------------+-------------------+ | M1, indicator undefined | Illegal reference | +-------------------------+-------------------+ | M2, Invalid combination | None | +-------------------------+-------------------+ ~~~ Note that docutils *does* have the information to report this bug, because I can see it in a debugger. It simply doesn't include that info in the error. ~~~ $ python -m pdb $(which docutils) --traceback table.rst > /home/jyn/.local/bin/docutils(3)<module>() -> import re (Pdb) break docutils/parsers/rst/states.py:1787 Breakpoint 1 at /home/jyn/.local/lib/python3.10/site-packages/docutils/parsers/rst/states.py:1787 (Pdb) c > /home/jyn/.local/lib/python3.10/site-packages/docutils/parsers/rst/states.py(1787)malformed_table() -> message = 'Malformed table.' (Pdb) up > /home/jyn/.local/lib/python3.10/site-packages/docutils/parsers/rst/states.py(1737)isolate_grid_table() -> messages.extend(self.malformed_table(block)) (Pdb) list 1732 else: 1733 messages.extend(self.malformed_table(block)) 1734 return [], messages, blank_finish 1735 for i in range(len(block)): # check right edge 1736 if len(block[i]) != width or block[i][-1] not in '+|': 1737 -> messages.extend(self.malformed_table(block)) 1738 return [], messages, blank_finish 1739 return block, messages, blank_finish 1740 1741 def isolate_simple_table(self): 1742 start = self.state_machine.line_offset (Pdb) p block[i] '| Standard Code | Message(s) |' (Pdb) p width 47 (Pdb) p len(block[i]) 46 ~~~ --- Sent from sourceforge.net because doc...@li... is subscribed to https://sourceforge.net/p/docutils/bugs/ To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/docutils/admin/bugs/options. Or, if this is a mailing list, you can unsubscribe from the mailing list. |
From: Günter M. <mi...@us...> - 2025-09-18 07:41:35
|
- **status**: open-fixed --> closed-fixed - **Comment**: Fixed in [Docutils 0.22.1](https://pypi.org/project/docutils/0.22.1/). Please reopen if there are still problems. Thank you for reporting and tests. --- **[bugs:#508] qemu build problem after docutils update to 0.22** **Status:** closed-fixed **Created:** Mon Aug 04, 2025 08:23 AM UTC by Thomas Klausner **Last Updated:** Mon Sep 15, 2025 12:30 PM UTC **Owner:** nobody After updating docutils in pkgsrc to 0.22 (with sphinx 8.2.3), qemu 10.0.3 (https://gitlab.com/qemu-project/qemu) stopped building. The output is not very clear: ``` [5596/6204] Generating docs/QEMU manual with a custom command FAILED: [code=2] docs/docs.stamp /scratch/emulators/qemu/work/.tools/bin/env CONFDIR=/usr/pkg/etc/qemu/qemu /scratch/emulators/qemu/work/qemu-10.0.3/build/pyvenv/bin/sphinx-build -q -j auto -Dversion=10.0.3 -Drelease= -Ddepfile=docs/docs.d -Ddepfile_sta mp=docs/docs.stamp -b html -d /scratch/emulators/qemu/work/qemu-10.0.3/build/docs/manual.p /scratch/emulators/qemu/work/qemu-10.0.3/docs /scratch/emulators/qemu/work/qemu-10.0.3/build/docs/manual Possible precedence problem between ! and pattern match (m//) at /scratch/emulators/qemu/work/qemu-10.0.3/docs/../scripts/kernel-doc line 1597. Possible precedence problem between ! and pattern match (m//) at /scratch/emulators/qemu/work/qemu-10.0.3/docs/../scripts/kernel-doc line 1597. Possible precedence problem between ! and pattern match (m//) at /scratch/emulators/qemu/work/qemu-10.0.3/docs/../scripts/kernel-doc line 1597. Possible precedence problem between ! and pattern match (m//) at /scratch/emulators/qemu/work/qemu-10.0.3/docs/../scripts/kernel-doc line 1597. Possible precedence problem between ! and pattern match (m//) at /scratch/emulators/qemu/work/qemu-10.0.3/docs/../scripts/kernel-doc line 1597. Possible precedence problem between ! and pattern match (m//) at /scratch/emulators/qemu/work/qemu-10.0.3/docs/../scripts/kernel-doc line 1597. Possible precedence problem between ! and pattern match (m//) at /scratch/emulators/qemu/work/qemu-10.0.3/docs/../scripts/kernel-doc line 1597. Possible precedence problem between ! and pattern match (m//) at /scratch/emulators/qemu/work/qemu-10.0.3/docs/../scripts/kernel-doc line 1597. Possible precedence problem between ! and pattern match (m//) at /scratch/emulators/qemu/work/qemu-10.0.3/docs/../scripts/kernel-doc line 1597. Possible precedence problem between ! and pattern match (m//) at /scratch/emulators/qemu/work/qemu-10.0.3/docs/../scripts/kernel-doc line 1597. Possible precedence problem between ! and pattern match (m//) at /scratch/emulators/qemu/work/qemu-10.0.3/docs/../scripts/kernel-doc line 1597. Possible precedence problem between ! and pattern match (m//) at /scratch/emulators/qemu/work/qemu-10.0.3/docs/../scripts/kernel-doc line 1597. /scratch/emulators/qemu/work/qemu-10.0.3/docs/../system/qtest.c:70: CRITICAL: Inconsistent title style: skip from level 1 to 3. Valid requests ^^^^^^^^^^^^^^ Established title styles: =/= - ^ [docutils] /scratch/emulators/qemu/work/qemu-10.0.3/docs/../system/qtest.c:73: CRITICAL: Inconsistent title style: skip from level 1 to 4. 10:17:35 [41/1829] Clock management: """"""""""""""""" Established title styles: =/= - ^ " [docutils] /scratch/emulators/qemu/work/qemu-10.0.3/docs/../system/qtest.c:107: CRITICAL: Inconsistent title style: skip from level 1 to 4. PIO and memory access: """""""""""""""""""""" Established title styles: =/= - ^ " [docutils] /scratch/emulators/qemu/work/qemu-10.0.3/docs/../system/qtest.c:215: CRITICAL: Inconsistent title style: skip from level 1 to 4. IRQ management: """"""""""""""" Established title styles: =/= - ^ " [docutils] /scratch/emulators/qemu/work/qemu-10.0.3/docs/../system/qtest.c:239: CRITICAL: Inconsistent title style: skip from level 1 to 4. Setting interrupt level: """""""""""""""""""""""" Established title styles: =/= - ^ " [docutils] Sphinx parallel build error! Versions ======== * Platform: netbsd11; (NetBSD-11.99.1-amd64-x86_64-64bit-ELF) * Python version: 3.13.5 (CPython) * Sphinx version: 8.2.3 * Docutils version: 0.22 * Jinja2 version: 3.1.6 * Pygments version: 2.19.2 Last Messages ============= reading sources... [ 91%] system/s390x/protvirt .. system/target-loongarch reading sources... [ 94%] system/target-m68k .. system/target-sparc64 reading sources... [ 97%] system/target-xtensa .. tools/qemu-nbd Loaded Extensions ================= * sphinx.ext.mathjax (8.2.3) * alabaster (1.0.0) * sphinxcontrib.applehelp (2.0.0) * sphinxcontrib.devhelp (2.0.0) * sphinxcontrib.htmlhelp (2.1.0) * sphinxcontrib.serializinghtml (2.0.0) * sphinxcontrib.qthelp (2.0.0) * depfile (1.0) * hxtool (1.0) * kerneldoc (1.0) * qapi_domain (1.0) * qapidoc (2.0) * qmp_lexer (unknown version) * dbusdoc (1.0) * sphinxcontrib.jquery (4.1) * sphinx_rtd_theme (unknown version) Traceback ========= File "/usr/pkg/lib/python3.13/site-packages/sphinx/util/parallel.py", line 137, in _join_one raise SphinxParallelError(*result) sphinx.errors.SphinxParallelError: TypeError: unsupported operand type(s) for +: 'NoneType' and 'list' The full traceback has been saved in: /tmp/sphinx-err-gj6pt4nj.log To report this error to the developers, please open an issue at <https://github.com/sphinx-doc/sphinx/issues/>. Thanks! Please also report this if it was a user error, so that a better error message can be provided next time. ``` The full traceback from the log lists docutils code as the origin of the breakage: ``` Traceback ========= (Error in parallel process) Traceback (most recent call last): File "/usr/pkg/lib/python3.13/site-packages/sphinx/util/parallel.py", line 83, in _process ret = func(arg) # type: ignore[call-arg] File "/usr/pkg/lib/python3.13/site-packages/sphinx/builders/__init__.py", line 603, in read_process self.read_doc(docname, _cache=False) ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/pkg/lib/python3.13/site-packages/sphinx/builders/__init__.py", line 648, in read_doc publisher.publish() ~~~~~~~~~~~~~~~~~^^ File "/usr/pkg/lib/python3.13/site-packages/docutils/core.py", line 269, in publish self.document = self.reader.read(self.source, self.parser, ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^ self.settings) ^^^^^^^^^^^^^^ File "/usr/pkg/lib/python3.13/site-packages/sphinx/io.py", line 103, in read self.parse() ~~~~~~~~~~^^ File "/usr/pkg/lib/python3.13/site-packages/docutils/readers/__init__.py", line 101, in parse self.parser.parse(self.input, document) ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^ File "/usr/pkg/lib/python3.13/site-packages/sphinx/parsers.py", line 86, in parse self.statemachine.run(inputlines, document, inliner=self.inliner) ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/pkg/lib/python3.13/site-packages/docutils/parsers/rst/states.py", line 165, in run results = StateMachineWS.run(self, input_lines, input_offset, input_source=document['source']) File "/usr/pkg/lib/python3.13/site-packages/docutils/statemachine.py", line 235, in run context, next_state, result = self.check_line( ~~~~~~~~~~~~~~~^ context, state, transitions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/pkg/lib/python3.13/site-packages/docutils/statemachine.py", line 447, in check_line return method(match, context, next_state) File "/usr/pkg/lib/python3.13/site-packages/docutils/parsers/rst/states.py", line 2356, in explicit_markup self.explicit_list(blank_finish) ~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^ File "/usr/pkg/lib/python3.13/site-packages/docutils/parsers/rst/states.py", line 2381, in explicit_list newline_offset, blank_finish = self.nested_list_parse( ~~~~~~~~~~~~~~~~~~~~~~^ self.state_machine.input_lines[offset:], ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ...<2 lines>... blank_finish=blank_finish, ^^^^^^^^^^^^^^^^^^^^^^^^^^ match_titles=self.state_machine.match_titles) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/pkg/lib/python3.13/site-packages/docutils/parsers/rst/states.py", line 312, in nested_list_parse state_machine.run(block, input_offset, memo=self.memo, ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ node=node, match_titles=match_titles) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/pkg/lib/python3.13/site-packages/docutils/parsers/rst/states.py", line 191, in run results = StateMachineWS.run(self, input_lines, input_offset) File "/usr/pkg/lib/python3.13/site-packages/docutils/statemachine.py", line 235, in run context, next_state, result = self.check_line( ~~~~~~~~~~~~~~~^ context, state, transitions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/pkg/lib/python3.13/site-packages/docutils/statemachine.py", line 447, in check_line return method(match, context, next_state) File "/usr/pkg/lib/python3.13/site-packages/docutils/parsers/rst/states.py", line 2659, in explicit_markup nodelist, blank_finish = self.explicit_construct(match) ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^ File "/usr/pkg/lib/python3.13/site-packages/docutils/parsers/rst/states.py", line 2366, in explicit_construct return method(self, expmatch) File "/usr/pkg/lib/python3.13/site-packages/docutils/parsers/rst/states.py", line 2103, in directive return self.run_directive( ~~~~~~~~~~~~~~~~~~^ directive_class, match, type_name, option_presets) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/pkg/lib/python3.13/site-packages/docutils/parsers/rst/states.py", line 2153, in run_directive result = directive_instance.run() File "/scratch/emulators/qemu/work/qemu-10.0.3/docs/sphinx/qapidoc.py", line 620, in run contentnode = self.transmogrify(schema) File "/scratch/emulators/qemu/work/qemu-10.0.3/docs/sphinx/qapidoc.py", line 549, in transmogrify nested_parse_with_titles(self.state, content, contentnode) ~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/pkg/lib/python3.13/site-packages/sphinx/util/nodes.py", line 378, in nested_parse_with_titles ret = state.nested_parse(content, content_offset, node, match_titles=True) File "/usr/pkg/lib/python3.13/site-packages/docutils/parsers/rst/states.py", line 275, in nested_parse state_machine.run(block, input_offset, memo=self.memo, ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ node=node, match_titles=match_titles) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/pkg/lib/python3.13/site-packages/docutils/parsers/rst/states.py", line 191, in run results = StateMachineWS.run(self, input_lines, input_offset) File "/usr/pkg/lib/python3.13/site-packages/docutils/statemachine.py", line 235, in run context, next_state, result = self.check_line( ~~~~~~~~~~~~~~~^ context, state, transitions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/pkg/lib/python3.13/site-packages/docutils/statemachine.py", line 447, in check_line return method(match, context, next_state) File "/usr/pkg/lib/python3.13/site-packages/docutils/parsers/rst/states.py", line 3024, in text self.section(title.lstrip(), source, style, lineno + 1, messages) ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/pkg/lib/python3.13/site-packages/docutils/parsers/rst/states.py", line 321, in section self.new_subsection(title, lineno, messages) ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/pkg/lib/python3.13/site-packages/docutils/parsers/rst/states.py", line 370, in new_subsection self.parent += section_node File "/usr/pkg/lib/python3.13/site-packages/docutils/nodes.py", line 736, in __radd__ return other + self.children ~~~~~~^~~~~~~~~~~~~~~ TypeError: unsupported operand type(s) for +: 'NoneType' and 'list' ``` Even with the "CRITICAL: Inconsistent title style" problems fixed, the build stops. Any ideas what the problem is or how to fix it? Thanks. --- Sent from sourceforge.net because doc...@li... is subscribed to https://sourceforge.net/p/docutils/bugs/ To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/docutils/admin/bugs/options. Or, if this is a mailing list, you can unsubscribe from the mailing list. |
From: Günter M. <mi...@us...> - 2025-09-18 07:40:52
|
- **status**: open-fixed --> closed-fixed - **Comment**: Fixed in [Docutils 0.22.1](https://pypi.org/project/docutils/0.22.1/). Please reopen if there are still problems. Thank you for reporting and tests. --- **[bugs:#509] regression with docutils 0.22: unsupported operand type(s) for +: 'NoneType' and 'list'** **Status:** closed-fixed **Created:** Wed Aug 06, 2025 06:13 PM UTC by Oliver Smith **Last Updated:** Mon Sep 15, 2025 12:28 PM UTC **Owner:** nobody Hello, after upgrading to docutils 0.22, building documentation for the pmbootstrap project fails: ~~~ Traceback (most recent call last): File "/usr/lib/python3.12/site-packages/sphinx/cmd/build.py", line 432, in build_main app.build(args.force_all, args.filenames) File "/usr/lib/python3.12/site-packages/sphinx/application.py", line 426, in build self.builder.build_update() File "/usr/lib/python3.12/site-packages/sphinx/builders/__init__.py", line 375, in build_update self.build( File "/usr/lib/python3.12/site-packages/sphinx/builders/__init__.py", line 403, in build updated_docnames = set(self.read()) ^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/sphinx/builders/__init__.py", line 519, in read self._read_serial(docnames) File "/usr/lib/python3.12/site-packages/sphinx/builders/__init__.py", line 584, in _read_serial self.read_doc(docname) File "/usr/lib/python3.12/site-packages/sphinx/builders/__init__.py", line 648, in read_doc publisher.publish() File "/usr/lib/python3.12/site-packages/docutils/core.py", line 269, in publish self.document = self.reader.read(self.source, self.parser, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/sphinx/io.py", line 103, in read self.parse() File "/usr/lib/python3.12/site-packages/docutils/readers/__init__.py", line 101, in parse self.parser.parse(self.input, document) File "/usr/lib/python3.12/site-packages/sphinx/parsers.py", line 86, in parse self.statemachine.run(inputlines, document, inliner=self.inliner) File "/usr/lib/python3.12/site-packages/docutils/parsers/rst/states.py", line 165, in run results = StateMachineWS.run(self, input_lines, input_offset, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/docutils/statemachine.py", line 235, in run context, next_state, result = self.check_line( ^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/docutils/statemachine.py", line 447, in check_line return method(match, context, next_state) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/docutils/parsers/rst/states.py", line 2354, in explicit_markup nodelist, blank_finish = self.explicit_construct(match) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/docutils/parsers/rst/states.py", line 2366, in explicit_construct return method(self, expmatch) ^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/docutils/parsers/rst/states.py", line 2103, in directive return self.run_directive( ^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/docutils/parsers/rst/states.py", line 2153, in run_directive result = directive_instance.run() ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/sphinxcontrib/autoprogram.py", line 262, in run nested_parse_with_titles(self.state, result, node) File "/usr/lib/python3.12/site-packages/sphinx/util/nodes.py", line 378, in nested_parse_with_titles ret = state.nested_parse(content, content_offset, node, match_titles=True) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/docutils/parsers/rst/states.py", line 275, in nested_parse state_machine.run(block, input_offset, memo=self.memo, File "/usr/lib/python3.12/site-packages/docutils/parsers/rst/states.py", line 191, in run results = StateMachineWS.run(self, input_lines, input_offset) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/docutils/statemachine.py", line 235, in run context, next_state, result = self.check_line( ^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/docutils/statemachine.py", line 447, in check_line return method(match, context, next_state) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/docutils/parsers/rst/states.py", line 2787, in underline self.section(title, source, style, lineno - 1, messages) File "/usr/lib/python3.12/site-packages/docutils/parsers/rst/states.py", line 321, in section self.new_subsection(title, lineno, messages) File "/usr/lib/python3.12/site-packages/docutils/parsers/rst/states.py", line 370, in new_subsection self.parent += section_node File "/usr/lib/python3.12/site-packages/docutils/nodes.py", line 736, in __radd__ return other + self.children ~~~~~~^~~~~~~~~~~~~~~ TypeError: unsupported operand type(s) for +: 'NoneType' and 'list' ~~~ Source code: https://gitlab.postmarketos.org/postmarketOS/pmbootstrap/ Tested with commit: 5927ff70b8d2468d5d0e2c978bc1fe30d036fd7f Distribution: Alpine Linux Edge --- Sent from sourceforge.net because doc...@li... is subscribed to https://sourceforge.net/p/docutils/bugs/ To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/docutils/admin/bugs/options. Or, if this is a mailing list, you can unsubscribe from the mailing list. |
From: Günter M. <mi...@us...> - 2025-09-18 07:38:08
|
- **status**: open-fixed --> closed-fixed - **Comment**: Fixed in Docutils 0.22.1. Thank you for reporting. --- **[bugs:#510] Release date for 0.22 is in the future** **Status:** closed-fixed **Created:** Mon Aug 25, 2025 06:21 AM UTC by Dilian Wesselinov Palauzov **Last Updated:** Mon Aug 25, 2025 08:54 AM UTC **Owner:** nobody According to https://docutils.sourceforge.io/HISTORY.html docutils 0.22 was released in 2026, but in fact it was published in 2025. --- Sent from sourceforge.net because doc...@li... is subscribed to https://sourceforge.net/p/docutils/bugs/ To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/docutils/admin/bugs/options. Or, if this is a mailing list, you can unsubscribe from the mailing list. |
From: engelbert g. <eng...@gm...> - 2025-09-17 18:49:38
|
Good evening, after a short test the 0.22.1 is released containing * docutils/parsers/rst/states.py - Relax "section title" system messages from SEVERE to ERROR. - Fix behaviour with nested parsing into a detached node (cf. bugs #508 and #509). - New attribute `NestedStateMachine.parent_state_machine`. Use case: update the "current node" of parent state machine(s) after nested parsing. - Better error messages for grid table markup errors (bug #504), based on patch #214 by Jynn Nelson. * docutils/transforms/references.py - Better error reports for hyperlinks with embedded URI or alias. * docutils/writers/latex2e/__init__.py - Add cross-reference anchors (``\phantomsection\label{...}``) for elements with IDs (fixes bug #503). - Fix cross-reference anchor placement in figures, images, literal-blocks, tables, and (sub)titles. all the best e |
From: Günter M. <mi...@us...> - 2025-09-17 15:06:05
|
Thank you for the report. Combining characters in grid tables are known to be problematic. See [bugs:#128] Mind, that the intended behaviour would be to get the "expected" result with the input ~~~ +---+ | ç̌ | +---+ ~~~ For simple tables, you can use the simple table syntax, where this problem is fixed: ~~~ = == ç̌ OK = == ~~~ --- **[bugs:#512] rst2html incorrectly converts tables with Combining Diacritical Marks into HTML** **Status:** open **Labels:** rest tables **Created:** Tue Sep 16, 2025 07:28 PM UTC by CHÉN Zhé **Last Updated:** Tue Sep 16, 2025 07:44 PM UTC **Owner:** nobody **Attachments:** - [expected.png](https://sourceforge.net/p/docutils/bugs/512/attachment/expected.png) (682 Bytes; image/png) - [result.png](https://sourceforge.net/p/docutils/bugs/512/attachment/result.png) (702 Bytes; image/png) - [test.rst](https://sourceforge.net/p/docutils/bugs/512/attachment/test.rst) (23 Bytes; application/octet-stream) Content of reST file: ~~~ +----+ | ç̌ | +----+ ~~~ Expected results: ~~~ <table border="1" class="docutils"> <colgroup> <col width="100%" /> </colgroup> <tbody valign="top"> <tr><td>ç̌</td> </tr> </tbody> </table> ~~~ Real results: ~~~ <table border="1" class="docutils"> <colgroup> <col width="100%" /> </colgroup> <tbody valign="top"> <tr><td>ç̌ |</td> </tr> </tbody> </table> ~~~ --- Sent from sourceforge.net because doc...@li... is subscribed to https://sourceforge.net/p/docutils/bugs/ To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/docutils/admin/bugs/options. Or, if this is a mailing list, you can unsubscribe from the mailing list. |
From: Günter M. <mi...@us...> - 2025-09-17 15:01:42
|
Even when adjusting the grid, the parser goes wrong. See [bugs:512]. --- **[bugs:#128] combining unicode chars count in grid tables** **Status:** open **Created:** Tue Jan 05, 2010 10:49 AM UTC by Günter Milde **Last Updated:** Wed Sep 17, 2025 03:00 PM UTC **Owner:** nobody Combining unicode chars in <s>headings and simple</s> grid tables lead to warnings and errors, as they contribute to the string lenght. --- Sent from sourceforge.net because doc...@li... is subscribed to https://sourceforge.net/p/docutils/bugs/ To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/docutils/admin/bugs/options. Or, if this is a mailing list, you can unsubscribe from the mailing list. |
From: Günter M. <mi...@us...> - 2025-09-17 15:00:12
|
- Description has changed: Diff: ~~~~ --- old +++ new @@ -1,7 +1,2 @@ -Combining unicode chars in headings +Combining unicode chars in <s>headings and simple</s> grid tables lead to warnings and errors, as they contribute to the string lenght. -like à with varia -\----------------- - -and simple tables lead to warnings and errors, as they contribute to the string lenght. - ~~~~ --- **[bugs:#128] combining unicode chars count in grid tables** **Status:** open **Created:** Tue Jan 05, 2010 10:49 AM UTC by Günter Milde **Last Updated:** Mon May 30, 2022 09:20 PM UTC **Owner:** nobody Combining unicode chars in <s>headings and simple</s> grid tables lead to warnings and errors, as they contribute to the string lenght. --- Sent from sourceforge.net because doc...@li... is subscribed to https://sourceforge.net/p/docutils/bugs/ To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/docutils/admin/bugs/options. Or, if this is a mailing list, you can unsubscribe from the mailing list. |
From: Guenter M. <mi...@us...> - 2025-09-16 08:28:11
|
Dear Engelbert, On 2025-09-13, engelbert gruber wrote: > 0.22.1rc1 contains ... [bug fixes] ... > and improvements (see https://docutils.sourceforge.io/HISTORY.html) Thanks for the pre-release. One point to remember for next time: according to our version policies (https://docutils.sourceforge.io/docs/dev/policies.html#docutils-version), the next development version is not 0.22.1b1 but 0.22.1rc2.dev. (0.22.1b1 < 0.22.1, if some problem is found in 0.22.1.rc1, the next next pre-release would be 0.22.1.rc2). As the next release is imminent, we could be pragmatic and keep the identifier as-is for today > 0.22.1 is planned for wednesday september 17 After that release, the repository schould become "0.22.2.b1.dev": __version_info__ = VersionInfo( major=0, minor=22, micro=2, releaselevel='beta', # one of 'alpha', 'beta', 'candidate', 'final' serial=1, # pre-release number (0 for final releases and snapshots) release=False # True for official releases and pre-releases ) Günter |
From: Günter M. <mi...@us...> - 2025-09-15 12:30:11
|
Thank you for testing. so it should be fine with [Docutils 0.22.1.rc1](https://pypi.org/project/docutils/0.22.1rc1/). --- **[bugs:#508] qemu build problem after docutils update to 0.22** **Status:** open-fixed **Created:** Mon Aug 04, 2025 08:23 AM UTC by Thomas Klausner **Last Updated:** Sun Sep 14, 2025 07:05 AM UTC **Owner:** nobody After updating docutils in pkgsrc to 0.22 (with sphinx 8.2.3), qemu 10.0.3 (https://gitlab.com/qemu-project/qemu) stopped building. The output is not very clear: ``` [5596/6204] Generating docs/QEMU manual with a custom command FAILED: [code=2] docs/docs.stamp /scratch/emulators/qemu/work/.tools/bin/env CONFDIR=/usr/pkg/etc/qemu/qemu /scratch/emulators/qemu/work/qemu-10.0.3/build/pyvenv/bin/sphinx-build -q -j auto -Dversion=10.0.3 -Drelease= -Ddepfile=docs/docs.d -Ddepfile_sta mp=docs/docs.stamp -b html -d /scratch/emulators/qemu/work/qemu-10.0.3/build/docs/manual.p /scratch/emulators/qemu/work/qemu-10.0.3/docs /scratch/emulators/qemu/work/qemu-10.0.3/build/docs/manual Possible precedence problem between ! and pattern match (m//) at /scratch/emulators/qemu/work/qemu-10.0.3/docs/../scripts/kernel-doc line 1597. Possible precedence problem between ! and pattern match (m//) at /scratch/emulators/qemu/work/qemu-10.0.3/docs/../scripts/kernel-doc line 1597. Possible precedence problem between ! and pattern match (m//) at /scratch/emulators/qemu/work/qemu-10.0.3/docs/../scripts/kernel-doc line 1597. Possible precedence problem between ! and pattern match (m//) at /scratch/emulators/qemu/work/qemu-10.0.3/docs/../scripts/kernel-doc line 1597. Possible precedence problem between ! and pattern match (m//) at /scratch/emulators/qemu/work/qemu-10.0.3/docs/../scripts/kernel-doc line 1597. Possible precedence problem between ! and pattern match (m//) at /scratch/emulators/qemu/work/qemu-10.0.3/docs/../scripts/kernel-doc line 1597. Possible precedence problem between ! and pattern match (m//) at /scratch/emulators/qemu/work/qemu-10.0.3/docs/../scripts/kernel-doc line 1597. Possible precedence problem between ! and pattern match (m//) at /scratch/emulators/qemu/work/qemu-10.0.3/docs/../scripts/kernel-doc line 1597. Possible precedence problem between ! and pattern match (m//) at /scratch/emulators/qemu/work/qemu-10.0.3/docs/../scripts/kernel-doc line 1597. Possible precedence problem between ! and pattern match (m//) at /scratch/emulators/qemu/work/qemu-10.0.3/docs/../scripts/kernel-doc line 1597. Possible precedence problem between ! and pattern match (m//) at /scratch/emulators/qemu/work/qemu-10.0.3/docs/../scripts/kernel-doc line 1597. Possible precedence problem between ! and pattern match (m//) at /scratch/emulators/qemu/work/qemu-10.0.3/docs/../scripts/kernel-doc line 1597. /scratch/emulators/qemu/work/qemu-10.0.3/docs/../system/qtest.c:70: CRITICAL: Inconsistent title style: skip from level 1 to 3. Valid requests ^^^^^^^^^^^^^^ Established title styles: =/= - ^ [docutils] /scratch/emulators/qemu/work/qemu-10.0.3/docs/../system/qtest.c:73: CRITICAL: Inconsistent title style: skip from level 1 to 4. 10:17:35 [41/1829] Clock management: """"""""""""""""" Established title styles: =/= - ^ " [docutils] /scratch/emulators/qemu/work/qemu-10.0.3/docs/../system/qtest.c:107: CRITICAL: Inconsistent title style: skip from level 1 to 4. PIO and memory access: """""""""""""""""""""" Established title styles: =/= - ^ " [docutils] /scratch/emulators/qemu/work/qemu-10.0.3/docs/../system/qtest.c:215: CRITICAL: Inconsistent title style: skip from level 1 to 4. IRQ management: """"""""""""""" Established title styles: =/= - ^ " [docutils] /scratch/emulators/qemu/work/qemu-10.0.3/docs/../system/qtest.c:239: CRITICAL: Inconsistent title style: skip from level 1 to 4. Setting interrupt level: """""""""""""""""""""""" Established title styles: =/= - ^ " [docutils] Sphinx parallel build error! Versions ======== * Platform: netbsd11; (NetBSD-11.99.1-amd64-x86_64-64bit-ELF) * Python version: 3.13.5 (CPython) * Sphinx version: 8.2.3 * Docutils version: 0.22 * Jinja2 version: 3.1.6 * Pygments version: 2.19.2 Last Messages ============= reading sources... [ 91%] system/s390x/protvirt .. system/target-loongarch reading sources... [ 94%] system/target-m68k .. system/target-sparc64 reading sources... [ 97%] system/target-xtensa .. tools/qemu-nbd Loaded Extensions ================= * sphinx.ext.mathjax (8.2.3) * alabaster (1.0.0) * sphinxcontrib.applehelp (2.0.0) * sphinxcontrib.devhelp (2.0.0) * sphinxcontrib.htmlhelp (2.1.0) * sphinxcontrib.serializinghtml (2.0.0) * sphinxcontrib.qthelp (2.0.0) * depfile (1.0) * hxtool (1.0) * kerneldoc (1.0) * qapi_domain (1.0) * qapidoc (2.0) * qmp_lexer (unknown version) * dbusdoc (1.0) * sphinxcontrib.jquery (4.1) * sphinx_rtd_theme (unknown version) Traceback ========= File "/usr/pkg/lib/python3.13/site-packages/sphinx/util/parallel.py", line 137, in _join_one raise SphinxParallelError(*result) sphinx.errors.SphinxParallelError: TypeError: unsupported operand type(s) for +: 'NoneType' and 'list' The full traceback has been saved in: /tmp/sphinx-err-gj6pt4nj.log To report this error to the developers, please open an issue at <https://github.com/sphinx-doc/sphinx/issues/>. Thanks! Please also report this if it was a user error, so that a better error message can be provided next time. ``` The full traceback from the log lists docutils code as the origin of the breakage: ``` Traceback ========= (Error in parallel process) Traceback (most recent call last): File "/usr/pkg/lib/python3.13/site-packages/sphinx/util/parallel.py", line 83, in _process ret = func(arg) # type: ignore[call-arg] File "/usr/pkg/lib/python3.13/site-packages/sphinx/builders/__init__.py", line 603, in read_process self.read_doc(docname, _cache=False) ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/pkg/lib/python3.13/site-packages/sphinx/builders/__init__.py", line 648, in read_doc publisher.publish() ~~~~~~~~~~~~~~~~~^^ File "/usr/pkg/lib/python3.13/site-packages/docutils/core.py", line 269, in publish self.document = self.reader.read(self.source, self.parser, ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^ self.settings) ^^^^^^^^^^^^^^ File "/usr/pkg/lib/python3.13/site-packages/sphinx/io.py", line 103, in read self.parse() ~~~~~~~~~~^^ File "/usr/pkg/lib/python3.13/site-packages/docutils/readers/__init__.py", line 101, in parse self.parser.parse(self.input, document) ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^ File "/usr/pkg/lib/python3.13/site-packages/sphinx/parsers.py", line 86, in parse self.statemachine.run(inputlines, document, inliner=self.inliner) ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/pkg/lib/python3.13/site-packages/docutils/parsers/rst/states.py", line 165, in run results = StateMachineWS.run(self, input_lines, input_offset, input_source=document['source']) File "/usr/pkg/lib/python3.13/site-packages/docutils/statemachine.py", line 235, in run context, next_state, result = self.check_line( ~~~~~~~~~~~~~~~^ context, state, transitions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/pkg/lib/python3.13/site-packages/docutils/statemachine.py", line 447, in check_line return method(match, context, next_state) File "/usr/pkg/lib/python3.13/site-packages/docutils/parsers/rst/states.py", line 2356, in explicit_markup self.explicit_list(blank_finish) ~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^ File "/usr/pkg/lib/python3.13/site-packages/docutils/parsers/rst/states.py", line 2381, in explicit_list newline_offset, blank_finish = self.nested_list_parse( ~~~~~~~~~~~~~~~~~~~~~~^ self.state_machine.input_lines[offset:], ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ...<2 lines>... blank_finish=blank_finish, ^^^^^^^^^^^^^^^^^^^^^^^^^^ match_titles=self.state_machine.match_titles) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/pkg/lib/python3.13/site-packages/docutils/parsers/rst/states.py", line 312, in nested_list_parse state_machine.run(block, input_offset, memo=self.memo, ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ node=node, match_titles=match_titles) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/pkg/lib/python3.13/site-packages/docutils/parsers/rst/states.py", line 191, in run results = StateMachineWS.run(self, input_lines, input_offset) File "/usr/pkg/lib/python3.13/site-packages/docutils/statemachine.py", line 235, in run context, next_state, result = self.check_line( ~~~~~~~~~~~~~~~^ context, state, transitions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/pkg/lib/python3.13/site-packages/docutils/statemachine.py", line 447, in check_line return method(match, context, next_state) File "/usr/pkg/lib/python3.13/site-packages/docutils/parsers/rst/states.py", line 2659, in explicit_markup nodelist, blank_finish = self.explicit_construct(match) ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^ File "/usr/pkg/lib/python3.13/site-packages/docutils/parsers/rst/states.py", line 2366, in explicit_construct return method(self, expmatch) File "/usr/pkg/lib/python3.13/site-packages/docutils/parsers/rst/states.py", line 2103, in directive return self.run_directive( ~~~~~~~~~~~~~~~~~~^ directive_class, match, type_name, option_presets) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/pkg/lib/python3.13/site-packages/docutils/parsers/rst/states.py", line 2153, in run_directive result = directive_instance.run() File "/scratch/emulators/qemu/work/qemu-10.0.3/docs/sphinx/qapidoc.py", line 620, in run contentnode = self.transmogrify(schema) File "/scratch/emulators/qemu/work/qemu-10.0.3/docs/sphinx/qapidoc.py", line 549, in transmogrify nested_parse_with_titles(self.state, content, contentnode) ~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/pkg/lib/python3.13/site-packages/sphinx/util/nodes.py", line 378, in nested_parse_with_titles ret = state.nested_parse(content, content_offset, node, match_titles=True) File "/usr/pkg/lib/python3.13/site-packages/docutils/parsers/rst/states.py", line 275, in nested_parse state_machine.run(block, input_offset, memo=self.memo, ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ node=node, match_titles=match_titles) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/pkg/lib/python3.13/site-packages/docutils/parsers/rst/states.py", line 191, in run results = StateMachineWS.run(self, input_lines, input_offset) File "/usr/pkg/lib/python3.13/site-packages/docutils/statemachine.py", line 235, in run context, next_state, result = self.check_line( ~~~~~~~~~~~~~~~^ context, state, transitions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/pkg/lib/python3.13/site-packages/docutils/statemachine.py", line 447, in check_line return method(match, context, next_state) File "/usr/pkg/lib/python3.13/site-packages/docutils/parsers/rst/states.py", line 3024, in text self.section(title.lstrip(), source, style, lineno + 1, messages) ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/pkg/lib/python3.13/site-packages/docutils/parsers/rst/states.py", line 321, in section self.new_subsection(title, lineno, messages) ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/pkg/lib/python3.13/site-packages/docutils/parsers/rst/states.py", line 370, in new_subsection self.parent += section_node File "/usr/pkg/lib/python3.13/site-packages/docutils/nodes.py", line 736, in __radd__ return other + self.children ~~~~~~^~~~~~~~~~~~~~~ TypeError: unsupported operand type(s) for +: 'NoneType' and 'list' ``` Even with the "CRITICAL: Inconsistent title style" problems fixed, the build stops. Any ideas what the problem is or how to fix it? Thanks. --- Sent from sourceforge.net because doc...@li... is subscribed to https://sourceforge.net/p/docutils/bugs/ To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/docutils/admin/bugs/options. Or, if this is a mailing list, you can unsubscribe from the mailing list. |
From: Günter M. <mi...@us...> - 2025-09-15 12:28:18
|
Please try with [Docutils 0.22.1.rc1](https://pypi.org/project/docutils/0.22.1rc1/). --- **[bugs:#509] regression with docutils 0.22: unsupported operand type(s) for +: 'NoneType' and 'list'** **Status:** open-fixed **Created:** Wed Aug 06, 2025 06:13 PM UTC by Oliver Smith **Last Updated:** Sat Sep 06, 2025 10:56 AM UTC **Owner:** nobody Hello, after upgrading to docutils 0.22, building documentation for the pmbootstrap project fails: ~~~ Traceback (most recent call last): File "/usr/lib/python3.12/site-packages/sphinx/cmd/build.py", line 432, in build_main app.build(args.force_all, args.filenames) File "/usr/lib/python3.12/site-packages/sphinx/application.py", line 426, in build self.builder.build_update() File "/usr/lib/python3.12/site-packages/sphinx/builders/__init__.py", line 375, in build_update self.build( File "/usr/lib/python3.12/site-packages/sphinx/builders/__init__.py", line 403, in build updated_docnames = set(self.read()) ^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/sphinx/builders/__init__.py", line 519, in read self._read_serial(docnames) File "/usr/lib/python3.12/site-packages/sphinx/builders/__init__.py", line 584, in _read_serial self.read_doc(docname) File "/usr/lib/python3.12/site-packages/sphinx/builders/__init__.py", line 648, in read_doc publisher.publish() File "/usr/lib/python3.12/site-packages/docutils/core.py", line 269, in publish self.document = self.reader.read(self.source, self.parser, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/sphinx/io.py", line 103, in read self.parse() File "/usr/lib/python3.12/site-packages/docutils/readers/__init__.py", line 101, in parse self.parser.parse(self.input, document) File "/usr/lib/python3.12/site-packages/sphinx/parsers.py", line 86, in parse self.statemachine.run(inputlines, document, inliner=self.inliner) File "/usr/lib/python3.12/site-packages/docutils/parsers/rst/states.py", line 165, in run results = StateMachineWS.run(self, input_lines, input_offset, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/docutils/statemachine.py", line 235, in run context, next_state, result = self.check_line( ^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/docutils/statemachine.py", line 447, in check_line return method(match, context, next_state) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/docutils/parsers/rst/states.py", line 2354, in explicit_markup nodelist, blank_finish = self.explicit_construct(match) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/docutils/parsers/rst/states.py", line 2366, in explicit_construct return method(self, expmatch) ^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/docutils/parsers/rst/states.py", line 2103, in directive return self.run_directive( ^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/docutils/parsers/rst/states.py", line 2153, in run_directive result = directive_instance.run() ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/sphinxcontrib/autoprogram.py", line 262, in run nested_parse_with_titles(self.state, result, node) File "/usr/lib/python3.12/site-packages/sphinx/util/nodes.py", line 378, in nested_parse_with_titles ret = state.nested_parse(content, content_offset, node, match_titles=True) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/docutils/parsers/rst/states.py", line 275, in nested_parse state_machine.run(block, input_offset, memo=self.memo, File "/usr/lib/python3.12/site-packages/docutils/parsers/rst/states.py", line 191, in run results = StateMachineWS.run(self, input_lines, input_offset) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/docutils/statemachine.py", line 235, in run context, next_state, result = self.check_line( ^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/docutils/statemachine.py", line 447, in check_line return method(match, context, next_state) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/docutils/parsers/rst/states.py", line 2787, in underline self.section(title, source, style, lineno - 1, messages) File "/usr/lib/python3.12/site-packages/docutils/parsers/rst/states.py", line 321, in section self.new_subsection(title, lineno, messages) File "/usr/lib/python3.12/site-packages/docutils/parsers/rst/states.py", line 370, in new_subsection self.parent += section_node File "/usr/lib/python3.12/site-packages/docutils/nodes.py", line 736, in __radd__ return other + self.children ~~~~~~^~~~~~~~~~~~~~~ TypeError: unsupported operand type(s) for +: 'NoneType' and 'list' ~~~ Source code: https://gitlab.postmarketos.org/postmarketOS/pmbootstrap/ Tested with commit: 5927ff70b8d2468d5d0e2c978bc1fe30d036fd7f Distribution: Alpine Linux Edge --- Sent from sourceforge.net because doc...@li... is subscribed to https://sourceforge.net/p/docutils/bugs/ To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/docutils/admin/bugs/options. Or, if this is a mailing list, you can unsubscribe from the mailing list. |
From: engelbert g. <eng...@gm...> - 2025-09-13 17:32:10
|
Hei everyone, 0.22.1rc1 contains * docutils/parsers/rst/states.py - Relax "section title" system messages from SEVERE to ERROR. - Fix behaviour with nested parsing into a detached node (cf. bugs #508 and #509). - New attribute `NestedStateMachine.parent_state_machine`. Use case: update the "current node" of parent state machine(s) after nested parsing. - Better error messages for grid table markup errors (bug #504), based on patch #214 by Jynn Nelson. * docutils/writers/latex2e/__init__.py - Add cross-reference anchors (``\phantomsection\label{...}``) for elements with IDs (fixes bug #503). - Fix cross-reference anchor placement in figures, images, literal-blocks, tables, and (sub)titles. and improvements (see https://docutils.sourceforge.io/HISTORY.html) 0.22.1 is planned for wednesday september 17 please test cheers e |
From: Günter M. <mi...@us...> - 2025-09-13 08:33:57
|
The remaining issue is a way to tell `RSTState.nested_parse()` that it shall use a new, separate title style hierarchy for section headings (similar to Sphinx `nested_parse_to_nodes()`). --- **[bugs:#511] Problems with nested parsing and sections.** **Status:** pending-remind **Created:** Tue Aug 26, 2025 10:13 AM UTC by Günter Milde **Last Updated:** Sat Sep 13, 2025 08:31 AM UTC **Owner:** nobody **Attachments:** - [old_nested_parsing.py](https://sourceforge.net/p/docutils/bugs/511/attachment/old_nested_parsing.py) (7.5 kB; text/x-python) In Docutils <= 0.22, parsing a nested content block with `docutils.parsers.rst.state.RSTState.nested_parse()` uses the document-wide "title style hierarchy". With Docutils <=0.21, this method can **loose complete sections** without warning when the `match_titles` argument is True and the nested content block contains sections with a title style that matches a lower section level than the current section level (try the attached test with a Docutils version below 0.22). Docutils itself does not use `nested_parse()` with `match_titles` True and did not test. However, the feature is used by Sphinx and several Sphinx extensions (cf. [bugs:#508], [bugs:#509], and https://github.com/sphinx-doc/sphinx/issues/13845). The new section parsing algorithm introduced in Docutils 0.22 fixes the data loss, but sections with a title style that matches a lower section level than the current section level are attached in wrong order: After the nested parsing is complete, the calling parser continues where it left of, messing the order of elements in the doctree (try the attached test with [r10204]). This was fixed in [r10206] at the expense of dropping support for document-wide title styles in nested parsing. As a result, the Sphinx "only" directive (which uses a new section style hierarchy with later re-attachment of the first section) now fails: https://github.com/sphinx-doc/sphinx/issues/13861 --- Sent from sourceforge.net because doc...@li... is subscribed to https://sourceforge.net/p/docutils/bugs/ To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/docutils/admin/bugs/options. Or, if this is a mailing list, you can unsubscribe from the mailing list. |
From: Günter M. <mi...@us...> - 2025-09-13 08:31:46
|
Applied in [r10229]. --- **[bugs:#511] Problems with nested parsing and sections.** **Status:** pending-remind **Created:** Tue Aug 26, 2025 10:13 AM UTC by Günter Milde **Last Updated:** Mon Sep 08, 2025 07:18 PM UTC **Owner:** nobody **Attachments:** - [old_nested_parsing.py](https://sourceforge.net/p/docutils/bugs/511/attachment/old_nested_parsing.py) (7.5 kB; text/x-python) In Docutils <= 0.22, parsing a nested content block with `docutils.parsers.rst.state.RSTState.nested_parse()` uses the document-wide "title style hierarchy". With Docutils <=0.21, this method can **loose complete sections** without warning when the `match_titles` argument is True and the nested content block contains sections with a title style that matches a lower section level than the current section level (try the attached test with a Docutils version below 0.22). Docutils itself does not use `nested_parse()` with `match_titles` True and did not test. However, the feature is used by Sphinx and several Sphinx extensions (cf. [bugs:#508], [bugs:#509], and https://github.com/sphinx-doc/sphinx/issues/13845). The new section parsing algorithm introduced in Docutils 0.22 fixes the data loss, but sections with a title style that matches a lower section level than the current section level are attached in wrong order: After the nested parsing is complete, the calling parser continues where it left of, messing the order of elements in the doctree (try the attached test with [r10204]). This was fixed in [r10206] at the expense of dropping support for document-wide title styles in nested parsing. As a result, the Sphinx "only" directive (which uses a new section style hierarchy with later re-attachment of the first section) now fails: https://github.com/sphinx-doc/sphinx/issues/13861 --- Sent from sourceforge.net because doc...@li... is subscribed to https://sourceforge.net/p/docutils/bugs/ To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/docutils/admin/bugs/options. Or, if this is a mailing list, you can unsubscribe from the mailing list. |
From: engelbert g. <eng...@gm...> - 2025-09-11 17:26:37
|
by popular demand a quicker release friday sept 12 - 0.22.1rc1 wednesday 17 - 0.22.1 sorry for any inconvenience |
From: engelbert g. <eng...@gm...> - 2025-09-11 09:49:49
|
Hei everyone, the plan ----------- 0.22.1rc1 on tuesday september 16 0.22.1 on tuesday september 23 if it works out fine big thanks to Günter.for the work the main changes/fixes are (from HISTORY.rst) * docutils/parsers/rst/states.py - Relax "section title" system messages from SEVERE to ERROR. - Fix behaviour with nested parsing into a detached node (cf. bugs #508 and #509). - New attribute `NestedStateMachine.parent_state_machine`. Use case: update the "current node" of parent state machine(s) after nested parsing. - Better error messages for grid table markup errors (bug #504), based on patch #214 by Jynn Nelson. * docutils/transforms/references.py - Better error reports for hyperlinks with embedded URI or alias. * docutils/writers/latex2e/__init__.py - Add cross-reference anchors (``\phantomsection\label{...}``) for elements with IDs (fixes bug #503). - Fix cross-reference anchor placement in figures, images, literal-blocks, tables, and (sub)titles. all the best e |
From: Günter M. <mi...@us...> - 2025-09-08 19:18:52
|
Commit [r10226] fixes the [regeression in Sphinx](https://github.com/sphinx-doc/sphinx/issues/13861). In order to correctly support sections in nested parsing, it reverts to using `memo.section_level` to keep record of the current section level. This is cumbersome and error prone because it needs to be updated with every switch of the current node. The attached patch implements an alternative: Store the difference between the intended start level of nested parsing and the number of parents of the base node in the new attribute `section_level_offset`. Use it to correct the section level determined via `node.section_hierarchy()`. Attachments: - [0001-rST-parser-Use-section_level_offset-instead-of-memo..patch](https://sourceforge.net/p/docutils/bugs/_discuss/thread/4184882201/424c/attachment/0001-rST-parser-Use-section_level_offset-instead-of-memo..patch) (7.0 kB; text/x-patch) --- **[bugs:#511] Problems with nested parsing and sections.** **Status:** pending-remind **Created:** Tue Aug 26, 2025 10:13 AM UTC by Günter Milde **Last Updated:** Mon Sep 08, 2025 07:09 PM UTC **Owner:** nobody **Attachments:** - [old_nested_parsing.py](https://sourceforge.net/p/docutils/bugs/511/attachment/old_nested_parsing.py) (7.5 kB; text/x-python) In Docutils <= 0.22, parsing a nested content block with `docutils.parsers.rst.state.RSTState.nested_parse()` uses the document-wide "title style hierarchy". With Docutils <=0.21, this method can **loose complete sections** without warning when the `match_titles` argument is True and the nested content block contains sections with a title style that matches a lower section level than the current section level (try the attached test with a Docutils version below 0.22). Docutils itself does not use `nested_parse()` with `match_titles` True and did not test. However, the feature is used by Sphinx and several Sphinx extensions (cf. [bugs:#508], [bugs:#509], and https://github.com/sphinx-doc/sphinx/issues/13845). The new section parsing algorithm introduced in Docutils 0.22 fixes the data loss, but sections with a title style that matches a lower section level than the current section level are attached in wrong order: After the nested parsing is complete, the calling parser continues where it left of, messing the order of elements in the doctree (try the attached test with [r10204]). This was fixed in [r10206] at the expense of dropping support for document-wide title styles in nested parsing. As a result, the Sphinx "only" directive (which uses a new section style hierarchy with later re-attachment of the first section) now fails: https://github.com/sphinx-doc/sphinx/issues/13861 --- Sent from sourceforge.net because doc...@li... is subscribed to https://sourceforge.net/p/docutils/bugs/ To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/docutils/admin/bugs/options. Or, if this is a mailing list, you can unsubscribe from the mailing list. |
From: Günter M. <mi...@us...> - 2025-09-08 19:09:03
|
The fix is implemented in [r10223]. --- **[bugs:#511] Problems with nested parsing and sections.** **Status:** pending-remind **Created:** Tue Aug 26, 2025 10:13 AM UTC by Günter Milde **Last Updated:** Mon Sep 08, 2025 07:06 PM UTC **Owner:** nobody **Attachments:** - [old_nested_parsing.py](https://sourceforge.net/p/docutils/bugs/511/attachment/old_nested_parsing.py) (7.5 kB; text/x-python) In Docutils <= 0.22, parsing a nested content block with `docutils.parsers.rst.state.RSTState.nested_parse()` uses the document-wide "title style hierarchy". With Docutils <=0.21, this method can **loose complete sections** without warning when the `match_titles` argument is True and the nested content block contains sections with a title style that matches a lower section level than the current section level (try the attached test with a Docutils version below 0.22). Docutils itself does not use `nested_parse()` with `match_titles` True and did not test. However, the feature is used by Sphinx and several Sphinx extensions (cf. [bugs:#508], [bugs:#509], and https://github.com/sphinx-doc/sphinx/issues/13845). The new section parsing algorithm introduced in Docutils 0.22 fixes the data loss, but sections with a title style that matches a lower section level than the current section level are attached in wrong order: After the nested parsing is complete, the calling parser continues where it left of, messing the order of elements in the doctree (try the attached test with [r10204]). This was fixed in [r10206] at the expense of dropping support for document-wide title styles in nested parsing. As a result, the Sphinx "only" directive (which uses a new section style hierarchy with later re-attachment of the first section) now fails: https://github.com/sphinx-doc/sphinx/issues/13861 --- Sent from sourceforge.net because doc...@li... is subscribed to https://sourceforge.net/p/docutils/bugs/ To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/docutils/admin/bugs/options. Or, if this is a mailing list, you can unsubscribe from the mailing list. |
From: Günter M. <mi...@us...> - 2025-09-08 19:06:16
|
- Description has changed: Diff: ~~~~ --- old +++ new @@ -3,7 +3,7 @@ With Docutils <=0.21, this method can **loose complete sections** without warning when the `match_titles` argument is True and the nested content block contains sections with a title style that matches a lower section level than the current section level (try the attached test with a Docutils version below 0.22). Docutils itself does not use `nested_parse()` with `match_titles` True and did not test. -However, the feature is used by Sphinx and several Sphinx extensions (cf. [bugs:#508], [bugs#509], and https://github.com/sphinx-doc/sphinx/issues/13845). +However, the feature is used by Sphinx and several Sphinx extensions (cf. [bugs:#508], [bugs:#509], and https://github.com/sphinx-doc/sphinx/issues/13845). The new section parsing algorithm introduced in Docutils 0.22 fixes the data loss, but sections with a title style that matches a lower section level than the current section level are attached in wrong order: After the nested parsing is complete, the calling parser continues where it left of, messing the order of elements in the doctree (try the attached test with [r10204]). ~~~~ --- **[bugs:#511] Problems with nested parsing and sections.** **Status:** pending-remind **Created:** Tue Aug 26, 2025 10:13 AM UTC by Günter Milde **Last Updated:** Tue Sep 02, 2025 09:54 AM UTC **Owner:** nobody **Attachments:** - [old_nested_parsing.py](https://sourceforge.net/p/docutils/bugs/511/attachment/old_nested_parsing.py) (7.5 kB; text/x-python) In Docutils <= 0.22, parsing a nested content block with `docutils.parsers.rst.state.RSTState.nested_parse()` uses the document-wide "title style hierarchy". With Docutils <=0.21, this method can **loose complete sections** without warning when the `match_titles` argument is True and the nested content block contains sections with a title style that matches a lower section level than the current section level (try the attached test with a Docutils version below 0.22). Docutils itself does not use `nested_parse()` with `match_titles` True and did not test. However, the feature is used by Sphinx and several Sphinx extensions (cf. [bugs:#508], [bugs:#509], and https://github.com/sphinx-doc/sphinx/issues/13845). The new section parsing algorithm introduced in Docutils 0.22 fixes the data loss, but sections with a title style that matches a lower section level than the current section level are attached in wrong order: After the nested parsing is complete, the calling parser continues where it left of, messing the order of elements in the doctree (try the attached test with [r10204]). This was fixed in [r10206] at the expense of dropping support for document-wide title styles in nested parsing. As a result, the Sphinx "only" directive (which uses a new section style hierarchy with later re-attachment of the first section) now fails: https://github.com/sphinx-doc/sphinx/issues/13861 --- Sent from sourceforge.net because doc...@li... is subscribed to https://sourceforge.net/p/docutils/bugs/ To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/docutils/admin/bugs/options. Or, if this is a mailing list, you can unsubscribe from the mailing list. |
From: Günter M. <mi...@us...> - 2025-09-06 10:56:15
|
- **status**: open --> open-fixed - **Comment**: This should be fixed in [r10227]. Could you re-try? --- **[bugs:#509] regression with docutils 0.22: unsupported operand type(s) for +: 'NoneType' and 'list'** **Status:** open-fixed **Created:** Wed Aug 06, 2025 06:13 PM UTC by Oliver Smith **Last Updated:** Mon Aug 11, 2025 12:44 PM UTC **Owner:** nobody Hello, after upgrading to docutils 0.22, building documentation for the pmbootstrap project fails: ~~~ Traceback (most recent call last): File "/usr/lib/python3.12/site-packages/sphinx/cmd/build.py", line 432, in build_main app.build(args.force_all, args.filenames) File "/usr/lib/python3.12/site-packages/sphinx/application.py", line 426, in build self.builder.build_update() File "/usr/lib/python3.12/site-packages/sphinx/builders/__init__.py", line 375, in build_update self.build( File "/usr/lib/python3.12/site-packages/sphinx/builders/__init__.py", line 403, in build updated_docnames = set(self.read()) ^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/sphinx/builders/__init__.py", line 519, in read self._read_serial(docnames) File "/usr/lib/python3.12/site-packages/sphinx/builders/__init__.py", line 584, in _read_serial self.read_doc(docname) File "/usr/lib/python3.12/site-packages/sphinx/builders/__init__.py", line 648, in read_doc publisher.publish() File "/usr/lib/python3.12/site-packages/docutils/core.py", line 269, in publish self.document = self.reader.read(self.source, self.parser, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/sphinx/io.py", line 103, in read self.parse() File "/usr/lib/python3.12/site-packages/docutils/readers/__init__.py", line 101, in parse self.parser.parse(self.input, document) File "/usr/lib/python3.12/site-packages/sphinx/parsers.py", line 86, in parse self.statemachine.run(inputlines, document, inliner=self.inliner) File "/usr/lib/python3.12/site-packages/docutils/parsers/rst/states.py", line 165, in run results = StateMachineWS.run(self, input_lines, input_offset, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/docutils/statemachine.py", line 235, in run context, next_state, result = self.check_line( ^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/docutils/statemachine.py", line 447, in check_line return method(match, context, next_state) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/docutils/parsers/rst/states.py", line 2354, in explicit_markup nodelist, blank_finish = self.explicit_construct(match) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/docutils/parsers/rst/states.py", line 2366, in explicit_construct return method(self, expmatch) ^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/docutils/parsers/rst/states.py", line 2103, in directive return self.run_directive( ^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/docutils/parsers/rst/states.py", line 2153, in run_directive result = directive_instance.run() ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/sphinxcontrib/autoprogram.py", line 262, in run nested_parse_with_titles(self.state, result, node) File "/usr/lib/python3.12/site-packages/sphinx/util/nodes.py", line 378, in nested_parse_with_titles ret = state.nested_parse(content, content_offset, node, match_titles=True) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/docutils/parsers/rst/states.py", line 275, in nested_parse state_machine.run(block, input_offset, memo=self.memo, File "/usr/lib/python3.12/site-packages/docutils/parsers/rst/states.py", line 191, in run results = StateMachineWS.run(self, input_lines, input_offset) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/docutils/statemachine.py", line 235, in run context, next_state, result = self.check_line( ^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/docutils/statemachine.py", line 447, in check_line return method(match, context, next_state) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/docutils/parsers/rst/states.py", line 2787, in underline self.section(title, source, style, lineno - 1, messages) File "/usr/lib/python3.12/site-packages/docutils/parsers/rst/states.py", line 321, in section self.new_subsection(title, lineno, messages) File "/usr/lib/python3.12/site-packages/docutils/parsers/rst/states.py", line 370, in new_subsection self.parent += section_node File "/usr/lib/python3.12/site-packages/docutils/nodes.py", line 736, in __radd__ return other + self.children ~~~~~~^~~~~~~~~~~~~~~ TypeError: unsupported operand type(s) for +: 'NoneType' and 'list' ~~~ Source code: https://gitlab.postmarketos.org/postmarketOS/pmbootstrap/ Tested with commit: 5927ff70b8d2468d5d0e2c978bc1fe30d036fd7f Distribution: Alpine Linux Edge --- Sent from sourceforge.net because doc...@li... is subscribed to https://sourceforge.net/p/docutils/bugs/ To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/docutils/admin/bugs/options. Or, if this is a mailing list, you can unsubscribe from the mailing list. |