------------------------------------------------------------------- Thu Nov 6 09:20:50 UTC 2025 - Matej Cepl - Update to 0.22.3: - docutils/parsers/rst/directives/body.py, docutils/parsers/rst/directives/parts.py Do not flag uncategorized, auxiliary elements like sphinx.addnodes.only when testing for invalid parents of topics or sidebars (cf. https://github.com/sphinx-doc/sphinx/issues/14002). - docutils/parsers/rst/states.py More informative error messages when a substitution definition contains problematic or not supported content. Ignore combining characters when extracting a grid table block - docutils/parsers/rst/tableparser.py Ignore combining characters when parsing the grid table structure. Fixes bugs #128 and #512. - docutils/statemachine.py Fix handling of combining characters when extracting 2d-block. ------------------------------------------------------------------- Mon Sep 22 10:26:15 UTC 2025 - Daniel Garcia - Update to 0.22.2: - Remove a spurious vim .swp-file to fix bug #513. ------------------------------------------------------------------- Wed Sep 17 19:37:12 UTC 2025 - Matej Cepl - Update to 0.22.1: - Only documentation fixes. docutils/frontend.py, docutils/writers/ More consistent and concise command line help. docutils/nodes.py - nodes.Element.section_hierarchy() now returns only elements with non-empty "parent" attribute. 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. - Simplify code for images nested in reference or figure elements. - Update to 0.22.0: General - We have started to add type hints to Docutils (feature-request #87). - This will be a complex programme of work and as such, for the time being, these type hints are "provisional" and should not be relied upon. - By default, the Python interpreter treats type hints as annotations. Python >= 3.10 is required with active type hints (typing.TYPE_CHECKING == True). docs/ref/docutils.dtd - Allow multiple elements in a . Fixes feature-request #60 - The first element in a
may also be a (with nested "clickable" ). docutils/core.py - Removed Publisher.setup_option_parser() (internal, obsolete). - Allow a string value (component name or alias) in the "reader", "parser", and "writer" arguments of Publisher.__init__() and the publish_*() convenience functions. docutils/frontend.py - Drop short options -i and -o for --input-encoding and --output-encoding. - Change the default input encoding from None (auto-detect) to "utf-8". - Change the default value of the root_prefix setting to the empty string (no change to the behaviour). docutils/io.py - Change the default input encoding from None (auto-detect) to "utf-8". docutils/nodes.py - Raise TypeError if the "rawsource" argument in Element.__init__() is an Element instance. Catches errors like nodes.hint(nodes.paragraph()). - New element category classes SubStructural and PureTextElement. - Fix element categories. - New method Element.validate(): raise nodes.ValidationError if the element does not comply with the "Docutils Document Model". Provisional. - New "attribute validating functions" convert string representations to correct data type, normalize values, and raise ValueError for invalid attribute names or values. - New function parse_measure(). - Removed Element.set_class(). - Downgrade "duplicate ID" message level from SERIOUS to ERROR. - Fix recursion in Element.get_language_code(). - Do not insert elements for duplicate explicit targets if this results in an invalid doctree (cf. bug #489). - Don't include a "backlink" reference in system messages, if the referenced element is an external target (not visible in the output). - Don't invalidate indirect targets with duplicate name, if they refer to the same refname (similar to external targets refering to the same URI). docutils/parsers/docutils_xml.py - New parser for Docutils XML sources. Provisional. docutils/parsers/recommonmark_wrapper.py - New method Parser.finish_parse() to clean up (before validating). docutils/parsers/rst/languages/ - Remove mistranslations of the "admonition" directive name. docutils/parsers/rst/languages/en.py - Add alias "rst-class" for the "class" directive to improve the compatibility with Sphinx. docutils/parsers/rst/directives/__init__.py - Support CSS3 length units. Fixes feature-request #57. docutils/parsers/rst/directives/images.py - New option "figname" for the "figure" directive. Fixes feature-request #44. docutils/parsers/rst/directives/misc.py - Pass the included file's path to the parser when the "include" directive is used with :parser: option. Enables system messages with correct source/line info. - Pass default settings to custom parser for included file. docutils/parsers/rst/directives/references.py - Remove "name" from TargetNotes.option_spec. The "target-notes" directive generates one footnote element per external target but "name" must be unique across the document. So far, the name was silently dropped. docutils/parsers/rst/directives/tables.py - Removed CSVTable.decode_from_csv() and CSVTable.encode_from_csv(). Not required with Python 3. docutils/parsers/rst/roles.py - Renamed normalized_role_options() to normalize_options() (it is now also used for directive options). docutils/parsers/rst/states.py - Raise warning for empty footnotes and citations. - Add source and line info to elements. Fix line number of "start value not ordinal-1" INFO message. - Change section handling to not rely on exceptions and reparsing. Based on patch #213 by Arne Skjærholt. Fixes bug #346 (duplicate System Messages). - Use types.SimpleNamespace instead of a local definition for the auxilliary class states.Struct. - Warn about duplicate name in references with embedded internal targets. Fixes bug #502. - "Downgrade" targets generated from hyperlink references with embedded URI or alias from explicit to implicit (cf. bug #502). docutils/readers/__init__.py: - Deprecate "parser_name" argument of Reader.__init__(). docutils/transforms/frontmatter.py - Update DocInfo to work with corrected element categories. docutils/transforms/misc.py: - Fix for misc.Transitions: report an error if a element follows a or element as this is invalid according to docutils.dtd. docutils/transforms/references.py - Make AnonymousHyperlinks transform idempotent. - New transform CitationReferences. Marks citation_references as resolved if BibTeX is used by the backend (LaTeX). docutils/transforms/writer_aux.py - Removed Compound transform. docutils/transforms/universal.py - Messages transform now also handles "loose" system messages generated by the parser. docutils/utils/__init__.py - Removed Reporter.set_conditions(). Set attributes via configuration settings or directly. docutils/utils/_roman_numerals.py - New implementation or Roman numeral support. Replaces the local copy of the roman.py package. docutils/utils/error_reporting.py - Removed. Obsolete in Python 3. docutils/writers/docutils-xml.py - Do not increase indentation of follow-up lines inside inline elements. when formatting with indents. docutils/writers/__init__.py - New base class writers.DoctreeTranslator with auxiliary method uri2path(). docutils/writers/_html_base.py - Make MathML the default math_output. - Revise image size handling methods, use "width" and "height" attributes for unitless values. - Add "px" to unitless table "width" values. - Fix error when determining the document metadata title from the source path and the internal source attribute is None. docutils/writers/html4css1/__init__.py - Keep default math_output value "HTML math.css". - Add "px" to unitless table "width" values. docutils/writers/latex2e/__init__.py - LaTeXTranslator.to_latex_length(): Handle CSS3 length units. Remove optional argument pxunit (ignored since at least 2012). Drop trailing zeroes from length values. Move XeTeX-specific code to the "xetex" writer. - Don't wrap references with custom reference-label in a \hyperref command. - Mark the main language when loading "babel". - Provide an "unknown_references_resolver" (cf. docutils/TransformSpec) for citation references resolved with BibTeX (cf. use_bibtex setting). - Support SVG image inclusion with the "svg" LaTeX package (see the stylesheet configuration setting). Solves feature-request #83 - Add "template" to the parts returned by Writer.assemble_parts(). - Use standard dict for LaTeXTranslator.requirements and LaTeXTranslator.fallbacks. - Use "title" attribute in pdfinfo. - Encode element content in pdfinfo. - Improve formatting of docinfo fields. - LaTeXTranslator.pop_output_collector() now returns the popped list. - Replace Writer.bibtex_reference_resolver() with a transform. - LaTeXTranslator.visit_inline() now inserts labels for the node's IDs. - Disable footnote handling by the "hyperref" LaTeX package (Docutils' \DUfootnotemark and \DUfootnotetext macros implement hyperlinks and backlinks). Avoids "empty anchor" warnings. - Fix target position and re-style system messages. - Don't merge paragraphs if there is a target between them. docutils/writers/latex2e/docutils.sty - Replace use of \ifthenelse{\isundefined... (from "ifthen.sty") with the eTeX primitive \ifdefined. - Add macros to emulate CSS3 length units unknown to LaTeX. docutils/writers/manpage.py - Remove code for unused emdash bullets. - Print Docutils version in header comment (feature-request #105). - Stop converting text to full capitals (bug #481). - Fix reference output (bug #497). - Use macros .UR/.UE for hyperlink references unless the new configuration setting text_references is True. The current default is True (text references), it will change to False (macro references) in Docutils 1.0. - Do not drop text of internal targets. docutils/writers/null.py - null.Writer.translate() sets self.output to the empty string. docutils/writers/odf_odt/__init__.py - Use "px" as fallback unit for unitless image size attributes. - Fix conversion factor of "pc" (pica) to "cm". - Fix conversion of image width in "%" if the height is specified. - Adjust fallback DPI value (currently not used) to match CSS units. - Fix errors with *.xml style files (bug #494). - Use "title" attribute in document metadata. pyproject.toml - Add tox.ini to the "include" list (fixes bug #486). tools/rst2odt.py - Use core.publish_file() instead of core.publish_file_to_binary(). tools/rst2odt_prepstyles.py - Removed. Use python -m docutils.writers.odf_odt.prepstyles. ------------------------------------------------------------------- Fri Jan 17 09:00:56 UTC 2025 - Nico Krapp - fix alternatives ------------------------------------------------------------------- Wed Jan 15 13:51:33 UTC 2025 - Nico Krapp - Use libalternatives instead of update-alternatives, bsc#1235783 ------------------------------------------------------------------- Sun Nov 3 05:32:05 UTC 2024 - Steve Kowalik - Update to 0.21.2: * General: + Drop support for Python 3.7 and 3.8. + Provide rst2* "console_scripts" entry points (without the .py extension) instead of installing the rst2*.py front end tools in the binary PATH. + Use docutils --reader=pep --writer=pep_html for a PEP preview. + Use python -m docutils.writers.odf_odt.prepstyles to strip the page size from an ODT writer stylesheet. + Use the same CSV format for the :header: option and the main data of the "csv-table" directive. + New option "loading" for the "image" directive. Sets the new attribute loading of the doctree element. * Configuration changes: + New configuration setting root_prefix. Configurable root directory for included files. + New configuration setting sources for the "buildhtml.py" application. + Simpler and more secure input encoding default behaviour: # Do not use the locale encoding as fallback if Python is started in UTF-8 mode. Stop using "latin1" as second fallback. # Remove BOM (U+FEFF ZWNBSP at start of data) only if the input_encoding configuration setting is None, '', 'utf-8-sig', 'utf-16', or 'utf-32'. Do not remove other ZWNBSPs. ------------------------------------------------------------------- Sat Mar 30 15:15:42 UTC 2024 - Ben Greiner - 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 - Drop obsolete Requires & BuildRequires on python-packaging & python-xml ------------------------------------------------------------------- Fri Nov 10 02:31:29 UTC 2023 - Steve Kowalik - 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
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 - python-roman is not actually necessary for testing. ------------------------------------------------------------------- Fri Apr 21 12:24:23 UTC 2023 - Dirk Müller - add sle15_python_module_pythons (jsc#PED-68) ------------------------------------------------------------------- Sun Apr 16 01:30:00 UTC 2023 - Matej Cepl - Update single spec from Factory ------------------------------------------------------------------- Tue Jan 24 07:15:02 UTC 2023 - Steve Kowalik - Refactor pygments-2.14.patch to not use distutils. ------------------------------------------------------------------- Tue Jan 10 15:42:55 UTC 2023 - Daniel Garcia - Delete sphix-6.0.0.patch - Add pygments-2.14.patch - The patch is related to pygments not Sphinx and the patch is updated to make it conditional so it work with older versions of pygments, shp#docutils#201 ------------------------------------------------------------------- Wed Jan 4 13:09:13 UTC 2023 - Daniel Garcia - Add sphinx-6.0.0.patch to fix tests for new version of sphinx. ------------------------------------------------------------------- Wed Nov 2 12:32:50 UTC 2022 - Matej Cepl - Release 0.19 (2022-07-05) - General - Dropped support for Python 2.7, 3.5, and 3.6. and removed compatibility hacks from code and tests. - Code cleanup, check PEP 8 conformity with flake8 (exceptions in file tox.ini). - New module. Support for python -m docutils. Also used for the docutils console script entry point. - Let Publisher.publish() print info and prompt when waiting for input from a terminal (cf. https://clig.dev/#interactivity). - Respect "input_encoding_error_handler" setting when opening a source. - New function error_string() obsoletes utils.error_reporting.ErrorString. - Class ErrorOutput moved here from utils/error_reporting. - Use "utf-8-sig" instead of Python's default encoding if the "input_encoding" setting is None. - Fix error when reading of UTF-16 encoded source without trailing newline. - Aliases "markdown" and "commonmark" point to "commonmark_wrapper". - Alias for the "myst" parser (https://pypi.org/project/myst-docutils). - Use absolute module names in _parser_aliases instead of two import attempts. (Keeps details if the recommonmark_wrapper.py module raises an ImportError.) - Prepend parser name to ImportError if importing a parser class fails. - New module for parsing CommonMark input. Selects a locally installed 3rd-party parser (pycmark, myst, or recommonmark). - Raise ImportError, if import of the upstream parser module fails. If called from an "include" directive, the system-message now has source/line info. - Adapt to and test with "recommonmark" versions 0.6.0 and 0.7.1. - Update PEP base URL (fixes bug #445), use "https:" scheme in RFC base URL. - Add reporter to Directive class attributes. - parser_name() keeps details if converting ImportError to ValueError. - Don't use mutable default values for function arguments. Fixes bug #430. - Fix bug #435: invalid references in problematic nodes with report_level=4. - decode_path() returns str instance instead of nodes.reprunicode. - Add deprecation warning. - Add "html writers" to config_section_dependencies. Fixes bug #443. - Write table column widths with 3 digits precision. Fixes bug #444. - Add space before "charset" meta tag closing sequence. - Remove class value "controls" from an image node with video content after converting it to a "control" attribute of the