Matthias Koefferlein
1abfd5363e
Fixed an infinite loop
2026-04-03 00:30:01 +02:00
Matthias Koefferlein
a6dce8c2ad
Improving Layout::cleanup to consolidate library and cold proxies and to establish proper cell names if possible
2026-04-02 22:14:11 +02:00
Matthias Koefferlein
dcc7f28c77
Updating test data
2026-03-31 22:09:27 +02:00
Matthias Koefferlein
7cec679d39
Taking care of complex library reference scenarios where libraries self-reference and under the presence of stale references. Main issue is order of resolution and indirect references due to replication. Solution is to repeat resolution until saturated. A test is supplied.
2026-03-31 21:35:33 +02:00
Matthias Koefferlein
062567f206
WIP
2026-03-29 19:41:19 +02:00
Matthias Koefferlein
ddb261d708
Improving stability of library refresh
...
1.) Safeguard against missing cells
2.) Use topological order during refresh
This avoid child-first issues
3.) Use cell names and basic names for mapping
(cell names may be disambiguated while
basic names are not)
2026-03-28 22:05:23 +01:00
Matthias Koefferlein
f501f039c0
Added tests and two convenience methods
...
The two convenience methods are
Library#library_from_file
Library#library_from_files
Both create and register a Library object tied to a file.
This object supports proper reloading and re-mapping on
"refresh".
2026-03-21 14:59:08 +01:00
Matthias Koefferlein
ca3505b872
Part of the bugfix for #2305 - properly mapping cell indexes after library reload
2026-03-21 11:17:39 +01:00
Matthias Koefferlein
c14d8cc877
[consider merging] proper cleanup of properties repo - this enables using user classes for names or values. Without this pre-finalization cleanup, the user class 'destroy' method may end up calling a method of an already destroyed class object.
2026-02-24 19:17:01 +01:00
Matthias Koefferlein
bc49082955
Fixing a small glitch: drawing into a ghost cell is possible, but did not turn off the ghost cell flag. Now the flag is still on, but a non-empty cell is not considered a ghost cell for most purposes.
2026-02-19 23:26:48 +01:00
Matthias Koefferlein
a8119c5a53
Performance improvement for hierarchical processor
...
Problem was pushing of the results into the cell hierarchy
somehow lead to thread stalling. Likely due to bbox invalidation
and related effects. Solution is to store the results of
the operations inside the context structure (along with the
propagation information) and push it to the layout later in
a single step.
2026-02-19 00:03:25 +01:00
Matthias Koefferlein
b685f89639
C++20 readiness
2026-02-16 23:49:23 +01:00
Matthias Koefferlein
3df88ae279
A small, but sometimes effective optimization of DRC check functions: if a feature is entirely covered (with interaction distance) by a box, it is enough to check against the box
2026-02-15 19:17:21 +01:00
Matthias Koefferlein
c3989f63e3
[consider merging] Performance improvement of netlist step (see https://www.klayout.de/forum/discussion/2839/drc-scripts-reports-and-parallelism#latest )
2026-02-14 23:39:00 +01:00
Matthias Koefferlein
5da83e670d
Restoring drawing performance
2026-02-08 08:43:03 +01:00
Matthias Koefferlein
56fdbca1f5
Updating copyright to 2026
2026-02-07 17:12:53 +01:00
Matthias Köfferlein
887914944b
Merge pull request #2264 from KLayout/wip
...
Wip
2026-02-07 09:46:38 +01:00
Matthias Köfferlein
3f9d8906f9
Merge pull request #2266 from KLayout/bugfix/issue-2262
...
Bugfix/issue 2262
2026-02-07 09:18:03 +01:00
Matthias Koefferlein
4e0befd8cd
Trying to fix Windows builds
2026-02-05 22:16:58 +01:00
Matthias Koefferlein
f68d02c6f3
Merge branch 'master' into wip
2026-02-05 22:05:24 +01:00
Matthias Koefferlein
22a197169d
Trying to fix Windows builds
2026-02-05 22:04:10 +01:00
Matthias Köfferlein
01d2ccbdc5
Merge pull request #2257 from KLayout/evaluate_net-enhancements
...
Evaluate net enhancements
2026-02-05 21:53:39 +01:00
Matthias Koefferlein
0067d46541
Providing a (maybe faster, sometimes) backup implementation for cell mapping - to be used later maybe
2026-02-01 20:27:49 +01:00
Matthias Koefferlein
f7870338cf
[consider merging] Fixed a MT problem that can be fixed by avoiding recursive calls of Layout::update
2026-01-31 23:02:26 +01:00
Matthias Koefferlein
c12942c5bc
[consider merging] Fixed a MT problem that can be fixed by avoiding recursive calls of Layout::update
2026-01-31 21:53:28 +01:00
Matthias Koefferlein
6661f5b5dd
WIP
2026-01-27 20:54:24 +01:00
Matthias Koefferlein
94a425da0d
WIP
2026-01-26 23:55:55 +01:00
Matthias Koefferlein
9e79942bb9
Proposing one part of fix
2026-01-25 10:06:58 +01:00
Matthias Koefferlein
c6faa3e628
'extent_refs' DRC function: enabling for edge pairs and edges, clarification of documentation
2026-01-11 22:34:52 +01:00
Matthias Koefferlein
80f78bffc9
Improving solution for net cluster renaming for join_nets
2026-01-11 20:53:18 +01:00
Matthias Koefferlein
b324f3f5cc
Bugfix/enhancement: keeping clusters and nets in sync when joining nets. This will enhance robustness under presence of soft connection errors
2026-01-11 17:45:44 +01:00
Matthias Koefferlein
38ddffc645
L2N log entries with net references
...
* Log entries on the L2N object can now have net references
(by expanded name) and the nets will be highlighted
when the log entry is selected in the netlist browser
For an application see drcSimpleTests:147.
* New function ("db") in evaluate_nets
* BUGFIX: proper computation of transformations for multiple
selections of nets in netlist browser
2026-01-04 22:48:35 +01:00
Matthias Koefferlein
b44bab9943
Making net name mandatory (using expanded_name) for L2N format, so that we can refer to net name in log entries later
2026-01-04 17:10:35 +01:00
Matthias Koefferlein
c50b56f868
Shortcutting evalute_nets if there is nothing to do.
2026-01-04 17:10:08 +01:00
Matthias Koefferlein
60a5dc1b8a
Bugfix of 'evaluate_nets' function, added tests
2026-01-04 17:07:38 +01:00
Matthias Koefferlein
17a525f39f
Fixed a typo
2026-01-04 15:34:48 +01:00
Matthias Koefferlein
407bbbcf62
More options on 'evaluate_nets' expressions, i.e. 'copy'. See documentation for details.
2026-01-03 01:21:30 +01:00
Matthias Koefferlein
5b0e9f146f
Fixing issue #2252 (internal error on netlist compare)
2025-12-23 18:46:08 +01:00
Matthias Koefferlein
989f80e1a6
Using floats for Polygon::smooth distance checks, so that precise measurements are taken
2025-12-22 21:02:22 +01:00
Matthias Koefferlein
0bb0cb4a12
WIP
2025-12-01 00:28:43 +01:00
Matthias Koefferlein
d8d53fb328
Merge remote-tracking branch 'origin/devel'
2025-11-09 21:14:39 +01:00
Matthias Koefferlein
dd9b38a92f
Refactoring of Python module build system, now based on configuration files mostly.
2025-11-09 17:46:25 +01:00
Matthias Koefferlein
bd6f62013e
Importing latest version of LStream package, bug fixes (mag instances, layer were duplicated)
2025-11-09 11:30:00 +01:00
Matthias Koefferlein
89cc79cbbc
Fixing issue #2208
...
Problem was rounding that lead to incorrect distance measurements
between parallel edges when one edge was very short.
2025-11-08 23:45:09 +01:00
Matthias Koefferlein
5add5c3df2
[consider merging] Library rename now removes an existing library
2025-11-08 15:55:25 +01:00
Matthias Koefferlein
289facd5ee
Merge branch 'master' into devel
2025-10-26 16:36:03 +01:00
Matthias Koefferlein
fc3185165f
Added some tests
2025-10-25 17:16:13 +02:00
Matthias Koefferlein
b523f05f80
Some typos fixed
2025-10-25 00:33:25 +02:00
Matthias Koefferlein
e8e2858af3
Implemented a solution for #2195
...
A new PCell method cell_name/cell_name_impl that
delivers a cell name, which is used for "convert to
static cell" and as cell name in general.
Needs testing.
2025-10-25 00:21:04 +02:00
Matthias Koefferlein
4ee73b5f86
Added one more test
2025-10-23 18:50:44 +02:00