python-reportlab fails to build with Python 3.12.0a3. Traceback (most recent call last): File "/builddir/build/BUILD/reportlab-3.6.12/docs/userguide/genuserguide.py", line 107, in <module> main() File "/builddir/build/BUILD/reportlab-3.6.12/docs/userguide/genuserguide.py", line 105, in main run(pagesize, verbose,outDir) File "/builddir/build/BUILD/reportlab-3.6.12/docs/userguide/genuserguide.py", line 56, in run exec(open_and_read(f+'.py', mode='r'), G, G) File "<string>", line 175, in <module> File "/builddir/build/BUILD/reportlab-3.6.12/docs/userguide/reportlab/graphics/charts/textlabels.py", line 20, in <module> from ..utils import text2Path as _text2Path #here for continuity ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/builddir/build/BUILD/reportlab-3.6.12/docs/userguide/reportlab/graphics/utils.py", line 9, in <module> from . _renderPM import makeT1Font ImportError: /builddir/build/BUILD/reportlab-3.6.12/docs/userguide/reportlab/graphics/_renderPM.cpython-312-x86_64-linux-gnu.so: undefined symbol: PyUnicode_AsUnicode F......... ====================================================================== ERROR: test0 (test_renderPS.RenderPSAxesTestCase.test0) Test two strings in drawing. ---------------------------------------------------------------------- Traceback (most recent call last): File "/builddir/build/BUILD/reportlab-3.6.12/tests/test_renderPS.py", line 193, in test0 from reportlab.graphics.charts.axes import XCategoryAxis File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/charts/axes.py", line 43, in <module> from reportlab.graphics.charts.textlabels import Label, PMVLabel, XLabel, DirectDrawFlowable File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/charts/textlabels.py", line 20, in <module> from ..utils import text2Path as _text2Path #here for continuity ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/utils.py", line 9, in <module> from . _renderPM import makeT1Font ImportError: /builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/_renderPM.cpython-312-x86_64-linux-gnu.so: undefined symbol: PyUnicode_AsUnicode ====================================================================== ERROR: test6 (test_lib_utils.ImporterTestCase.test6) recursive attribute setting/getting on drawings ---------------------------------------------------------------------- Traceback (most recent call last): File "/builddir/build/BUILD/reportlab-3.6.12/tests/test_lib_utils.py", line 107, in test6 from reportlab.graphics.charts.barcharts import sampleH1 File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/charts/barcharts.py", line 25, in <module> from reportlab.graphics.charts.axes import XCategoryAxis, YValueAxis, YCategoryAxis, XValueAxis File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/charts/axes.py", line 43, in <module> from reportlab.graphics.charts.textlabels import Label, PMVLabel, XLabel, DirectDrawFlowable File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/charts/textlabels.py", line 20, in <module> from ..utils import text2Path as _text2Path #here for continuity ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/utils.py", line 9, in <module> from . _renderPM import makeT1Font ImportError: /builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/_renderPM.cpython-312-x86_64-linux-gnu.so: undefined symbol: PyUnicode_AsUnicode ====================================================================== ERROR: test0 (test_graphics_render.RenderTestCase.test0) ---------------------------------------------------------------------- Traceback (most recent call last): File "/builddir/build/BUILD/reportlab-3.6.12/tests/test_graphics_render.py", line 146, in test0 assert test(self.outDir) is None ^^^^^^^^^^^^^^^^^ File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/renderPS.py", line 954, in test drawing = func() ^^^^^^ File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/testshapes.py", line 465, in getDrawing14 im0 = smallArrow() ^^^^^^^^^^^^ File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/testshapes.py", line 455, in smallArrow from reportlab.graphics.renderPM import _getImage File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/renderPM.py", line 20, in <module> from .utils import setFont as _setFont, RenderPMError File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/utils.py", line 9, in <module> from . _renderPM import makeT1Font ImportError: /builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/_renderPM.cpython-312-x86_64-linux-gnu.so: undefined symbol: PyUnicode_AsUnicode ====================================================================== ERROR: test1 (test_graphics_render.RenderTestCase.test1) ---------------------------------------------------------------------- Traceback (most recent call last): File "/builddir/build/BUILD/reportlab-3.6.12/tests/test_graphics_render.py", line 150, in test1 assert test(self.outDir) is None ^^^^^^^^^^^^^^^^^ File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/renderPDF.py", line 356, in test drawing = func() #execute it ^^^^^^ File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/testshapes.py", line 465, in getDrawing14 im0 = smallArrow() ^^^^^^^^^^^^ File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/testshapes.py", line 455, in smallArrow from reportlab.graphics.renderPM import _getImage File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/renderPM.py", line 20, in <module> from .utils import setFont as _setFont, RenderPMError File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/utils.py", line 9, in <module> from . _renderPM import makeT1Font ImportError: /builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/_renderPM.cpython-312-x86_64-linux-gnu.so: undefined symbol: PyUnicode_AsUnicode ====================================================================== ERROR: test3 (test_graphics_render.RenderTestCase.test3) ---------------------------------------------------------------------- Traceback (most recent call last): File "/builddir/build/BUILD/reportlab-3.6.12/tests/test_graphics_render.py", line 158, in test3 from reportlab.graphics.renderSVG import test File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/renderSVG.py", line 22, in <module> from .renderPM import _getImage File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/renderPM.py", line 20, in <module> from .utils import setFont as _setFont, RenderPMError File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/utils.py", line 9, in <module> from . _renderPM import makeT1Font ImportError: /builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/_renderPM.cpython-312-x86_64-linux-gnu.so: undefined symbol: PyUnicode_AsUnicode ====================================================================== ERROR: test4 (test_graphics_render.RenderTestCase.test4) ---------------------------------------------------------------------- Traceback (most recent call last): File "/builddir/build/BUILD/reportlab-3.6.12/tests/test_graphics_render.py", line 164, in test4 FillModeDrawing(fillMode=fm).save(formats=formats,outDir=self.outDir,fnRoot='fillmode-'+('non-zero' if fm else 'even-odd')) File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/shapes.py", line 770, in save from reportlab.graphics import renderSVG File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/renderSVG.py", line 22, in <module> from .renderPM import _getImage File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/renderPM.py", line 20, in <module> from .utils import setFont as _setFont, RenderPMError File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/utils.py", line 9, in <module> from . _renderPM import makeT1Font ImportError: /builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/_renderPM.cpython-312-x86_64-linux-gnu.so: undefined symbol: PyUnicode_AsUnicode ====================================================================== ERROR: testWidget (test_graphics_layout.BoundsTestCase.testWidget) ---------------------------------------------------------------------- Traceback (most recent call last): File "/builddir/build/BUILD/reportlab-3.6.12/tests/test_graphics_layout.py", line 65, in testWidget from reportlab.graphics.charts.barcharts import VerticalBarChart File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/charts/barcharts.py", line 25, in <module> from reportlab.graphics.charts.axes import XCategoryAxis, YValueAxis, YCategoryAxis, XValueAxis File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/charts/axes.py", line 43, in <module> from reportlab.graphics.charts.textlabels import Label, PMVLabel, XLabel, DirectDrawFlowable File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/charts/textlabels.py", line 20, in <module> from ..utils import text2Path as _text2Path #here for continuity ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/utils.py", line 9, in <module> from . _renderPM import makeT1Font ImportError: /builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/_renderPM.cpython-312-x86_64-linux-gnu.so: undefined symbol: PyUnicode_AsUnicode ====================================================================== ERROR: tearDownClass (test_graphics_images.ImageTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/builddir/build/BUILD/reportlab-3.6.12/tests/test_graphics_images.py", line 42, in tearDownClass d.save(formats=['png', 'gif', 'ps','svg'],outDir=os.path.dirname(outPath), fnRoot='test_graphics_images', _renderPM_backend='_renderPM') File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/shapes.py", line 737, in save from reportlab.graphics import renderPM File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/renderPM.py", line 20, in <module> from .utils import setFont as _setFont, RenderPMError File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/utils.py", line 9, in <module> from . _renderPM import makeT1Font ImportError: /builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/_renderPM.cpython-312-x86_64-linux-gnu.so: undefined symbol: PyUnicode_AsUnicode ====================================================================== ERROR: test_graphics_barcode (test_graphics_barcode.BarcodeWidgetTestCase.test_graphics_barcode) ---------------------------------------------------------------------- Traceback (most recent call last): File "/builddir/build/BUILD/reportlab-3.6.12/tests/test_graphics_barcode.py", line 340, in test_graphics_barcode self.createSample('test_cbcim.png',createBarcodeImageInMemory('EAN13', value='123456789012')) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/barcode/__init__.py", line 152, in createBarcodeImageInMemory return d.asString(format) ^^^^^^^^^^^^^^^^^^ File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/shapes.py", line 806, in asString from reportlab.graphics import renderPM File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/renderPM.py", line 20, in <module> from .utils import setFont as _setFont, RenderPMError File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/utils.py", line 9, in <module> from . _renderPM import makeT1Font ImportError: /builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/_renderPM.cpython-312-x86_64-linux-gnu.so: undefined symbol: PyUnicode_AsUnicode ====================================================================== ERROR: test_qr_code_with_comma (test_graphics_barcode.BarcodeWidgetTestCase.test_qr_code_with_comma) ---------------------------------------------------------------------- Traceback (most recent call last): File "/builddir/build/BUILD/reportlab-3.6.12/tests/test_graphics_barcode.py", line 324, in test_qr_code_with_comma D.save(['gif','pict','pdf'], outDir=self.outDir, fnRoot="QR_with_comma") File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/shapes.py", line 737, in save from reportlab.graphics import renderPM File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/renderPM.py", line 20, in <module> from .utils import setFont as _setFont, RenderPMError File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/utils.py", line 9, in <module> from . _renderPM import makeT1Font ImportError: /builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/_renderPM.cpython-312-x86_64-linux-gnu.so: undefined symbol: PyUnicode_AsUnicode ====================================================================== FAIL: test0 (test_docs_build.ManualTestCase.test0) Test if all manuals buildable from source. ---------------------------------------------------------------------- Traceback (most recent call last): File "/builddir/build/BUILD/reportlab-3.6.12/tests/test_docs_build.py", line 29, in test0 assert os.path.isfile('reportlab-userguide.pdf'), 'genAll.py failed to generate reportlab-userguide.pdf!' AssertionError: genAll.py failed to generate reportlab-userguide.pdf! ---------------------------------------------------------------------- Ran 333 tests in 9.125s FAILED (failures=1, errors=10, skipped=8) ###################### the following tests could not be imported file: "/builddir/build/BUILD/reportlab-3.6.12/tests/test_widgets_grids.py" Traceback (most recent call last): File "/builddir/build/BUILD/reportlab-3.6.12/tests/runAll.py", line 68, in makeSuite exec('import %s as module' % modname,ns) File "<string>", line 1, in <module> File "/builddir/build/BUILD/reportlab-3.6.12/tests/test_widgets_grids.py", line 9, in <module> from reportlab.graphics import renderSVG File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/renderSVG.py", line 22, in <module> from .renderPM import _getImage File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/renderPM.py", line 20, in <module> from .utils import setFont as _setFont, RenderPMError File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/utils.py", line 9, in <module> from . _renderPM import makeT1Font ImportError: /builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/_renderPM.cpython-312-x86_64-linux-gnu.so: undefined symbol: PyUnicode_AsUnicode file: "/builddir/build/BUILD/reportlab-3.6.12/tests/test_renderSVG.py" Traceback (most recent call last): File "/builddir/build/BUILD/reportlab-3.6.12/tests/runAll.py", line 68, in makeSuite exec('import %s as module' % modname,ns) File "<string>", line 1, in <module> File "/builddir/build/BUILD/reportlab-3.6.12/tests/test_renderSVG.py", line 7, in <module> from reportlab.graphics import renderSVG File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/renderSVG.py", line 22, in <module> from .renderPM import _getImage File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/renderPM.py", line 20, in <module> from .utils import setFont as _setFont, RenderPMError File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/utils.py", line 9, in <module> from . _renderPM import makeT1Font ImportError: /builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/_renderPM.cpython-312-x86_64-linux-gnu.so: undefined symbol: PyUnicode_AsUnicode file: "/builddir/build/BUILD/reportlab-3.6.12/tests/test_platypus_tables.py" Traceback (most recent call last): File "/builddir/build/BUILD/reportlab-3.6.12/tests/runAll.py", line 68, in makeSuite exec('import %s as module' % modname,ns) File "<string>", line 1, in <module> File "/builddir/build/BUILD/reportlab-3.6.12/tests/test_platypus_tables.py", line 14, in <module> from reportlab.graphics.charts.linecharts import HorizontalLineChart File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/charts/linecharts.py", line 17, in <module> from reportlab.graphics.charts.axes import XCategoryAxis, YValueAxis File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/charts/axes.py", line 43, in <module> from reportlab.graphics.charts.textlabels import Label, PMVLabel, XLabel, DirectDrawFlowable File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/charts/textlabels.py", line 20, in <module> from ..utils import text2Path as _text2Path #here for continuity ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/utils.py", line 9, in <module> from . _renderPM import makeT1Font ImportError: /builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/_renderPM.cpython-312-x86_64-linux-gnu.so: undefined symbol: PyUnicode_AsUnicode file: "/builddir/build/BUILD/reportlab-3.6.12/tests/test_graphics_speed.py" Traceback (most recent call last): File "/builddir/build/BUILD/reportlab-3.6.12/tests/runAll.py", line 68, in makeSuite exec('import %s as module' % modname,ns) File "<string>", line 1, in <module> File "/builddir/build/BUILD/reportlab-3.6.12/tests/test_graphics_speed.py", line 19, in <module> from reportlab.graphics.charts.piecharts import Pie File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/charts/piecharts.py", line 34, in <module> from reportlab.graphics.charts.textlabels import Label File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/charts/textlabels.py", line 20, in <module> from ..utils import text2Path as _text2Path #here for continuity ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/utils.py", line 9, in <module> from . _renderPM import makeT1Font ImportError: /builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/_renderPM.cpython-312-x86_64-linux-gnu.so: undefined symbol: PyUnicode_AsUnicode file: "/builddir/build/BUILD/reportlab-3.6.12/tests/test_graphics_charts.py" Traceback (most recent call last): File "/builddir/build/BUILD/reportlab-3.6.12/tests/runAll.py", line 68, in makeSuite exec('import %s as module' % modname,ns) File "<string>", line 1, in <module> File "/builddir/build/BUILD/reportlab-3.6.12/tests/test_graphics_charts.py", line 19, in <module> from reportlab.graphics.charts.textlabels import Label, _text2Path File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/charts/textlabels.py", line 20, in <module> from ..utils import text2Path as _text2Path #here for continuity ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/utils.py", line 9, in <module> from . _renderPM import makeT1Font ImportError: /builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/_renderPM.cpython-312-x86_64-linux-gnu.so: undefined symbol: PyUnicode_AsUnicode file: "/builddir/build/BUILD/reportlab-3.6.12/tests/test_charts_textlabels.py" Traceback (most recent call last): File "/builddir/build/BUILD/reportlab-3.6.12/tests/runAll.py", line 68, in makeSuite exec('import %s as module' % modname,ns) File "<string>", line 1, in <module> File "/builddir/build/BUILD/reportlab-3.6.12/tests/test_charts_textlabels.py", line 18, in <module> from reportlab.graphics.charts.textlabels import Label File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/charts/textlabels.py", line 20, in <module> from ..utils import text2Path as _text2Path #here for continuity ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/utils.py", line 9, in <module> from . _renderPM import makeT1Font ImportError: /builddir/build/BUILD/reportlab-3.6.12/tests/reportlab/graphics/_renderPM.cpython-312-x86_64-linux-gnu.so: undefined symbol: PyUnicode_AsUnicode Leagcy Unicode APIs has been removed. See PEP 623 for detail. PyUnicode_WCHAR_KIND PyUnicode_AS_UNICODE() PyUnicode_AsUnicode() PyUnicode_AsUnicodeAndSize() PyUnicode_AS_DATA() PyUnicode_FromUnicode() PyUnicode_GET_SIZE() PyUnicode_GetSize() PyUnicode_GET_DATA_SIZE() https://docs.python.org/3.12/whatsnew/3.12.html For the build logs, see: https://copr-be.cloud.fedoraproject.org/results/@python/python3.12/fedora-rawhide-x86_64/05146427-python-reportlab/ For all our attempts to build python-reportlab with Python 3.12, see: https://copr.fedorainfracloud.org/coprs/g/python/python3.12/package/python-reportlab/ Testing and mass rebuild of packages is happening in copr. You can follow these instructions to test locally in mock if your package builds with Python 3.12: https://copr.fedorainfracloud.org/coprs/g/python/python3.12/ Let us know here if you have any questions. Python 3.12 is planned to be included in Fedora 39. To make that update smoother, we're building Fedora packages with all pre-releases of Python 3.12. A build failure prevents us from testing all dependent packages (transitive [Build]Requires), so if this package is required a lot, it's important for us to get it fixed soon. We'd appreciate help from the people who know this package best, but if you don't want to work on this now, let us know so we can try to work around it on our side.
This bug appears to have been reported against 'rawhide' during the Fedora Linux 38 development cycle. Changing version to 38.