Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-sphinxcontrib-plantuml for
openSUSE:Factory checked in at 2026-03-24 18:50:16
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-sphinxcontrib-plantuml (Old)
and /work/SRC/openSUSE:Factory/.python-sphinxcontrib-plantuml.new.8177
(New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-sphinxcontrib-plantuml"
Tue Mar 24 18:50:16 2026 rev:12 rq:1342227 version:0.31
Changes:
--------
---
/work/SRC/openSUSE:Factory/python-sphinxcontrib-plantuml/python-sphinxcontrib-plantuml.changes
2025-01-24 13:40:50.535742407 +0100
+++
/work/SRC/openSUSE:Factory/.python-sphinxcontrib-plantuml.new.8177/python-sphinxcontrib-plantuml.changes
2026-03-24 18:51:13.512290268 +0100
@@ -1,0 +2,9 @@
+Tue Mar 24 12:27:55 UTC 2026 - Dirk Müller <[email protected]>
+
+- update to 0.31:
+ * use inspect.getdoc() to get around breaking change in Python 3.13
+ * search for ImageConverter capable of svg to pdf conversion
+ after init
+- reenable tests
+
+-------------------------------------------------------------------
Old:
----
sphinxcontrib-plantuml-0.30.tar.gz
New:
----
sphinxcontrib-plantuml-0.31.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-sphinxcontrib-plantuml.spec ++++++
--- /var/tmp/diff_new_pack.NwN9om/_old 2026-03-24 18:51:14.052312605 +0100
+++ /var/tmp/diff_new_pack.NwN9om/_new 2026-03-24 18:51:14.056312771 +0100
@@ -1,7 +1,7 @@
#
# spec file for package python-sphinxcontrib-plantuml
#
-# Copyright (c) 2025 SUSE LLC
+# Copyright (c) 2026 SUSE LLC and contributors
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -18,7 +18,7 @@
%{?sle15_python_module_pythons}
Name: python-sphinxcontrib-plantuml
-Version: 0.30
+Version: 0.31
Release: 0
Summary: Sphinx API for Web Apps
License: BSD-2-Clause
@@ -59,9 +59,7 @@
%check
# upstream knows:
https://github.com/sphinx-contrib/plantuml/commit/e1b3f7e709eae0e95c70564a7e42279db08c8447
# s/class="figure"/class="figure align-default"/ in test_functional.py
-# Allow testsuite to fail, completely broken under Python 3.13
-# https://github.com/sphinx-contrib/plantuml/issues/99
-%pytest -k 'not test_buildhtml_name' || :
+%pytest -k 'not test_buildhtml_name'
%files %{python_files}
%doc README.rst
++++++ sphinxcontrib-plantuml-0.30.tar.gz -> sphinxcontrib-plantuml-0.31.tar.gz
++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/plantuml-0.30/.github/workflows/python-package.yml
new/plantuml-0.31/.github/workflows/python-package.yml
--- old/plantuml-0.30/.github/workflows/python-package.yml 2024-05-22
15:30:06.000000000 +0200
+++ new/plantuml-0.31/.github/workflows/python-package.yml 2025-09-03
13:05:11.000000000 +0200
@@ -16,12 +16,12 @@
strategy:
fail-fast: false
matrix:
- python-version: [3.7, 3.8, 3.9]
+ python-version: [3.8, 3.12, 3.13]
steps:
- - uses: actions/checkout@v2
+ - uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
- uses: actions/setup-python@v2
+ uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/plantuml-0.30/README.rst new/plantuml-0.31/README.rst
--- old/plantuml-0.30/README.rst 2024-05-22 15:30:06.000000000 +0200
+++ new/plantuml-0.31/README.rst 2025-09-03 13:05:11.000000000 +0200
@@ -90,14 +90,20 @@
plantuml_latex_output_format
Type of output image for LaTeX renderer. (default: 'png')
+ :svg_pdf: generate .svg and convert it to .pdf (requires registered
ImageConverter)
+ :eps_pdf: generate .eps and convert it to .pdf (requires `epstopdf`)
+ :pdf: use `svg_pdf` if available, fallback to `eps_pdf`
:eps: generate .eps (not supported by `pdflatex`)
- :pdf: generate .eps and convert it to .pdf (requires `epstopdf`)
:png: generate .png
:tikz: generate .latex in the TikZ format
:none: do not generate any images (ignore uml directive)
- Because embedded png looks pretty bad, it is recommended to choose `pdf`
- for `pdflatex` or `eps` for `platex`.
+ Because embedded png looks pretty bad, it is recommended
+ to choose `svg_pdf`.
+
+ An example for the registered ImageConverter would be
+ sphinxcontrib.inkscapeconverter from sphinxcontrib-svg2pdfconverter.
+ The first detected converter that supports .svg to .pdf is used.
plantuml_epstopdf
Path to epstopdf executable. (default: 'epstopdf')
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/plantuml-0.30/setup.py new/plantuml-0.31/setup.py
--- old/plantuml-0.30/setup.py 2024-05-22 15:30:06.000000000 +0200
+++ new/plantuml-0.31/setup.py 2025-09-03 13:05:11.000000000 +0200
@@ -6,7 +6,7 @@
setup(
name='sphinxcontrib-plantuml',
- version='0.30',
+ version='0.31',
url='https://github.com/sphinx-contrib/plantuml/',
download_url='https://pypi.python.org/pypi/sphinxcontrib-plantuml',
license='BSD',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/plantuml-0.30/sphinxcontrib/plantuml.py
new/plantuml-0.31/sphinxcontrib/plantuml.py
--- old/plantuml-0.30/sphinxcontrib/plantuml.py 2024-05-22 15:30:06.000000000
+0200
+++ new/plantuml-0.31/sphinxcontrib/plantuml.py 2025-09-03 13:05:11.000000000
+0200
@@ -35,6 +35,8 @@
ensuredir,
)
+from sphinx.transforms.post_transforms.images import ImageConverter
+
try:
from PIL import Image
except ImportError:
@@ -614,9 +616,30 @@
return refname[:-4] + '.pdf', fname[:-4] + '.pdf'
+def _convert_svg_to_pdf_default(node, refname, fname):
+ raise PlantUmlError('no ImageConverter for svg to pdf was found')
+
+
+def _svg_to_pdf_init(app):
+ for transform in app.registry.get_post_transforms():
+ if issubclass(transform, ImageConverter):
+ for source_type, target_type in transform.conversion_rules:
+ if 'svg' in source_type and 'pdf' in target_type:
+
+ def _convert_svg_to_pdf(node, refname, fname,
transform=transform):
+ transform(node.document).convert(fname, fname[:-4] +
'.pdf')
+ return (refname[:-4] + '.pdf', fname[:-4] + '.pdf')
+
+ _KNOWN_LATEX_FORMATS['pdf'] = ('svg', _convert_svg_to_pdf)
+ _KNOWN_LATEX_FORMATS['svg_pdf'] = ('svg',
_convert_svg_to_pdf)
+ return
+
+
_KNOWN_LATEX_FORMATS = {
'eps': ('eps', lambda self, refname, fname: (refname, fname)),
'pdf': ('eps', _convert_eps_to_pdf),
+ 'eps_pdf': ('eps', _convert_eps_to_pdf),
+ 'svg_pdf': ('svg', _convert_svg_to_pdf_default),
'png': ('png', lambda self, refname, fname: (refname, fname)),
'tikz': ('latex', lambda self, refname, fname: (refname, fname)),
}
@@ -821,6 +844,7 @@
app.add_config_value('plantuml_cache_path', '_plantuml', '')
app.add_config_value('plantuml_batch_size', 1, '')
app.connect('builder-inited', _on_builder_inited)
+ app.connect('builder-inited', _svg_to_pdf_init)
app.connect('doctree-read', _on_doctree_read)
app.connect('doctree-resolved', _on_doctree_resolved)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/plantuml-0.30/tests/test_functional.py
new/plantuml-0.31/tests/test_functional.py
--- old/plantuml-0.30/tests/test_functional.py 2024-05-22 15:30:06.000000000
+0200
+++ new/plantuml-0.31/tests/test_functional.py 2025-09-03 13:05:11.000000000
+0200
@@ -1,4 +1,5 @@
import glob
+import inspect
import os
import re
import tempfile
@@ -55,7 +56,7 @@
rst2pdf.__file__
except ImportError:
raise unittest.SkipTest
- src = '\n'.join(l[4:] for l in func.__doc__.splitlines()[2:])
+ src = ''.join(inspect.getdoc(func).splitlines(keepends=True)[2:])
os.mkdir(_outdir)
try:
runsphinx(src, builder, confoverrides)