--- Begin Message ---
Source: ufo-extractor
Version: 0.4.1-1
Severity: serious
Justification: FTBFS
Tags: bookworm sid ftbfs
User: lu...@debian.org
Usertags: ftbfs-20221023 ftbfs-bookworm
Hi,
During a rebuild of all packages in sid, your package failed to build
on amd64.
Relevant part (hopefully):
> debian/rules binary
> dh binary --with python3 --buildsystem=pybuild
> dh_update_autotools_config -O--buildsystem=pybuild
> dh_autoreconf -O--buildsystem=pybuild
> dh_auto_configure -O--buildsystem=pybuild
> I: pybuild base:240: python3.10 setup.py config
> /usr/lib/python3/dist-packages/setuptools/config/setupcfg.py:508:
> SetuptoolsDeprecationWarning: The license_file parameter is deprecated, use
> license_files instead.
> warnings.warn(msg, warning_class)
> running config
> dh_auto_build -O--buildsystem=pybuild
> I: pybuild base:240: /usr/bin/python3 setup.py build
> /usr/lib/python3/dist-packages/setuptools/config/setupcfg.py:508:
> SetuptoolsDeprecationWarning: The license_file parameter is deprecated, use
> license_files instead.
> warnings.warn(msg, warning_class)
> running build
> running build_py
> creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_extractor/build/extractor
> copying Lib/extractor/__init__.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_extractor/build/extractor
> copying Lib/extractor/tools.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_extractor/build/extractor
> copying Lib/extractor/exceptions.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_extractor/build/extractor
> copying Lib/extractor/stream.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_extractor/build/extractor
> creating
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_extractor/build/extractor/formats
> copying Lib/extractor/formats/__init__.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_extractor/build/extractor/formats
> copying Lib/extractor/formats/vfb.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_extractor/build/extractor/formats
> copying Lib/extractor/formats/type1.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_extractor/build/extractor/formats
> copying Lib/extractor/formats/woff.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_extractor/build/extractor/formats
> copying Lib/extractor/formats/opentype.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_extractor/build/extractor/formats
> copying Lib/extractor/formats/ttx.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_extractor/build/extractor/formats
> dh_auto_test -O--buildsystem=pybuild
> I: pybuild base:240: cd
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_extractor/build; python3.10 -m pytest
> tests
> ============================= test session starts
> ==============================
> platform linux -- Python 3.10.7, pytest-7.1.2, pluggy-1.0.0+repack --
> /usr/bin/python3.10
> cachedir: .pytest_cache
> rootdir: /<<PKGBUILDDIR>>, configfile: setup.cfg
> collecting ... collected 2 items
>
> tests/extractor_test.py::ExtractUfoTest::test_extract_cmap_with_UVS[defcon]
> FAILED [ 50%]
> tests/extractor_test.py::ExtractUfoTest::test_extract_cmap_with_UVS[ufoLib2]
> FAILED [100%]
>
> =================================== FAILURES
> ===================================
> ______________ ExtractUfoTest.test_extract_cmap_with_UVS[defcon]
> _______________
>
> pathOrFile =
> '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_extractor/build/tests/data/UVSTest.ttf'
> destination = <defcon.objects.font.Font object at 0x7fde4123c2e0>
> doGlyphs = True, doInfo = True, doKerning = True, format = 'OTF'
> customFunctions = {}
>
> def extractUFO(
> pathOrFile,
> destination,
> doGlyphs=True,
> doInfo=True,
> doKerning=True,
> format=None,
> customFunctions={},
> ):
> if format is None:
> format = extractFormat(pathOrFile)
> if format not in _extractFunctions:
> raise ExtractorError("Unknown file format.")
> func = _extractFunctions[format]
> # wrap the extraction in a try: except: so that
> # callers don't need to worry about lower level
> # (fontTools, etc.) errors. if an error
> # occurs, print the traceback for debugging and
> # raise an ExtractorError.
> try:
> > func(
> pathOrFile,
> destination,
> doGlyphs=doGlyphs,
> doInfo=doInfo,
> doKerning=doKerning,
> customFunctions=customFunctions.get(format, []),
> )
>
> extractor/__init__.py:53:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> _
>
> pathOrFile =
> '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_extractor/build/tests/data/UVSTest.ttf'
> destination = <defcon.objects.font.Font object at 0x7fde4123c2e0>
> doGlyphOrder = True, doGlyphs = True, doInfo = True, doKerning = True
> customFunctions = [], doInstructions = True
>
> def extractFontFromOpenType(
> pathOrFile,
> destination,
> doGlyphOrder=True,
> doGlyphs=True,
> doInfo=True,
> doKerning=True,
> customFunctions=[],
> doInstructions=True,
> ):
> source = TTFont(pathOrFile)
> if doInfo:
> extractOpenTypeInfo(source, destination)
> if doGlyphs:
> extractOpenTypeGlyphs(source, destination)
> extractUnicodeVariationSequences(source, destination)
> if doGlyphOrder:
> extractGlyphOrder(source, destination)
> if doKerning:
> kerning, groups = extractOpenTypeKerning(source, destination)
> destination.groups.update(groups)
> destination.kerning.clear()
> destination.kerning.update(kerning)
> for function in customFunctions:
> function(source, destination)
> if doInstructions:
> > extractInstructions(source, destination)
>
> extractor/formats/opentype.py:62:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> _
>
> source = <fontTools.ttLib.ttFont.TTFont object at 0x7fde4123e350>
> destination = <defcon.objects.font.Font object at 0x7fde4123c2e0>
>
> def extractInstructions(source, destination):
> if "glyf" not in source:
> return
>
> lib = destination.lib[TRUETYPE_INSTRUCTIONS_KEY] = {
> "formatVersion": 1,
> "maxFunctionDefs": 0,
> "maxInstructionDefs": 0,
> "maxStackElements": 0,
> "maxStorage": 0,
> "maxTwilightPoints": 0,
> "maxZones": 0,
> }
> extractControlValues(source, lib)
> extractFontProgram(source, lib)
> > extractGlyphPrograms(source, destination)
>
> extractor/formats/opentype.py:114:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> _
>
> source = <fontTools.ttLib.ttFont.TTFont object at 0x7fde4123e350>
> destination = <defcon.objects.font.Font object at 0x7fde4123c2e0>
>
> def extractGlyphPrograms(source, destination):
> """
> Extract the TrueType pre-program to the font lib.
> """
> if "glyf" not in source:
> return
> glyph_set = source.getGlyphSet()
> for name in glyph_set.keys():
> > glyph = glyph_set[name]._glyph
> E AttributeError: '_TTGlyphGlyf' object has no attribute '_glyph'
>
> extractor/formats/opentype.py:149: AttributeError
>
> During handling of the above exception, another exception occurred:
>
> self = <extractor_test.ExtractUfoTest object at 0x7fde4123c0d0>
> FontClass = <class 'defcon.objects.font.Font'>
>
> def test_extract_cmap_with_UVS(self, FontClass):
> ufo = FontClass()
> > extractor.extractUFO(getpath("UVSTest.ttf"), ufo)
>
> tests/extractor_test.py:15:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> _
>
> pathOrFile =
> '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_extractor/build/tests/data/UVSTest.ttf'
> destination = <defcon.objects.font.Font object at 0x7fde4123c2e0>
> doGlyphs = True, doInfo = True, doKerning = True, format = 'OTF'
> customFunctions = {}
>
> def extractUFO(
> pathOrFile,
> destination,
> doGlyphs=True,
> doInfo=True,
> doKerning=True,
> format=None,
> customFunctions={},
> ):
> if format is None:
> format = extractFormat(pathOrFile)
> if format not in _extractFunctions:
> raise ExtractorError("Unknown file format.")
> func = _extractFunctions[format]
> # wrap the extraction in a try: except: so that
> # callers don't need to worry about lower level
> # (fontTools, etc.) errors. if an error
> # occurs, print the traceback for debugging and
> # raise an ExtractorError.
> try:
> func(
> pathOrFile,
> destination,
> doGlyphs=doGlyphs,
> doInfo=doInfo,
> doKerning=doKerning,
> customFunctions=customFunctions.get(format, []),
> )
> except:
> import sys
> import traceback
>
> traceback.print_exc(file=sys.stdout)
> > raise ExtractorError(
> "There was an error reading the %s file." % format
> )
> E extractor.exceptions.ExtractorError: There was an error reading
> the OTF file.
>
> extractor/__init__.py:66: ExtractorError
> ----------------------------- Captured stdout call
> -----------------------------
> Traceback (most recent call last):
> File
> "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_extractor/build/extractor/__init__.py",
> line 53, in extractUFO
> func(
> File
> "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_extractor/build/extractor/formats/opentype.py",
> line 62, in extractFontFromOpenType
> extractInstructions(source, destination)
> File
> "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_extractor/build/extractor/formats/opentype.py",
> line 114, in extractInstructions
> extractGlyphPrograms(source, destination)
> File
> "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_extractor/build/extractor/formats/opentype.py",
> line 149, in extractGlyphPrograms
> glyph = glyph_set[name]._glyph
> AttributeError: '_TTGlyphGlyf' object has no attribute '_glyph'
> ______________ ExtractUfoTest.test_extract_cmap_with_UVS[ufoLib2]
> ______________
>
> pathOrFile =
> '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_extractor/build/tests/data/UVSTest.ttf'
> destination = <ufoLib2.objects.font.Font 'UVS Test Regular' at 0x7fde40c4f7f0>
> doGlyphs = True, doInfo = True, doKerning = True, format = 'OTF'
> customFunctions = {}
>
> def extractUFO(
> pathOrFile,
> destination,
> doGlyphs=True,
> doInfo=True,
> doKerning=True,
> format=None,
> customFunctions={},
> ):
> if format is None:
> format = extractFormat(pathOrFile)
> if format not in _extractFunctions:
> raise ExtractorError("Unknown file format.")
> func = _extractFunctions[format]
> # wrap the extraction in a try: except: so that
> # callers don't need to worry about lower level
> # (fontTools, etc.) errors. if an error
> # occurs, print the traceback for debugging and
> # raise an ExtractorError.
> try:
> > func(
> pathOrFile,
> destination,
> doGlyphs=doGlyphs,
> doInfo=doInfo,
> doKerning=doKerning,
> customFunctions=customFunctions.get(format, []),
> )
>
> extractor/__init__.py:53:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> _
>
> pathOrFile =
> '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_extractor/build/tests/data/UVSTest.ttf'
> destination = <ufoLib2.objects.font.Font 'UVS Test Regular' at 0x7fde40c4f7f0>
> doGlyphOrder = True, doGlyphs = True, doInfo = True, doKerning = True
> customFunctions = [], doInstructions = True
>
> def extractFontFromOpenType(
> pathOrFile,
> destination,
> doGlyphOrder=True,
> doGlyphs=True,
> doInfo=True,
> doKerning=True,
> customFunctions=[],
> doInstructions=True,
> ):
> source = TTFont(pathOrFile)
> if doInfo:
> extractOpenTypeInfo(source, destination)
> if doGlyphs:
> extractOpenTypeGlyphs(source, destination)
> extractUnicodeVariationSequences(source, destination)
> if doGlyphOrder:
> extractGlyphOrder(source, destination)
> if doKerning:
> kerning, groups = extractOpenTypeKerning(source, destination)
> destination.groups.update(groups)
> destination.kerning.clear()
> destination.kerning.update(kerning)
> for function in customFunctions:
> function(source, destination)
> if doInstructions:
> > extractInstructions(source, destination)
>
> extractor/formats/opentype.py:62:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> _
>
> source = <fontTools.ttLib.ttFont.TTFont object at 0x7fde40c3fd90>
> destination = <ufoLib2.objects.font.Font 'UVS Test Regular' at 0x7fde40c4f7f0>
>
> def extractInstructions(source, destination):
> if "glyf" not in source:
> return
>
> lib = destination.lib[TRUETYPE_INSTRUCTIONS_KEY] = {
> "formatVersion": 1,
> "maxFunctionDefs": 0,
> "maxInstructionDefs": 0,
> "maxStackElements": 0,
> "maxStorage": 0,
> "maxTwilightPoints": 0,
> "maxZones": 0,
> }
> extractControlValues(source, lib)
> extractFontProgram(source, lib)
> > extractGlyphPrograms(source, destination)
>
> extractor/formats/opentype.py:114:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> _
>
> source = <fontTools.ttLib.ttFont.TTFont object at 0x7fde40c3fd90>
> destination = <ufoLib2.objects.font.Font 'UVS Test Regular' at 0x7fde40c4f7f0>
>
> def extractGlyphPrograms(source, destination):
> """
> Extract the TrueType pre-program to the font lib.
> """
> if "glyf" not in source:
> return
> glyph_set = source.getGlyphSet()
> for name in glyph_set.keys():
> > glyph = glyph_set[name]._glyph
> E AttributeError: '_TTGlyphGlyf' object has no attribute '_glyph'
>
> extractor/formats/opentype.py:149: AttributeError
>
> During handling of the above exception, another exception occurred:
>
> self = <extractor_test.ExtractUfoTest object at 0x7fde4123d9f0>
> FontClass = <function FontClass.<locals>.ctor at 0x7fde40c4f760>
>
> def test_extract_cmap_with_UVS(self, FontClass):
> ufo = FontClass()
> > extractor.extractUFO(getpath("UVSTest.ttf"), ufo)
>
> tests/extractor_test.py:15:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> _
>
> pathOrFile =
> '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_extractor/build/tests/data/UVSTest.ttf'
> destination = <ufoLib2.objects.font.Font 'UVS Test Regular' at 0x7fde40c4f7f0>
> doGlyphs = True, doInfo = True, doKerning = True, format = 'OTF'
> customFunctions = {}
>
> def extractUFO(
> pathOrFile,
> destination,
> doGlyphs=True,
> doInfo=True,
> doKerning=True,
> format=None,
> customFunctions={},
> ):
> if format is None:
> format = extractFormat(pathOrFile)
> if format not in _extractFunctions:
> raise ExtractorError("Unknown file format.")
> func = _extractFunctions[format]
> # wrap the extraction in a try: except: so that
> # callers don't need to worry about lower level
> # (fontTools, etc.) errors. if an error
> # occurs, print the traceback for debugging and
> # raise an ExtractorError.
> try:
> func(
> pathOrFile,
> destination,
> doGlyphs=doGlyphs,
> doInfo=doInfo,
> doKerning=doKerning,
> customFunctions=customFunctions.get(format, []),
> )
> except:
> import sys
> import traceback
>
> traceback.print_exc(file=sys.stdout)
> > raise ExtractorError(
> "There was an error reading the %s file." % format
> )
> E extractor.exceptions.ExtractorError: There was an error reading
> the OTF file.
>
> extractor/__init__.py:66: ExtractorError
> ----------------------------- Captured stdout call
> -----------------------------
> Traceback (most recent call last):
> File
> "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_extractor/build/extractor/__init__.py",
> line 53, in extractUFO
> func(
> File
> "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_extractor/build/extractor/formats/opentype.py",
> line 62, in extractFontFromOpenType
> extractInstructions(source, destination)
> File
> "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_extractor/build/extractor/formats/opentype.py",
> line 114, in extractInstructions
> extractGlyphPrograms(source, destination)
> File
> "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_extractor/build/extractor/formats/opentype.py",
> line 149, in extractGlyphPrograms
> glyph = glyph_set[name]._glyph
> AttributeError: '_TTGlyphGlyf' object has no attribute '_glyph'
> =========================== short test summary info
> ============================
> FAILED
> tests/extractor_test.py::ExtractUfoTest::test_extract_cmap_with_UVS[defcon]
> FAILED
> tests/extractor_test.py::ExtractUfoTest::test_extract_cmap_with_UVS[ufoLib2]
> ============================== 2 failed in 0.62s
> ===============================
> E: pybuild pybuild:379: test: plugin distutils failed with: exit code=1: cd
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_extractor/build; python3.10 -m pytest
> tests
> dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 3.10
> returned exit code 13
The full build log is available from:
http://qa-logs.debian.net/2022/10/23/ufo-extractor_0.4.1-1_unstable.log
All bugs filed during this archive rebuild are listed at:
https://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=ftbfs-20221023;users=lu...@debian.org
or:
https://udd.debian.org/bugs/?release=na&merged=ign&fnewerval=7&flastmodval=7&fusertag=only&fusertagtag=ftbfs-20221023&fusertaguser=lu...@debian.org&allbugs=1&cseverity=1&ctags=1&caffected=1#results
A list of current common problems and possible solutions is available at
http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute!
If you reassign this bug to another package, please marking it as 'affects'-ing
this package. See https://www.debian.org/Bugs/server-control#affects
If you fail to reproduce this, please provide a build log and diff it with mine
so that we can identify if something relevant changed in the meantime.
--- End Message ---