| Summary: | Crash while loading Python code | ||
|---|---|---|---|
| Product: | [Applications] kdevelop | Reporter: | Jan Kriho <Erbureth> |
| Component: | general | Assignee: | kdevelop-bugs-null |
| Status: | RESOLVED DOWNSTREAM | ||
| Severity: | crash | CC: | mail, pino |
| Priority: | NOR | Keywords: | drkonqi |
| Version First Reported In: | unspecified | ||
| Target Milestone: | --- | ||
| Platform: | Debian testing | ||
| OS: | Linux | ||
| Latest Commit: | Version Fixed/Implemented In: | ||
| Sentry Crash Report: | |||
|
Description
Jan Kriho
2023-01-03 21:38:02 UTC
Hi, you are the second person to report this crash, but I'm pretty confused by it. The code indicated in the backtrace is probably faulty, but it is not contained in the 22.10 release. It was only added to the master branch. So, either you are using some non-released unstable build, or Debian packaged something else than our released archives. Any idea what's going on? Hi, after some digging, I believe it was caused because of Python 3.11 transition, as described in a Debian bug https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1008694 They have included some of the patches from the master branch, as it was the only way to make the Python plugin work with the newer Python: https://salsa.debian.org/qt-kde-team/kde/kdevelop-python/-/tree/master/debian/patches I have submitted the bug to the Debian package too, and cross-link it when I receive the bug # Regards, Jan Kriho Debian bug as promised: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1027845 Thanks a lot. That 4bcec08fb400b was picked is understandable, it fixes build with 3.11, which I didn't anticipate was required so quickly. Including c4ec40a9cac is odd though, it is the commit that introduced the crash and it's also completely unrelated to any build or even python 3.11 topic, it just adds support for some random python 3.10 feature. It should just be removed from the patch set. Hello, Debian packager here. (In reply to Sven Brauch from comment #4) > Including c4ec40a9cac is odd though, it is the commit that introduced the > crash and it's also completely unrelated to any build or even python 3.11 > topic, it just adds support for some random python 3.10 feature. I backported it because, as you wrote, it adds the basic support for some Python 3.10 feature, which I thought may be useful for users. > It should just be removed from the patch set. While I can do that (sigh), it would simply be delaying the problem, wouldn't it? I mean, if you said that that commit introduces a crash, that means kdev-python in master (for the future Gear 23.04) is currently buggy. Wouldn't it be better to fix the problem instead? Hi Pino, first of all, thanks a lot for your work in packaging kdev-python and sorry for the chaos it always causes. Of course I will fix this crash, but also that fix should not be backported. The maintainers of the respective applications have the best judgement of which feature is ready to be included in a release and which isn't, and these decisions should not be overruled by packagers. The change was also made long after feature freeze for Gear 22.12. I have built the package without the c4ec40a9cac patch, and it fixes the crash for me. (In reply to Sven Brauch from comment #6) > The maintainers of the respective applications have the best judgement of > which feature is ready to be included in a release and which isn't, and > these decisions should not be overruled by packagers. The change was also > made long after feature freeze for Gear 22.12. Sorry if I seem negative: I cannot get this paragraph as exactly cooperative. Also, the support for Python 3.11 was added only in master (currently towards 23.04) and it is not in 22.12.x; according to your logic, I should not backport it either, because it would be a "maintainer decision that should not be overruled by packagers"? Debian unstable recently switched to Python 3.11 as default (other distros did it already), so I see a bit of contradicting logic... Hi, I think ideally in this case you would have notified me that you needed Python 3.11 support in Gear 22.12. I would have backported it there. Of course I see the problem that not all maintainers (including me) will always respond in time to such requests and you might not have the time to deal with that for each package. Still, I dunno. I made an explicit, conscious decision to not include the patch in our tagged release because I knew it was risky, and it was just shipped to users regardless, without me even knowing. That's odd to me. (In reply to Sven Brauch from comment #9) > Hi, I think ideally in this case you would have notified me that you needed > Python 3.11 support in Gear 22.12. I would have backported it there. While that is true, I think it would not be unreasonable to expect that, once a new Python version is released, it will start to flow into distros, and distro packagers will need to make sure all the Python-using packages (modules, plugins like kdev-python, etc) are compatible with it. > Still, I dunno. I made an explicit, conscious decision to not include the > patch in our tagged release because I knew it was risky, and it was just > shipped to users regardless, without me even knowing. That's odd to me. What I can tell you from my POV (not even with a DD hat, as non-kdevelop contributor) is that I don't find it easy to determine what you can "conscious decision": sometimes maintainer do not backport patches at all in stable branches, sometimes they do when requested, sometimes they do aggressively... and you don't know what's the actual case here, unless you really know each person involved. So please bear with people that are not part of the "kdevelop development group". Back to the actual situation here: 1) should I drop the extra bits of Python 3.10 support, even if there will be (hopefully soon) a fix for that coming? 2) should I drop the support for Python 3.11, since it is not in 22.12.x as "conscious decision"? Hi, yes, I completely missed the 3.11 release, we were still busy with getting 3.10 working. Sorry for that. As said I understand your situation. I think the easiest change to improve the situation the next time something like this happens would be to write a 2-line bug or email like "hey, by the way in Debian we did X because Y doesn't work, please fix". After all, I do care that our users get working software, and I don't want you as a packager to suffer with problems I inadvertently created. Re. the current situation, 1) Yes please drop this patch, it is not needed to make the application compile and run properly with Python 3.10, it just adds some nice-to-have feature. This feature will come in 23.04. 2) Please keep the 3.11 support in, as you obviously need it in order to ship the package. I will also backport it for Gear 22.12.2 on Feb. 02, so you should be able to use this next release without patches then. The problem has been fixed in Debian unstable few days ago, and now it migrated to testing too. Hence, closing. Hi, I backported Python 3.11 support to 22.12, so it should be in 22.12.1. I also fixed the original crash which caused this issue. That fix is on master and will be in KDE Gear 23.04 (together with the feature it fixes). Sorry -- the backporting happened to 22.12.2, not .1 of course. |