[Bug 2066026] Re: [SRU] Klayout 0.28.15 segmentation fault on startup
Erich Eickmeyer
2066026 at bugs.launchpad.net
Thu Jun 6 22:34:18 UTC 2024
** Description changed:
+ [Impact]
+
+ Klayout 0.28.15 is completely incompatible with Python 3.12, and
+ segfaults on startup. Included patches attempted to increase the
+ supported version number, but the code itself was incompatible and it
+ simply would not run.
+
+ Attempts to include a simple patch from upstream proved unsuccessful and
+ resulted in a complete FTBFS. This was due to the shifting of code in
+ other places prior to the commits of the patch, meaning the patch was
+ irrelevant without other pieces of code changed. Hence, the first
+ version of klayout that supported Python 3.12 was 0.28.16, released on
+ 12 February 2024. Unfortunately, it was not uploaded to Debian prior to
+ Feature Freeze/Debian Import Freeze, so it did not make it in-time.
+
+ As reported by the reporter of this bug, no testing on the runtime was
+ done prior to release. So, while the build was successful, runs are
+ reproducibly unsuccessful. This package is, therefore, completely
+ useless in the archive as it stands unless it is updated to version
+ 0.28.16.
+
+ [Test Case]
+
+ * Install klayout
+ * Attempt to run klayout
+
+ Expected: Application runs
+ Actual: Segmentation fault
+
+ [What could go wrong]
+
+ Looking into this application, it seems to be a Suggests of electronics-
+ asic-dev which is a metapackage for asic development, which installs
+ applications much like itself, i.e. for electronics engineers and others
+ who build electronic circuits. It doesn't appear to enhance any other
+ packages, meaning it has no *actual* reverse dependencies, nor does it
+ provide any libraries.
+
+ It's hard to regress an application that simply does not function, and
+ considering it has no actual reverse dependencies, I'm having trouble
+ fathoming anything going wrong here other than 0.28.16 also failing to
+ run with further updates. :)
+
+ [Other Information]
+
+ While this is a point release and does concentrate on bug fixes, it does
+ include some "enhancements" as they're called on the changelog[1] that
+ may or may not be considered "features":
+
+ * Enhancement: DRC enhancements related to touching edges
+ - New DRC function switches: "without_touching_corners", "without_touching_edges" to skip width and space errors at kissing corners and touching-edge configurations
+ - Kissing corners are now detected also in non-collinear edge configuration
+ * Enhancement: OASIS reader errors out on broken OASIS with duplicate CELLNAMEs
+
+ While including features would normally require a Feature Freeze
+ exception or a backport, I would argue against it in this case as the
+ version in the development release of Ubuntu at this time is 0.29.1
+ which is magnitudes newer and definitely, per the changelog[2] contains
+ many new features.
+
+ Other options, such as simply patching for Python 3.12, have been
+ exhausted. No-change rebuilds also proved to be ineffective. Moving up
+ one point release as opposed to moving to the latest release seemed to
+ be the best compromise. Apologies for the diff being so large but,
+ unfortunately, carrying patches to make 0.28.15 Python 3.12 compatible
+ would have been more time-consuming and created a diff nearly as large.
+
+ [1]https://www.klayout.de/development.html#0.28.16
+ [2]https://www.klayout.de/development.html#0.29.1
+ ---
+ Original bug report follows:
+
On Ubuntu 24.04, Klayout 0.28.15-1build5 crashes on startup.
This is due to a bug described in the upstream issue
https://github.com/KLayout/klayout/issues/1619, which shows up on
systems using Python 3.12.
This bug was fixed in Klayout versions >=0.28.16.
--
You received this bug notification because you are a member of Ubuntu
Sponsors, which is subscribed to the bug report.
https://bugs.launchpad.net/bugs/2066026
Title:
[SRU] Klayout 0.28.15 segmentation fault on startup
Status in klayout package in Ubuntu:
Fix Released
Status in klayout source package in Noble:
In Progress
Status in klayout source package in Oracular:
Fix Released
Bug description:
[Impact]
Klayout 0.28.15 is completely incompatible with Python 3.12, and
segfaults on startup. Included patches attempted to increase the
supported version number, but the code itself was incompatible and it
simply would not run.
Attempts to include a simple patch from upstream proved unsuccessful
and resulted in a complete FTBFS. This was due to the shifting of code
in other places prior to the commits of the patch, meaning the patch
was irrelevant without other pieces of code changed. Hence, the first
version of klayout that supported Python 3.12 was 0.28.16, released on
12 February 2024. Unfortunately, it was not uploaded to Debian prior
to Feature Freeze/Debian Import Freeze, so it did not make it in-time.
As reported by the reporter of this bug, no testing on the runtime was
done prior to release. So, while the build was successful, runs are
reproducibly unsuccessful. This package is, therefore, completely
useless in the archive as it stands unless it is updated to version
0.28.16.
[Test Case]
* Install klayout
* Attempt to run klayout
Expected: Application runs
Actual: Segmentation fault
[What could go wrong]
Looking into this application, it seems to be a Suggests of
electronics-asic-dev which is a metapackage for asic development,
which installs applications much like itself, i.e. for electronics
engineers and others who build electronic circuits. It doesn't appear
to enhance any other packages, meaning it has no *actual* reverse
dependencies, nor does it provide any libraries.
It's hard to regress an application that simply does not function, and
considering it has no actual reverse dependencies, I'm having trouble
fathoming anything going wrong here other than 0.28.16 also failing to
run with further updates. :)
[Other Information]
While this is a point release and does concentrate on bug fixes, it
does include some "enhancements" as they're called on the changelog[1]
that may or may not be considered "features":
* Enhancement: DRC enhancements related to touching edges
- New DRC function switches: "without_touching_corners", "without_touching_edges" to skip width and space errors at kissing corners and touching-edge configurations
- Kissing corners are now detected also in non-collinear edge configuration
* Enhancement: OASIS reader errors out on broken OASIS with duplicate CELLNAMEs
While including features would normally require a Feature Freeze
exception or a backport, I would argue against it in this case as the
version in the development release of Ubuntu at this time is 0.29.1
which is magnitudes newer and definitely, per the changelog[2]
contains many new features.
Other options, such as simply patching for Python 3.12, have been
exhausted. No-change rebuilds also proved to be ineffective. Moving up
one point release as opposed to moving to the latest release seemed to
be the best compromise. Apologies for the diff being so large but,
unfortunately, carrying patches to make 0.28.15 Python 3.12
compatible would have been more time-consuming and created a diff
nearly as large.
[1]https://www.klayout.de/development.html#0.28.16
[2]https://www.klayout.de/development.html#0.29.1
---
Original bug report follows:
On Ubuntu 24.04, Klayout 0.28.15-1build5 crashes on startup.
This is due to a bug described in the upstream issue
https://github.com/KLayout/klayout/issues/1619, which shows up on
systems using Python 3.12.
This bug was fixed in Klayout versions >=0.28.16.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/klayout/+bug/2066026/+subscriptions
More information about the Ubuntu-sponsors
mailing list