Bug 2099152

Summary: F37FailsToInstall: python3-yappi
Product: [Fedora] Fedora Reporter: Miro Hrončok <mhroncok>
Component: python-yappiAssignee: Alfredo Moralejo <amoralej>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: urgent Docs Contact:
Priority: unspecified    
Version: 37CC: amoralej, releng
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: python-yappi-1.3.6-1.fc37 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2022-09-20 00:16:11 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 2117176, 2016048, 2045102, 2045109    

Description Miro Hrončok 2022-06-20 09:43:28 UTC
Hello,

Please note that this comment was generated automatically. If you feel that this output has mistakes, please contact me via email (mhroncok).

Your package (python-yappi) Fails To Install in Fedora 37:

can't install python3-yappi:
  - nothing provides python(abi) = 3.10 needed by python3-yappi-1.3.2-3.fc36.x86_64
  
If you know about this problem and are planning on fixing it, please acknowledge so by setting the bug status to ASSIGNED. If you don't have time to maintain this package, consider orphaning it, so maintainers of dependent packages realize the problem.


If you don't react accordingly to the policy for FTBFS/FTI bugs (https://docs.fedoraproject.org/en-US/fesco/Fails_to_build_from_source_Fails_to_install/), your package may be orphaned in 8+ weeks.


P.S. The data was generated solely from koji buildroot, so it might be newer than the latest compose or the content on mirrors. To reproduce, use the koji/local repo only, e.g. in mock:

    $ mock -r fedora-37-x86_64 --disablerepo='*' --enablerepo=local install python3-yappi


P.P.S. If this bug has been reported in the middle of upgrading multiple dependent packages, please consider using side tags: https://docs.fedoraproject.org/en-US/fesco/Updates_Policy/#updating-inter-dependent-packages

Thanks!

Comment 1 Miro Hrončok 2022-06-20 10:10:42 UTC
This bugzilla is likely a fallout from the Python 3.11 rebuild.

If your package (or some of the dependencies it has) failed to rebuild during the Python 3.11 rebuild, they now fail to install. To fix this, packages need to be rebuilt in Rawhide.

We will slowly triage the bugzillas, but we'd appreciate your help.

If you know this is blocked by an existing reported build failure or another package not yet rebuilt with Python 3.11, please mark it as such by using the "Depends On"/"Blocks" bugzilla fields. That will help us determine what failures to prioritize.

If this is not Python 3.11 related, please remove the PYTHON3.11 blocking tracker.

Thank you and sorry for the inconvenience. Let me know if you need any help.

Comment 2 Miro Hrončok 2022-06-27 15:00:55 UTC
Hello,

This is the first reminder (step 3 from https://docs.fedoraproject.org/en-US/fesco/Fails_to_build_from_source_Fails_to_install/#_package_removal_for_long_standing_ftbfs_and_fti_bugs).

If you know about this problem and are planning on fixing it, please acknowledge so by setting the bug status to ASSIGNED. If you don't have time to maintain this package, consider orphaning it, so maintainers of dependent packages realize the problem.

Comment 3 Alfredo Moralejo 2022-06-28 13:19:31 UTC
The actual error to build python-yappi is:

yappi/_yappi.c: In function ‘IS_SUSPENDED’:
yappi/_yappi.c:220:18: error: invalid use of incomplete typedef ‘PyFrameObject’ {aka ‘struct _frame’}
  220 |     return (frame->f_state == FRAME_SUSPENDED);
      |                  ^~
yappi/_yappi.c:220:31: error: ‘FRAME_SUSPENDED’ undeclared (first use in this function); did you mean ‘IS_SUSPENDED’?
  220 |     return (frame->f_state == FRAME_SUSPENDED);
      |                               ^~~~~~~~~~~~~~~
      |                               IS_SUSPENDED
yappi/_yappi.c:220:31: note: each undeclared identifier is reported only once for each function it appears in
yappi/_yappi.c: In function ‘IS_ASYNC’:
yappi/_yappi.c:232:19: error: invalid use of incomplete typedef ‘PyFrameObject’ {aka ‘struct _frame’}
  232 |     result = frame->f_code->co_flags & CO_COROUTINE ||
      |                   ^~
yappi/_yappi.c:233:14: error: invalid use of incomplete typedef ‘PyFrameObject’ {aka ‘struct _frame’}
  233 |         frame->f_code->co_flags & CO_ITERABLE_COROUTINE;
      |              ^~
yappi/_yappi.c:236:29: error: invalid use of incomplete typedef ‘PyFrameObject’ {aka ‘struct _frame’}
  236 |     result = result || frame->f_code->co_flags & CO_ASYNC_GENERATOR;
      |                             ^~
yappi/_yappi.c: In function ‘_code2pit’:
yappi/_yappi.c:653:16: error: invalid use of incomplete typedef ‘PyFrameObject’ {aka ‘struct _frame’}
  653 |     cobj = fobj->f_code;
      |                ^~
yappi/_yappi.c:673:72: error: ‘PyCodeObject’ has no member named ‘co_varnames’; did you mean ‘co_names’?
  673 |         const char *firstarg = PyStr_AS_CSTRING(PyTuple_GET_ITEM(cobj->co_varnames, 0));
      |                                                                        ^~~~~~~~~~~
yappi/_yappi.c:182:46: note: in definition of macro ‘PyStr_AS_CSTRING’
  182 | #define PyStr_AS_CSTRING(s) PyUnicode_AsUTF8(s)
      |                                              ^
/usr/include/python3.11/cpython/tupleobject.h:18:33: note: in expansion of macro ‘_Py_CAST’
   18 |     (assert(PyTuple_Check(op)), _Py_CAST(PyTupleObject*, (op)))
      |                                 ^~~~~~~~
/usr/include/python3.11/cpython/tupleobject.h:30:38: note: in expansion of macro ‘_PyTuple_CAST’
   30 | #define PyTuple_GET_ITEM(op, index) (_PyTuple_CAST(op)->ob_item[index])
      |                                      ^~~~~~~~~~~~~
yappi/_yappi.c:673:49: note: in expansion of macro ‘PyTuple_GET_ITEM’
  673 |         const char *firstarg = PyStr_AS_CSTRING(PyTuple_GET_ITEM(cobj->co_varnames, 0));
      |                                                 ^~~~~~~~~~~~~~~~
yappi/_yappi.c: In function ‘IS_SUSPENDED’:
yappi/_yappi.c:224:1: warning: control reaches end of non-void function [-Wreturn-type]
  224 | }
      | ^


I've reported upstream in https://github.com/sumerc/yappi/issues/104

Comment 4 Miro Hrončok 2022-07-18 22:31:11 UTC
Hello,

This is the second reminder (step 4 from https://docs.fedoraproject.org/en-US/fesco/Fails_to_build_from_source_Fails_to_install/#_package_removal_for_long_standing_ftbfs_and_fti_bugs).

If you know about this problem and are planning on fixing it, please acknowledge so by setting the bug status to ASSIGNED. If you don't have time to maintain this package, consider orphaning it, so maintainers of dependent packages realize the problem.

Comment 5 Ben Cotton 2022-08-09 13:18:54 UTC
This bug appears to have been reported against 'rawhide' during the Fedora Linux 37 development cycle.
Changing version to 37.

Comment 6 Alfredo Moralejo 2022-08-10 14:46:05 UTC
*** Bug 2113665 has been marked as a duplicate of this bug. ***

Comment 7 Alfredo Moralejo 2022-08-10 15:02:15 UTC
Upstreasm maintainer is working to support 3.11. Unfortunately, it'll take some time to get it working and i'd say there is no easy workaround we can apply. Details in:

https://github.com/sumerc/yappi/pull/107

https://discuss.python.org/t/python-3-11-frame-structure-and-various-changes/17895/20

Comment 8 Miro Hrončok 2022-08-25 09:54:13 UTC
(In reply to Alfredo Moralejo from comment #7)
> Upstreasm maintainer is working to support 3.11. Unfortunately, it'll take
> some time to get it working and i'd say there is no easy workaround we can
> apply. Details in:
> 
> https://github.com/sumerc/yappi/pull/107
> 
> https://discuss.python.org/t/python-3-11-frame-structure-and-various-changes/
> 17895/20

Seems like they finished \o/

https://github.com/sumerc/yappi/pull/107

Comment 9 Alfredo Moralejo 2022-09-15 10:09:43 UTC
Fixed sent in https://bodhi.fedoraproject.org/updates/FEDORA-2022-ae343bd22a

Comment 10 Fedora Update System 2022-09-15 10:12:22 UTC
FEDORA-2022-ae343bd22a has been submitted as an update to Fedora 37. https://bodhi.fedoraproject.org/updates/FEDORA-2022-ae343bd22a

Comment 11 Miro Hrončok 2022-09-15 15:06:34 UTC
Hello,

Please note that this comment was generated automatically. If you feel that this output has mistakes, please contact me via email (mhroncok).

All subpackages of a package against which this bug was filled are now installable or removed from Fedora 38.

Thanks for taking care of it!

Comment 12 Fedora Update System 2022-09-16 02:00:37 UTC
FEDORA-2022-ae343bd22a has been pushed to the Fedora 37 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2022-ae343bd22a`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2022-ae343bd22a

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 13 Fedora Update System 2022-09-20 00:16:11 UTC
FEDORA-2022-ae343bd22a has been pushed to the Fedora 37 stable repository.
If problem still persists, please make note of it in this bug report.