|
From: Günter M. <mi...@us...> - 2025-12-01 22:44:43
|
Thank you for the report.
The issue is fixed in [r10267].
---
**[bugs:#514] publish_file no longer works / crashes**
**Status:** open
**Created:** Sat Nov 15, 2025 05:26 PM UTC by Kristian Lehto
**Last Updated:** Sun Nov 16, 2025 04:58 AM UTC
**Owner:** nobody
Hello,
We are using code bellow to convert rst files to html.
Code works fine if we use old docutils version 0.20.1.
python -m pip install docutils==0.20.1
But current 0.22.3 version crashes.
import io
from docutils.core import publish_file
text = open('test.rst', 'rb').read()
source = io.BytesIO(text)
destination = open('test.html', 'w')
publish_file(source=source, destination=destination, writer_name='html')
destination.close()
source.close()
Traceback (most recent call last):
File "C:\projects\test\test.py", line 7, in <module>
publish_file(source=source, destination=destination, writer_name='html')
~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Python314\Lib\site-packages\docutils\core.py", line 465, in publish_file
output, _publisher = publish_programmatically(
~~~~~~~~~~~~~~~~~~~~~~~~^
source_class=io.FileInput, source=source, source_path=source_path,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
...<7 lines>...
config_section=config_section,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
enable_exit_status=enable_exit_status)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Python314\Lib\site-packages\docutils\core.py", line 794, in publish_programmatically
output = publisher.publish(enable_exit_status=enable_exit_status)
File "C:\Python314\Lib\site-packages\docutils\core.py", line 269, in publish
self.document = self.reader.read(self.source, self.parser,
~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^
self.settings)
^^^^^^^^^^^^^^
File "C:\Python314\Lib\site-packages\docutils\readers\__init__.py", line 95, in read
self.parse()
~~~~~~~~~~^^
File "C:\Python314\Lib\site-packages\docutils\readers\__init__.py", line 101, in parse
self.parser.parse(self.input, document)
~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^
File "C:\Python314\Lib\site-packages\docutils\parsers\rst\__init__.py", line 175, in parse
inputlines = docutils.statemachine.string2lines(
inputstring, tab_width=document.settings.tab_width,
convert_whitespace=True)
File "C:\Python314\Lib\site-packages\docutils\statemachine.py", line 1515, in string2lines
astring = whitespace.sub(' ', astring)
TypeError: cannot use a string pattern on a bytes-like object
---
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. |