Package: src:fontmake Version: 3.10.0-1 Severity: serious Tags: ftbfs
Dear maintainer: During a rebuild of all packages in unstable, your package failed to build: -------------------------------------------------------------------------------- [...] debian/rules binary dh binary --buildsystem=pybuild dh_update_autotools_config -O--buildsystem=pybuild dh_autoreconf -O--buildsystem=pybuild dh_auto_configure -O--buildsystem=pybuild dh_auto_build -O--buildsystem=pybuild I: pybuild plugin_pyproject:129: Building wheel for python3.13 with "build" module I: pybuild base:311: python3.13 -m build --skip-dependency-check --no-isolation --wheel --outdir /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13 * Building wheel... WARNING setuptools_scm.pyproject_reading toml section missing 'pyproject.toml does not contain a tool.setuptools_scm section' Traceback (most recent call last): File "/usr/lib/python3/dist-packages/setuptools_scm/_integration/pyproject_reading.py", line 36, in read_pyproject section = defn.get("tool", {})[tool_name] ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^ KeyError: 'setuptools_scm' running bdist_wheel The [wheel] section is deprecated. Use [bdist_wheel] instead. running build running build_py creating build/lib/fontmake copying Lib/fontmake/instantiator.py -> build/lib/fontmake copying Lib/fontmake/errors.py -> build/lib/fontmake copying Lib/fontmake/_version.py -> build/lib/fontmake copying Lib/fontmake/compatibility.py -> build/lib/fontmake copying Lib/fontmake/__init__.py -> build/lib/fontmake copying Lib/fontmake/font_project.py -> build/lib/fontmake copying Lib/fontmake/__main__.py -> build/lib/fontmake copying Lib/fontmake/ttfautohint.py -> build/lib/fontmake installing to build/bdist.linux-x86_64/wheel running install running install_lib creating build/bdist.linux-x86_64/wheel creating build/bdist.linux-x86_64/wheel/fontmake copying build/lib/fontmake/instantiator.py -> build/bdist.linux-x86_64/wheel/./fontmake copying build/lib/fontmake/errors.py -> build/bdist.linux-x86_64/wheel/./fontmake copying build/lib/fontmake/_version.py -> build/bdist.linux-x86_64/wheel/./fontmake copying build/lib/fontmake/compatibility.py -> build/bdist.linux-x86_64/wheel/./fontmake copying build/lib/fontmake/__init__.py -> build/bdist.linux-x86_64/wheel/./fontmake copying build/lib/fontmake/font_project.py -> build/bdist.linux-x86_64/wheel/./fontmake copying build/lib/fontmake/__main__.py -> build/bdist.linux-x86_64/wheel/./fontmake copying build/lib/fontmake/ttfautohint.py -> build/bdist.linux-x86_64/wheel/./fontmake running install_egg_info running egg_info creating Lib/fontmake.egg-info writing Lib/fontmake.egg-info/PKG-INFO writing dependency_links to Lib/fontmake.egg-info/dependency_links.txt writing entry points to Lib/fontmake.egg-info/entry_points.txt writing requirements to Lib/fontmake.egg-info/requires.txt writing top-level names to Lib/fontmake.egg-info/top_level.txt writing manifest file 'Lib/fontmake.egg-info/SOURCES.txt' reading manifest file 'Lib/fontmake.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' warning: no files found matching 'README.rst' adding license file 'LICENSE' writing manifest file 'Lib/fontmake.egg-info/SOURCES.txt' Copying Lib/fontmake.egg-info to build/bdist.linux-x86_64/wheel/./fontmake-3.10.0.egg-info running install_scripts creating build/bdist.linux-x86_64/wheel/fontmake-3.10.0.dist-info/WHEEL creating '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/.tmp-pbaqlz4_/fontmake-3.10.0-py3-none-any.whl' and adding 'build/bdist.linux-x86_64/wheel' to it adding 'fontmake/__init__.py' adding 'fontmake/__main__.py' adding 'fontmake/_version.py' adding 'fontmake/compatibility.py' adding 'fontmake/errors.py' adding 'fontmake/font_project.py' adding 'fontmake/instantiator.py' adding 'fontmake/ttfautohint.py' adding 'fontmake-3.10.0.dist-info/LICENSE' adding 'fontmake-3.10.0.dist-info/METADATA' adding 'fontmake-3.10.0.dist-info/WHEEL' adding 'fontmake-3.10.0.dist-info/entry_points.txt' adding 'fontmake-3.10.0.dist-info/top_level.txt' adding 'fontmake-3.10.0.dist-info/RECORD' removing build/bdist.linux-x86_64/wheel Successfully built fontmake-3.10.0-py3-none-any.whl I: pybuild plugin_pyproject:144: Unpacking wheel built for python3.13 with "installer" module I: pybuild plugin_pyproject:129: Building wheel for python3.12 with "build" module I: pybuild base:311: python3.12 -m build --skip-dependency-check --no-isolation --wheel --outdir /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12 * Building wheel... WARNING setuptools_scm.pyproject_reading toml section missing 'pyproject.toml does not contain a tool.setuptools_scm section' Traceback (most recent call last): File "/usr/lib/python3/dist-packages/setuptools_scm/_integration/pyproject_reading.py", line 36, in read_pyproject section = defn.get("tool", {})[tool_name] ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^ KeyError: 'setuptools_scm' running bdist_wheel The [wheel] section is deprecated. Use [bdist_wheel] instead. running build running build_py copying Lib/fontmake/_version.py -> build/lib/fontmake installing to build/bdist.linux-x86_64/wheel running install running install_lib creating build/bdist.linux-x86_64/wheel creating build/bdist.linux-x86_64/wheel/fontmake copying build/lib/fontmake/instantiator.py -> build/bdist.linux-x86_64/wheel/./fontmake copying build/lib/fontmake/errors.py -> build/bdist.linux-x86_64/wheel/./fontmake copying build/lib/fontmake/_version.py -> build/bdist.linux-x86_64/wheel/./fontmake copying build/lib/fontmake/compatibility.py -> build/bdist.linux-x86_64/wheel/./fontmake copying build/lib/fontmake/__init__.py -> build/bdist.linux-x86_64/wheel/./fontmake copying build/lib/fontmake/font_project.py -> build/bdist.linux-x86_64/wheel/./fontmake copying build/lib/fontmake/__main__.py -> build/bdist.linux-x86_64/wheel/./fontmake copying build/lib/fontmake/ttfautohint.py -> build/bdist.linux-x86_64/wheel/./fontmake running install_egg_info running egg_info writing Lib/fontmake.egg-info/PKG-INFO writing dependency_links to Lib/fontmake.egg-info/dependency_links.txt writing entry points to Lib/fontmake.egg-info/entry_points.txt writing requirements to Lib/fontmake.egg-info/requires.txt writing top-level names to Lib/fontmake.egg-info/top_level.txt reading manifest file 'Lib/fontmake.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' warning: no files found matching 'README.rst' adding license file 'LICENSE' writing manifest file 'Lib/fontmake.egg-info/SOURCES.txt' Copying Lib/fontmake.egg-info to build/bdist.linux-x86_64/wheel/./fontmake-3.10.0.egg-info running install_scripts creating build/bdist.linux-x86_64/wheel/fontmake-3.10.0.dist-info/WHEEL creating '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/.tmp-xpketlnw/fontmake-3.10.0-py3-none-any.whl' and adding 'build/bdist.linux-x86_64/wheel' to it adding 'fontmake/__init__.py' adding 'fontmake/__main__.py' adding 'fontmake/_version.py' adding 'fontmake/compatibility.py' adding 'fontmake/errors.py' adding 'fontmake/font_project.py' adding 'fontmake/instantiator.py' adding 'fontmake/ttfautohint.py' adding 'fontmake-3.10.0.dist-info/LICENSE' adding 'fontmake-3.10.0.dist-info/METADATA' adding 'fontmake-3.10.0.dist-info/WHEEL' adding 'fontmake-3.10.0.dist-info/entry_points.txt' adding 'fontmake-3.10.0.dist-info/top_level.txt' adding 'fontmake-3.10.0.dist-info/RECORD' removing build/bdist.linux-x86_64/wheel Successfully built fontmake-3.10.0-py3-none-any.whl I: pybuild plugin_pyproject:144: Unpacking wheel built for python3.12 with "installer" module debian/rules execute_after_dh_auto_build make[1]: Entering directory '/<<PKGBUILDDIR>>' PYTHONPATH="/<<PKGBUILDDIR>>/Lib" help2man \ -n "compile fonts from UFO or Glyphs to OTF/TTF" \ --no-info \ "python3 /<<PKGBUILDDIR>>/Lib/fontmake" \ > debian/fontmake.1 make[1]: Leaving directory '/<<PKGBUILDDIR>>' dh_auto_test -O--buildsystem=pybuild I: pybuild base:311: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build; python3.13 -m pytest tests ============================= test session starts ============================== platform linux -- Python 3.13.0, pytest-8.3.3, pluggy-1.5.0 rootdir: /<<PKGBUILDDIR>> configfile: setup.cfg plugins: typeguard-4.4.1 collected 85 items tests/test_compatibility.py .. [ 2%] tests/test_instantiator.py ............................... [ 38%] tests/test_main.py ...........................sssssF...........ssssss.. [100%] =================================== FAILURES =================================== _____________________ test_main_designspace_v5_builds_STAT _____________________ data_dir = PosixPath('/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/tests/data') tmp_path = PosixPath('/tmp/pytest-of-buildd/pytest-0/test_main_designspace_v5_build0') def test_main_designspace_v5_builds_STAT(data_dir, tmp_path): fontmake.__main__.main( [ "--verbose", "DEBUG", "-m", str( data_dir / "MutatorSansLite" / "MutatorSans_v5_implicit_one_vf.designspace" ), "-o", "variable", "--output-dir", str(tmp_path), ] ) test_output_ttf = fontTools.ttLib.TTFont( tmp_path / "MutatorSans_v5_implicit_one_vf-VF.ttf" ) stat = test_output_ttf["STAT"]
assert (
getXML(stat.toXML) == dedent( """\ <Version value="0x00010002"/> <DesignAxisRecordSize value="8"/> <!-- DesignAxisCount=2 --> <DesignAxisRecord> <Axis index="0"> <AxisTag value="wght"/> <AxisNameID value="274"/> <AxisOrdering value="0"/> </Axis> <Axis index="1"> <AxisTag value="wdth"/> <AxisNameID value="276"/> <AxisOrdering value="1"/> </Axis> </DesignAxisRecord> <!-- AxisValueCount=8 --> <AxisValueArray> <AxisValue index="0" Format="4"> <!-- AxisCount=2 --> <Flags value="0"/> <ValueNameID value="280"/> <AxisValueRecord index="0"> <AxisIndex value="0"/> <Value value="610.2436"/> </AxisValueRecord> <AxisValueRecord index="1"> <AxisIndex value="1"/> <Value value="158.9044"/> </AxisValueRecord> </AxisValue> <AxisValue index="1" Format="4"> <!-- AxisCount=2 --> <Flags value="0"/> <ValueNameID value="281"/> <AxisValueRecord index="0"> <AxisIndex value="0"/> <Value value="642.2196"/> </AxisValueRecord> <AxisValueRecord index="1"> <AxisIndex value="1"/> <Value value="159.1956"/> </AxisValueRecord> </AxisValue> <AxisValue index="2" Format="2"> <AxisIndex value="0"/> <Flags value="0"/> <ValueNameID value="275"/> <NominalValue value="300.0"/> <RangeMinValue value="300.0"/> <RangeMaxValue value="400.0"/> </AxisValue> <AxisValue index="3" Format="2"> <AxisIndex value="0"/> <Flags value="0"/> <ValueNameID value="266"/> <NominalValue value="500.0"/> <RangeMinValue value="400.0"/> <RangeMaxValue value="600.0"/> </AxisValue> <AxisValue index="4" Format="2"> <AxisIndex value="0"/> <Flags value="0"/> <ValueNameID value="269"/> <NominalValue value="700.0"/> <RangeMinValue value="600.0"/> <RangeMaxValue value="700.0"/> </AxisValue> <AxisValue index="5" Format="2"> <AxisIndex value="1"/> <Flags value="0"/> <ValueNameID value="277"/> <NominalValue value="50.0"/> <RangeMinValue value="50.0"/> <RangeMaxValue value="75.0"/> </AxisValue> <AxisValue index="6" Format="2"> <AxisIndex value="1"/> <Flags value="2"/> <!-- ElidableAxisValueName --> <ValueNameID value="278"/> <NominalValue value="100.0"/> <RangeMinValue value="75.0"/> <RangeMaxValue value="125.0"/> </AxisValue> <AxisValue index="7" Format="2"> <AxisIndex value="1"/> <Flags value="0"/> <ValueNameID value="279"/> <NominalValue value="200.0"/> <RangeMinValue value="125.0"/> <RangeMaxValue value="200.0"/> </AxisValue> </AxisValueArray> <ElidedFallbackNameID value="273"/>""" ).splitlines() ) E assert ['<Version va...wght"/>', ...] == ['<Version va...wght"/>', ...] E E At index 6 diff: ' <AxisNameID value="273"/>' != ' <AxisNameID value="274"/>' E Use -v to get more diff tests/test_main.py:863: AssertionError =============================== warnings summary =============================== ../../../../../../usr/lib/python3/dist-packages/fs/__init__.py:4 /usr/lib/python3/dist-packages/fs/__init__.py:4: DeprecationWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html __import__("pkg_resources").declare_namespace(__name__) # type: ignore ../../../../../../usr/lib/python3/dist-packages/fs/__init__.py:4 /usr/lib/python3/dist-packages/fs/__init__.py:4: DeprecationWarning: Deprecated call to `pkg_resources.declare_namespace('fs')`. Implementing implicit namespace packages (as specified in PEP 420) is preferred to `pkg_resources.declare_namespace`. See https://setuptools.pypa.io/en/latest/references/keywords.html#keyword-namespace-packages __import__("pkg_resources").declare_namespace(__name__) # type: ignore ../../../../../../usr/lib/python3/dist-packages/fs/opener/__init__.py:6 /usr/lib/python3/dist-packages/fs/opener/__init__.py:6: DeprecationWarning: Deprecated call to `pkg_resources.declare_namespace('fs.opener')`. Implementing implicit namespace packages (as specified in PEP 420) is preferred to `pkg_resources.declare_namespace`. See https://setuptools.pypa.io/en/latest/references/keywords.html#keyword-namespace-packages __import__("pkg_resources").declare_namespace(__name__) # type: ignore ../../../../../../usr/lib/python3/dist-packages/pkg_resources/__init__.py:2563 /usr/lib/python3/dist-packages/pkg_resources/__init__.py:2563: DeprecationWarning: Deprecated call to `pkg_resources.declare_namespace('fs')`. Implementing implicit namespace packages (as specified in PEP 420) is preferred to `pkg_resources.declare_namespace`. See https://setuptools.pypa.io/en/latest/references/keywords.html#keyword-namespace-packages declare_namespace(parent) -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html =========================== short test summary info ============================ FAILED tests/test_main.py::test_main_designspace_v5_builds_STAT - assert ['<V... ============= 1 failed, 73 passed, 11 skipped, 4 warnings in 2.72s ============= E: pybuild pybuild:389: test: plugin pyproject failed with: exit code=1: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build; python3.13 -m pytest tests I: pybuild base:311: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build; python3.12 -m pytest tests ============================= test session starts ============================== platform linux -- Python 3.12.7, pytest-8.3.3, pluggy-1.5.0 rootdir: /<<PKGBUILDDIR>> configfile: setup.cfg plugins: typeguard-4.4.1 collected 85 items tests/test_compatibility.py .. [ 2%] tests/test_instantiator.py ............................... [ 38%] tests/test_main.py ...........................sssssF...........ssssss.. [100%] =================================== FAILURES =================================== _____________________ test_main_designspace_v5_builds_STAT _____________________ data_dir = PosixPath('/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/tests/data') tmp_path = PosixPath('/tmp/pytest-of-buildd/pytest-1/test_main_designspace_v5_build0') def test_main_designspace_v5_builds_STAT(data_dir, tmp_path): fontmake.__main__.main( [ "--verbose", "DEBUG", "-m", str( data_dir / "MutatorSansLite" / "MutatorSans_v5_implicit_one_vf.designspace" ), "-o", "variable", "--output-dir", str(tmp_path), ] ) test_output_ttf = fontTools.ttLib.TTFont( tmp_path / "MutatorSans_v5_implicit_one_vf-VF.ttf" ) stat = test_output_ttf["STAT"]
assert (
getXML(stat.toXML) == dedent( """\ <Version value="0x00010002"/> <DesignAxisRecordSize value="8"/> <!-- DesignAxisCount=2 --> <DesignAxisRecord> <Axis index="0"> <AxisTag value="wght"/> <AxisNameID value="274"/> <AxisOrdering value="0"/> </Axis> <Axis index="1"> <AxisTag value="wdth"/> <AxisNameID value="276"/> <AxisOrdering value="1"/> </Axis> </DesignAxisRecord> <!-- AxisValueCount=8 --> <AxisValueArray> <AxisValue index="0" Format="4"> <!-- AxisCount=2 --> <Flags value="0"/> <ValueNameID value="280"/> <AxisValueRecord index="0"> <AxisIndex value="0"/> <Value value="610.2436"/> </AxisValueRecord> <AxisValueRecord index="1"> <AxisIndex value="1"/> <Value value="158.9044"/> </AxisValueRecord> </AxisValue> <AxisValue index="1" Format="4"> <!-- AxisCount=2 --> <Flags value="0"/> <ValueNameID value="281"/> <AxisValueRecord index="0"> <AxisIndex value="0"/> <Value value="642.2196"/> </AxisValueRecord> <AxisValueRecord index="1"> <AxisIndex value="1"/> <Value value="159.1956"/> </AxisValueRecord> </AxisValue> <AxisValue index="2" Format="2"> <AxisIndex value="0"/> <Flags value="0"/> <ValueNameID value="275"/> <NominalValue value="300.0"/> <RangeMinValue value="300.0"/> <RangeMaxValue value="400.0"/> </AxisValue> <AxisValue index="3" Format="2"> <AxisIndex value="0"/> <Flags value="0"/> <ValueNameID value="266"/> <NominalValue value="500.0"/> <RangeMinValue value="400.0"/> <RangeMaxValue value="600.0"/> </AxisValue> <AxisValue index="4" Format="2"> <AxisIndex value="0"/> <Flags value="0"/> <ValueNameID value="269"/> <NominalValue value="700.0"/> <RangeMinValue value="600.0"/> <RangeMaxValue value="700.0"/> </AxisValue> <AxisValue index="5" Format="2"> <AxisIndex value="1"/> <Flags value="0"/> <ValueNameID value="277"/> <NominalValue value="50.0"/> <RangeMinValue value="50.0"/> <RangeMaxValue value="75.0"/> </AxisValue> <AxisValue index="6" Format="2"> <AxisIndex value="1"/> <Flags value="2"/> <!-- ElidableAxisValueName --> <ValueNameID value="278"/> <NominalValue value="100.0"/> <RangeMinValue value="75.0"/> <RangeMaxValue value="125.0"/> </AxisValue> <AxisValue index="7" Format="2"> <AxisIndex value="1"/> <Flags value="0"/> <ValueNameID value="279"/> <NominalValue value="200.0"/> <RangeMinValue value="125.0"/> <RangeMaxValue value="200.0"/> </AxisValue> </AxisValueArray> <ElidedFallbackNameID value="273"/>""" ).splitlines() ) E assert ['<Version va...wght"/>', ...] == ['<Version va...wght"/>', ...] E E At index 6 diff: ' <AxisNameID value="273"/>' != ' <AxisNameID value="274"/>' E Use -v to get more diff tests/test_main.py:863: AssertionError =============================== warnings summary =============================== ../../../../../../usr/lib/python3/dist-packages/fs/__init__.py:4 /usr/lib/python3/dist-packages/fs/__init__.py:4: DeprecationWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html __import__("pkg_resources").declare_namespace(__name__) # type: ignore ../../../../../../usr/lib/python3/dist-packages/fs/__init__.py:4 /usr/lib/python3/dist-packages/fs/__init__.py:4: DeprecationWarning: Deprecated call to `pkg_resources.declare_namespace('fs')`. Implementing implicit namespace packages (as specified in PEP 420) is preferred to `pkg_resources.declare_namespace`. See https://setuptools.pypa.io/en/latest/references/keywords.html#keyword-namespace-packages __import__("pkg_resources").declare_namespace(__name__) # type: ignore ../../../../../../usr/lib/python3/dist-packages/fs/opener/__init__.py:6 /usr/lib/python3/dist-packages/fs/opener/__init__.py:6: DeprecationWarning: Deprecated call to `pkg_resources.declare_namespace('fs.opener')`. Implementing implicit namespace packages (as specified in PEP 420) is preferred to `pkg_resources.declare_namespace`. See https://setuptools.pypa.io/en/latest/references/keywords.html#keyword-namespace-packages __import__("pkg_resources").declare_namespace(__name__) # type: ignore ../../../../../../usr/lib/python3/dist-packages/pkg_resources/__init__.py:2563 /usr/lib/python3/dist-packages/pkg_resources/__init__.py:2563: DeprecationWarning: Deprecated call to `pkg_resources.declare_namespace('fs')`. Implementing implicit namespace packages (as specified in PEP 420) is preferred to `pkg_resources.declare_namespace`. See https://setuptools.pypa.io/en/latest/references/keywords.html#keyword-namespace-packages declare_namespace(parent) -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html =========================== short test summary info ============================ FAILED tests/test_main.py::test_main_designspace_v5_builds_STAT - assert ['<V... ============= 1 failed, 73 passed, 11 skipped, 4 warnings in 2.82s ============= E: pybuild pybuild:389: test: plugin pyproject failed with: exit code=1: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build; python3.12 -m pytest tests dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p "3.13 3.12" returned exit code 13 make: *** [debian/rules:6: binary] Error 25 dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2 -------------------------------------------------------------------------------- The above is just how the build ends and not necessarily the most relevant part. If required, the full build log is available here: https://people.debian.org/~sanvila/build-logs/202411/ About the archive rebuild: The build was made on virtual machines from AWS, using sbuild and a reduced chroot with only build-essential packages. If you could not reproduce the bug please contact me privately, as I am willing to provide ssh access to a virtual machine where the bug is fully reproducible. If this is really a bug in one of the build-depends, please use reassign and affects, so that this is still visible in the BTS web page for this package. Thanks.