python-pyside6 fails to build with Python 3.13.0a4. /builddir/build/BUILD/pyside-setup-everywhere-src-6.6.2/sources/pyside6/qtexampleicons/module.c:36:5: error: implicit declaration of function ‘Py_SetProgramName’; did you mean ‘Py_GetProgramName’? [-Wimplicit-function-declaration] According to https://docs.python.org/3.13/whatsnew/3.13.html: Remove the following old functions to configure the Python initialization, deprecated in Python 3.11: PySys_AddWarnOptionUnicode(): use PyConfig.warnoptions instead. PySys_AddWarnOption(): use PyConfig.warnoptions instead. PySys_AddXOption(): use PyConfig.xoptions instead. PySys_HasWarnOptions(): use PyConfig.xoptions instead. PySys_SetArgvEx(): set PyConfig.argv instead. PySys_SetArgv(): set PyConfig.argv instead. PySys_SetPath(): set PyConfig.module_search_paths instead. Py_SetPath(): set PyConfig.module_search_paths instead. Py_SetProgramName(): set PyConfig.program_name instead. Py_SetPythonHome(): set PyConfig.home instead. Py_SetStandardStreamEncoding(): set PyConfig.stdio_encoding instead, and set also maybe PyConfig.legacy_windows_stdio (on Windows). _Py_SetProgramFullPath(): set PyConfig.executable instead. https://docs.python.org/3.13/whatsnew/3.13.html For the build logs, see: https://copr-be.cloud.fedoraproject.org/results/@python/python3.13/fedora-rawhide-x86_64/07067584-python-pyside6/ For all our attempts to build python-pyside6 with Python 3.13, see: https://copr.fedorainfracloud.org/coprs/g/python/python3.13/package/python-pyside6/ 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.13: https://copr.fedorainfracloud.org/coprs/g/python/python3.13/ Let us know here if you have any questions. Python 3.13 is planned to be included in Fedora 41. To make that update smoother, we're building Fedora packages with all pre-releases of Python 3.13. 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.
Hi Karolina, thank you for letting me know. It's just imported so we currently look for f40 issues to have it included (at all) as a priority. Qt will be updated to 6.6.3 soon and then 6.7.0 soon after, so the package will get updated together with the Qt main release which will support python 3.13 out of the box I think. https://wiki.qt.io/Qt_for_Python has a compatibility matrix, unfortunately that doesn't list 3.13 yet.
Hi Karolina, this is great work. pyside6 is needed to get the qt6 version of freecad working, which is what I'm interested in. It looks like you got your build working. However, if I try building freecad from git with the python-pyside6-6.6.2-1.fc41 it fails, because this version of pyside has the reduced API and freecad needs the full API. The good news is that all I had to do was add -DFORCE_LIMITED_API=no to the cmake line of the spec file, rebuild and install and then I can build a working version of freecad. I only tested with Fedora 39 for now, since that was the first version that didn't have freecad in the repository (because of the pyside dependency). So any chance of building with the full API for Fedora 39 onwards? Obviously, the same goes for Qt 6.6.3 and 6.7.0. Thanks for your effort.
This bugzilla is about a specific problem with python-pyside6. You seem to have a different problem. I suggest you open a different bugzilla for your problem.
(In reply to Miro Hrončok from comment #3) > This bugzilla is about a specific problem with python-pyside6. You seem to > have a different problem. I suggest you open a different bugzilla for your > problem. Hi Miro, that is okay for me and I'm thankful for the hints and practical tests; I was just irritated if that would solve the problem of python 3.13 or only that of freecad or both ? A clarification would be helpful and indeed offers of helping with a test of copr builds that solve the problems :) We're available in the kde-sig room on Matrix as well for direct communication to solve those problems.
My comment was about python-pyside6, but not python 3.13. Sorry for the confusion. I just wanted to give the heads up that the default reduced API is not very useful for some projects. I realise you are focusing on the next-but-one release, but I'm just an end user stuck with no upgrade path from Fedora 38, because python 3.12 already broke a crucial package, which Fedora just pulled, leaving end users like me to struggle trying to get it to work. But yes, I guess it should have been a separate bug report. Sorry.
(In reply to Karolina Surma from comment #0) > python-pyside6 fails to build with Python 3.13.0a4. > > /builddir/build/BUILD/pyside-setup-everywhere-src-6.6.2/sources/pyside6/ > qtexampleicons/module.c:36:5: error: implicit declaration of function > ‘Py_SetProgramName’; did you mean ‘Py_GetProgramName’? > [-Wimplicit-function-declaration] > > According to https://docs.python.org/3.13/whatsnew/3.13.html: > Remove the following old functions to configure the Python initialization, > deprecated in Python 3.11: > PySys_AddWarnOptionUnicode(): use PyConfig.warnoptions instead. > PySys_AddWarnOption(): use PyConfig.warnoptions instead. > PySys_AddXOption(): use PyConfig.xoptions instead. > PySys_HasWarnOptions(): use PyConfig.xoptions instead. > PySys_SetArgvEx(): set PyConfig.argv instead. > PySys_SetArgv(): set PyConfig.argv instead. > PySys_SetPath(): set PyConfig.module_search_paths instead. > Py_SetPath(): set PyConfig.module_search_paths instead. > Py_SetProgramName(): set PyConfig.program_name instead. > Py_SetPythonHome(): set PyConfig.home instead. > Py_SetStandardStreamEncoding(): set PyConfig.stdio_encoding instead, and > set also maybe PyConfig.legacy_windows_stdio (on Windows). > _Py_SetProgramFullPath(): set PyConfig.executable instead. > > > https://docs.python.org/3.13/whatsnew/3.13.html > > For the build logs, see: > https://copr-be.cloud.fedoraproject.org/results/@python/python3.13/fedora- > rawhide-x86_64/07067584-python-pyside6/ > > For all our attempts to build python-pyside6 with Python 3.13, see: > https://copr.fedorainfracloud.org/coprs/g/python/python3.13/package/python- > pyside6/ > > 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.13: > https://copr.fedorainfracloud.org/coprs/g/python/python3.13/ > > Let us know here if you have any questions. > > Python 3.13 is planned to be included in Fedora 41. > To make that update smoother, we're building Fedora packages with all > pre-releases of Python 3.13. > 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. Could you please give it a new test after https://src.fedoraproject.org/rpms/python-pyside6/pull-request/1 ? I merged my PR already so you can do a rebuild. Please let me know about your results.
(In reply to nvwarr from comment #5) > My comment was about python-pyside6, but not python 3.13. Sorry for the > confusion. I just wanted to give the heads up that the default reduced API > is not very useful for some projects. I realise you are focusing on the > next-but-one release, but I'm just an end user stuck with no upgrade path > from Fedora 38, because python 3.12 already broke a crucial package, which > Fedora just pulled, leaving end users like me to struggle trying to get it > to work. But yes, I guess it should have been a separate bug report. Sorry. Could you as well test to see if freecad works for you now ?
(In reply to loise from comment #6) > (In reply to Karolina Surma from comment #0) > > python-pyside6 fails to build with Python 3.13.0a4. > > > > /builddir/build/BUILD/pyside-setup-everywhere-src-6.6.2/sources/pyside6/ > > qtexampleicons/module.c:36:5: error: implicit declaration of function > > ‘Py_SetProgramName’; did you mean ‘Py_GetProgramName’? > > [-Wimplicit-function-declaration] > > > > According to https://docs.python.org/3.13/whatsnew/3.13.html: > > Remove the following old functions to configure the Python initialization, > > deprecated in Python 3.11: > > PySys_AddWarnOptionUnicode(): use PyConfig.warnoptions instead. > > PySys_AddWarnOption(): use PyConfig.warnoptions instead. > > PySys_AddXOption(): use PyConfig.xoptions instead. > > PySys_HasWarnOptions(): use PyConfig.xoptions instead. > > PySys_SetArgvEx(): set PyConfig.argv instead. > > PySys_SetArgv(): set PyConfig.argv instead. > > PySys_SetPath(): set PyConfig.module_search_paths instead. > > Py_SetPath(): set PyConfig.module_search_paths instead. > > Py_SetProgramName(): set PyConfig.program_name instead. > > Py_SetPythonHome(): set PyConfig.home instead. > > Py_SetStandardStreamEncoding(): set PyConfig.stdio_encoding instead, and > > set also maybe PyConfig.legacy_windows_stdio (on Windows). > > _Py_SetProgramFullPath(): set PyConfig.executable instead. > > > > > > https://docs.python.org/3.13/whatsnew/3.13.html > > > > For the build logs, see: > > https://copr-be.cloud.fedoraproject.org/results/@python/python3.13/fedora- > > rawhide-x86_64/07067584-python-pyside6/ > > > > For all our attempts to build python-pyside6 with Python 3.13, see: > > https://copr.fedorainfracloud.org/coprs/g/python/python3.13/package/python- > > pyside6/ > > > > 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.13: > > https://copr.fedorainfracloud.org/coprs/g/python/python3.13/ > > > > Let us know here if you have any questions. > > > > Python 3.13 is planned to be included in Fedora 41. > > To make that update smoother, we're building Fedora packages with all > > pre-releases of Python 3.13. > > 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. > > Could you please give it a new test after > https://src.fedoraproject.org/rpms/python-pyside6/pull-request/1 ? I merged > my PR already so you can do a rebuild. > > Please let me know about your results. The build fails with the same issue - I don't think changing gcc to clang will help in this case. The function `Py_SetProgramName` has been removed from Python 3.13 and instead `PyConfig.program_name` has to be set in the source code of pyside6.
(In reply to loise from comment #7) > (In reply to nvwarr from comment #5) > > My comment was about python-pyside6, but not python 3.13. Sorry for the > > confusion. I just wanted to give the heads up that the default reduced API > > is not very useful for some projects. I realise you are focusing on the > > next-but-one release, but I'm just an end user stuck with no upgrade path > > from Fedora 38, because python 3.12 already broke a crucial package, which > > Fedora just pulled, leaving end users like me to struggle trying to get it > > to work. But yes, I guess it should have been a separate bug report. Sorry. > > Could you as well test to see if freecad works for you now ? Yes, I can build and run freecad with this version. So thanks for your great work, Loise.
Currently, it's not possible to build python-pyside6 in Fedora Rawhide, because of the incompatible LLVM version: -- Found Python: /usr/bin/python3.13 (found version "3.13.0") found components: Interpreter Development Development.Module Development.Embed CMake Error at /usr/lib64/cmake/clang/ClangConfig.cmake:10 (find_package): Could not find a configuration file for package "LLVM" that exactly matches requested version "18.1.3". The following configuration files were considered but not accepted: /usr/lib64/cmake/llvm/LLVMConfig.cmake, version: 18.1.4 /lib64/cmake/llvm/LLVMConfig.cmake, version: 18.1.4 Call Stack (most recent call first): sources/shiboken6/cmake/ShibokenHelpers.cmake:170 (find_package) sources/shiboken6/cmake/ShibokenSetup.cmake:37 (setup_clang) sources/shiboken6/CMakeLists.txt:13 (include)
*** Bug 2291878 has been marked as a duplicate of this bug. ***
This was addressed by the following PR: https://src.fedoraproject.org/rpms/python-pyside6/pull-request/3