Bug 2504590 - python-tpm2-pytss: FTBFS in Fedora rawhide/f45
Summary: python-tpm2-pytss: FTBFS in Fedora rawhide/f45
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: python-tpm2-pytss
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Jakub Jelen
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks: F45FTBFS PYTHON3.15b4
TreeView+ depends on / blocked
 
Reported: 2026-07-21 21:26 UTC by Fedora Release Engineering
Modified: 2026-07-27 09:49 UTC (History)
1 user (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2026-07-27 09:49:58 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
build.log (32.00 KB, text/plain)
2026-07-21 21:26 UTC, Fedora Release Engineering
no flags Details
root.log (32.00 KB, text/plain)
2026-07-21 21:26 UTC, Fedora Release Engineering
no flags Details
state.log (1.69 KB, text/plain)
2026-07-21 21:26 UTC, Fedora Release Engineering
no flags Details

Description Fedora Release Engineering 2026-07-21 21:26:15 UTC
python-tpm2-pytss failed to build from source in Fedora rawhide/f45

https://koji.fedoraproject.org/koji/taskinfo?taskID=147906042


For details on the mass rebuild see:

https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild
Please fix python-tpm2-pytss at your earliest convenience and set the bug's status to
ASSIGNED when you start fixing it. If the bug remains in NEW state for 8 weeks,
python-tpm2-pytss will be orphaned. Before branching of Fedora 46,
python-tpm2-pytss will be retired, if it still fails to build.

For more details on the FTBFS policy, please visit:
https://docs.fedoraproject.org/en-US/fesco/Fails_to_build_from_source_Fails_to_install/

Comment 1 Fedora Release Engineering 2026-07-21 21:26:21 UTC
Created attachment 2151539 [details]
build.log

file build.log too big, will only attach last 32768 bytes

Comment 2 Fedora Release Engineering 2026-07-21 21:26:26 UTC
Created attachment 2151540 [details]
root.log

file root.log too big, will only attach last 32768 bytes

Comment 3 Fedora Release Engineering 2026-07-21 21:26:29 UTC
Created attachment 2151541 [details]
state.log

Comment 4 Jakub Jelen 2026-07-27 08:59:13 UTC
The regexes sounds like fixed with the following three upstream commits, but even with them I am getting some failures:

cd433019cf109986d523ab4dc644af723f6f0d59
dba34b3a0af39122381d613a7beb3a0d46b7ae21
6e02235e03eaab003d0bb94fd70ea16c684e6ff4

I will try to investigate it further:

Traceback (most recent call last):
  File "/usr/lib64/python3.15/site-packages/cffi/cparser.py", line 337, in _parse
    ast = _get_parser().parse(fullcsource)
  File "/usr/lib/python3.15/site-packages/pycparser/c_parser.py", line 109, in parse
    ast = self._parse_translation_unit_or_empty()
  File "/usr/lib/python3.15/site-packages/pycparser/c_parser.py", line 631, in _parse_translation_unit_or_empty
    return c_ast.FileAST(self._parse_translation_unit())
                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/usr/lib/python3.15/site-packages/pycparser/c_parser.py", line 637, in _parse_translation_unit
    ext.extend(self._parse_external_declaration())
               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/usr/lib/python3.15/site-packages/pycparser/c_parser.py", line 669, in _parse_external_declaration
    decl = self._parse_id_declarator()
  File "/usr/lib/python3.15/site-packages/pycparser/c_parser.py", line 1231, in _parse_id_declarator
    return self._parse_declarator_kind(kind="id", allow_paren=True)
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.15/site-packages/pycparser/c_parser.py", line 1246, in _parse_declarator_kind
    direct = self._parse_direct_declarator(kind, allow_paren=allow_paren)
  File "/usr/lib/python3.15/site-packages/pycparser/c_parser.py", line 1262, in _parse_direct_declarator
    name_tok = self._expect("ID")
  File "/usr/lib/python3.15/site-packages/pycparser/c_parser.py", line 484, in _expect
    self._parse_error(f"before: {tok.value}", self._tok_coord(tok))
    ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.15/site-packages/pycparser/c_parser.py", line 122, in _parse_error
    raise ParseError(f"{coord}: {msg}")
pycparser.c_parser.ParseError: <cdef source string>:45:5: before: {

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/rpm/redhat/pyproject_buildrequires.py", line 843, in main
    generate_requires(
    ~~~~~~~~~~~~~~~~~^
        include_runtime=args.runtime,
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    ...<12 lines>...
        dependency_overrides=dependency_overrides,
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/usr/lib/rpm/redhat/pyproject_buildrequires.py", line 698, in generate_requires
    generate_run_requirements(backend, requirements, build_wheel=build_wheel,
    ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        pyproject_dependencies=pyproject_dependencies, wheeldir=wheeldir)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/rpm/redhat/pyproject_buildrequires.py", line 502, in generate_run_requirements
    generate_run_requirements_hook(backend, requirements)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/rpm/redhat/pyproject_buildrequires.py", line 414, in generate_run_requirements_hook
    dir_basename = prepare_metadata('.', requirements.config_settings)
  File "/usr/lib/python3.15/site-packages/setuptools/build_meta.py", line 380, in prepare_metadata_for_build_wheel
    self.run_setup()
    ~~~~~~~~~~~~~~^^
  File "/usr/lib/python3.15/site-packages/setuptools/build_meta.py", line 317, in run_setup
    exec(code, locals())
    ~~~~^^^^^^^^^^^^^^^^
  File "<string>", line 313, in <module>
  File "/usr/lib/python3.15/site-packages/setuptools/__init__.py", line 117, in setup
    return distutils.core.setup(**attrs)  # type: ignore[return-value]
           ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
  File "/usr/lib/python3.15/site-packages/setuptools/_distutils/core.py", line 148, in setup
    _setup_distribution = dist = klass(attrs)
                                 ~~~~~^^^^^^^
  File "/usr/lib/python3.15/site-packages/setuptools/dist.py", line 321, in __init__
    _Distribution.__init__(self, dist_attrs)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.15/site-packages/setuptools/_distutils/dist.py", line 308, in __init__
    self.finalize_options()
    ~~~~~~~~~~~~~~~~~~~~~^^
  File "/usr/lib/python3.15/site-packages/setuptools/dist.py", line 790, in finalize_options
    ep(self)
    ~~^^^^^^
  File "/usr/lib/python3.15/site-packages/setuptools/dist.py", line 810, in _finalize_setup_keywords
    ep.load()(self, ep.name, value)
    ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib64/python3.15/site-packages/cffi/setuptools_ext.py", line 229, in cffi_modules
    add_cffi_module(dist, cffi_module)
    ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^
  File "/usr/lib64/python3.15/site-packages/cffi/setuptools_ext.py", line 50, in add_cffi_module
    execfile(build_file_name, mod_vars)
    ~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib64/python3.15/site-packages/cffi/setuptools_ext.py", line 26, in execfile
    exec(code, glob, glob)
    ~~~~^^^^^^^^^^^^^^^^^^
  File "scripts/libtss2_build.py", line 69, in <module>
    ffibuilder.cdef(open("libesys.h").read())
    ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib64/python3.15/site-packages/cffi/api.py", line 112, in cdef
    self._cdef(csource, override=override, packed=packed, pack=pack)
    ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib64/python3.15/site-packages/cffi/api.py", line 126, in _cdef
    self._parser.parse(csource, override=override, **options)
    ~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib64/python3.15/site-packages/cffi/cparser.py", line 390, in parse
    self._internal_parse(csource)
    ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
  File "/usr/lib64/python3.15/site-packages/cffi/cparser.py", line 395, in _internal_parse
    ast, macros, csource = self._parse(csource)
                           ~~~~~~~~~~~^^^^^^^^^
  File "/usr/lib64/python3.15/site-packages/cffi/cparser.py", line 339, in _parse
    self.convert_pycparser_error(e, csource)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^
  File "/usr/lib64/python3.15/site-packages/cffi/cparser.py", line 368, in convert_pycparser_error
    raise CDefError(msg)
cffi.CDefError: cannot parse "{ 1, 2, 1, 108 }"
<cdef source string>:45:5: before: {
adding path: /builddir/build/BUILD/python-tpm2-pytss-2.3.0-build/tpm2-pytss-2.3.0/scripts

RPM build errors:
error: Bad exit status from /var/tmp/rpm-tmp.2nUF9T (%generate_buildrequires)
    Bad exit status from /var/tmp/rpm-tmp.2nUF9T (%generate_buildrequires)

Comment 5 Jakub Jelen 2026-07-27 09:49:58 UTC
ok, backport of one more commit 9cc11edbe174dc71cf77c841b5a99717a85b7471 resolved this problem. Built in rawhide now:

https://koji.fedoraproject.org/koji/taskinfo?taskID=148373666


Note You need to log in before you can comment on or make changes to this bug.