jpype fails to build with Python 3.11.0a4. native/common/jp_exception.cpp: In function ‘PyTracebackObject* tb_create(PyTracebackObject*, PyObject*, const char*, const char*, int)’: native/common/jp_exception.cpp:518:23: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘frame’; did you mean ‘cframe’? 518 | state.frame = last_traceback->tb_frame; | ^~~~~ | cframe native/common/jp_exception.cpp:520:23: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘frame’; did you mean ‘cframe’? 520 | state.frame = NULL; | ^~~~~ | cframe native/common/jp_exception.cpp:546:38: error: ‘PyFrameObject’ {aka ‘struct _frame’} has no member named ‘f_lasti’ 546 | traceback->tb_lasti = frame->f_lasti; | ^~~~~~~ error: command '/usr/bin/gcc' failed with exit code 1 Changes of the PyFrameObject structure members: f_code: removed, use PyFrame_GetCode() instead. Warning: the function returns a strong reference, need to call Py_DECREF(). f_back: changed, use PyFrame_GetBack(). f_builtins: removed, use PyObject_GetAttrString(frame, "f_builtins"). f_globals: removed, use PyObject_GetAttrString(frame, "f_globals"). f_locals: removed, use PyObject_GetAttrString(frame, "f_locals"). f_lasti: removed, use PyObject_GetAttrString(frame, "f_lasti"). f_valuesstack: removed. f_stackdepth: removed. f_gen: removed. f_iblock: removed. f_state: removed. f_blockstack: removed. f_localsplus: removed. The Python frame object is now created lazily. A side effect is that the f_back member must not be accessed directly, since its value is now also computed lazily. The PyFrame_GetBack() function must be called instead. Code defining PyFrame_GetCode() on Python 3.8 and older: https://docs.python.org/3.11/whatsnew/3.11.html For the build logs, see: https://copr-be.cloud.fedoraproject.org/results/@python/python3.11/fedora-rawhide-x86_64/03271117-jpype/ For all our attempts to build jpype with Python 3.11, see: https://copr.fedorainfracloud.org/coprs/g/python/python3.11/package/jpype/ 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.11: https://copr.fedorainfracloud.org/coprs/g/python/python3.11/ Let us know here if you have any questions. Python 3.11 is planned to be included in Fedora 37. To make that update smoother, we're building Fedora packages with all pre-releases of Python 3.11. 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.
Thanks for your report. This seems somehow to be a regression we've seen with Python 3.10 and Fedora 35 as well. See bz1899449 with same error and as agreed [¹] as a blocker where we waited for upstream with next version 1.3.0 released, besides maybe exclude failing architecture (bz2005829 for s390x). Upstream is actively working on 1.3.1 but no official release available yet. As currently used Python 3.11.0aX are pre-releases only, my suggestion is to wait for a final release. [¹] https://pagure.io/fedora-qa/blocker-review/issue/466
s/same error/similiar error/
In my opinion, this is the same but different regression like we have seen in bz1899449. There were further changes in Python 3.11 regarding PyFrameObject structure members (see my original comment above). I think it would be good to inform upstream about it so they are aware of it while working on 1.3.1.
Execution of some tests fails with java 17, see bz2051183.
This bug appears to have been reported against 'rawhide' during the Fedora 36 development cycle. Changing version to 36.
Well, is this still relevant for build on all architectures? e.g. I see actual Change request for F37 to exclude i386 if possible.
*** Bug 2098724 has been marked as a duplicate of this bug. ***
We are past Fedora 37 Beta Freeze and this package does not even install. What is the plan wrt this package? Can it please be removed from the distribution until this is solved?
(In reply to Miro Hrončok from comment #8) > We are past Fedora 37 Beta Freeze and this package does not even install. > What is the plan wrt this package? Can it please be removed from the > distribution until this is solved? Is your comment about bug 2098976 marked as duplicate? In guess about missing numpy dependency with python 3.10 as stated there.
(In reply to Miro Hrončok from comment #8) > We are past Fedora 37 Beta Freeze and this package does not even install. > What is the plan wrt this package? Can it please be removed from the > distribution until this is solved? Is your comment about bug 2098724 marked as duplicate? What happens if you do dnf install python3.10 in prior? Maybe dnf can not resolve versioned dependency of python(abi). Please ignore comment #9 as I wrongly tried to reply to unrelated bug.
I have no idea what you mean about the duplicate, sorry. See also https://bugzilla.redhat.com/show_bug.cgi?id=2098787#c7
Upstream is aware, see issue and pull request there. https://github.com/jpype-project/jpype/pull/1087
That's good news, but no reason to close this Bugzilla. The package still does not install in Fedora 37 and 38.
*** Bug 2086264 has been marked as a duplicate of this bug. ***
Another bugs with similiarly availabe upstream issues related python 3.11 were closed as deferred, so I decided to orientate there.
https://github.com/jpype-project/jpype/pull/1087#issuecomment-1247398671
Please either retire or rebuild the package with Python 3.11 before closing this Bugzilla. The package still does not install in Fedora 37 and 38.
Okay, you don't have to agree but then we both partly are wrong in assumptions. > Merging #1087 (21ef638) into master (82a7658) will increase coverage by 0.00%. The diff coverage is 81.25%. Well, I decide to retire for F37+ then. Please keep this package in F36. Thanks for your help.
done. [rawhide dfadde9] FTBFS in F37 with Python 3.11 rhbz#2049705
Thanks.
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!
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 37. Thanks for taking care of it!