Matthias Koefferlein
1d0a724a1b
Updating changelogs
2026-07-25 09:48:30 +02:00
Matthias Köfferlein
eeb908669a
Merge pull request #2389 from KLayout/wip
...
Wip
2026-07-25 09:45:27 +02:00
Matthias Koefferlein
189ba72666
Performance enhancements for two-layer DRC checks
...
The main optimization was introducing "distance overrides"
in the local processor. That means, the primary shapes
mixed in for local merge are collected with distance 0,
while the shapes from the other layer are collected with
the check distance.
Some more optimizations involve early shortcuts in some
cases.
2026-07-23 22:48:42 +02:00
Matthias Koefferlein
1e02ffe539
More consistently inherit the min_coherence flag during flat Region operations
2026-07-22 23:29:59 +02:00
Matthias Koefferlein
9382e259ce
Adding support for min_coherence toggling in OriginalLayerRegion
2026-07-22 23:11:26 +02:00
Matthias Koefferlein
51f39d71e2
WIP: hardening FlatRegion against min_coherence toggles (IHP PDK optimization)
2026-07-22 22:30:09 +02:00
Matthias Koefferlein
7ed80e6dd8
Bugfix: inserting a Shapes container into another one did not always properly consider translation from editable to non-editable one and vice-versa
2026-07-22 22:29:12 +02:00
Matthias Koefferlein
a82f428d4c
WIP: hardening DeepRegion against min_coherence toggles (IHP PDK optimization)
2026-07-22 00:00:33 +02:00
Matthias Koefferlein
5ae17c17a5
Updating Python stubs
2026-07-20 23:56:56 +02:00
Matthias Koefferlein
5055d4fcf4
Merge remote-tracking branch 'origin/master' into wip
2026-07-20 23:20:47 +02:00
Matthias Koefferlein
2d5d64351a
Preparing 0.30.10
2026-07-20 23:20:39 +02:00
Matthias Köfferlein
7332de7260
Merge pull request #2397 from KLayout/bugfix/issue-2396
...
Fixed issue #2396 (support weak refs in Python)
2026-07-20 23:03:34 +02:00
Matthias Köfferlein
bc5d1a35f2
Merge pull request #2394 from KLayout/feature/issue-2391
...
Implemented "cm_grid_increase" and "cm_grid_decrease"
2026-07-20 23:03:15 +02:00
Matthias Köfferlein
2d6e037d50
Merge pull request #2393 from KLayout/bugfix/issue-2392
...
Fixing issue #2392 (PCell rebinding fails aber technology change)
2026-07-20 23:00:28 +02:00
Matthias Koefferlein
a50319fcbb
Updating test data
2026-07-20 22:58:14 +02:00
Matthias Koefferlein
116602f662
Updating test data
2026-07-20 21:42:19 +02:00
Matthias Koefferlein
cb07b856df
Merge branch 'xxx' into wip
2026-07-20 21:03:47 +02:00
Matthias Koefferlein
b004cc2dfd
Fixing name update - layer index needs to be valid
2026-07-20 21:03:38 +02:00
Matthias Koefferlein
93c43d049a
Bugfix: Region#edges wasn't working properly in deep mode with properties - edges are not separated according to polygon properties
2026-07-20 01:09:47 +02:00
Matthias Koefferlein
5060d0fcdb
Refactoring
2026-07-20 01:00:24 +02:00
Matthias Koefferlein
b2b5df3d45
Some refactoring
2026-07-19 23:36:14 +02:00
Matthias Koefferlein
604db5a1aa
Updating test data
2026-07-19 20:56:05 +02:00
Matthias Koefferlein
484ab91850
WIP: deep mode implementation of enhanced 2-layer check, tests
2026-07-19 20:53:27 +02:00
Matthias Koefferlein
a75f1d77e3
WIP: trying performance improvement of two-layer DRC checks (do merge internally instead of before)
2026-07-19 19:55:05 +02:00
Matthias Koefferlein
efe12377ac
Fixing non-Qt builds
2026-07-19 16:01:04 +02:00
Matthias Koefferlein
b51187bf7c
Merge branch 'master' into wip
2026-07-19 15:13:40 +02:00
Matthias Koefferlein
4e6834d92d
Trying to fix build errors for Python modules
2026-07-19 15:13:13 +02:00
Matthias Koefferlein
6253f04966
Fixed issue #2396 (support weak refs in Python)
2026-07-19 10:45:51 +02:00
Matthias Koefferlein
1a4d943556
Pushing the new functions to the grid menu and adding the 'default' indicator as proposed
2026-07-18 18:34:13 +02:00
Matthias Koefferlein
68e7b271c3
Implemented "cm_grid_increase" and "cm_grid_decrease"
...
Default key bindings are "G" for finer grid and
"Shift+G" for coarser grid.
Two more enhancements:
* The key binding merge in the config page was improved,
so key bindings will appear in the config page before
the configuration gets updated.
* The current grid is shown in the status bar when
the grid is changed.
2026-07-18 17:49:16 +02:00
Matthias Koefferlein
ca61d8d4af
Fixing issue #2392 (PCell rebinding fails aber technology change)
...
The bug was that the rebinding by name did not happen
because the name was looked up in the wrong layout.
A testcase has been added to test proper PCell rebinding
in case of technology switches.
2026-07-18 15:44:25 +02:00
Matthias Koefferlein
8b867bbc44
Fixing tests after layer names get loaded properly
2026-07-18 00:38:38 +02:00
Matthias Koefferlein
edad8f5221
Bugfix: update layer names in layer list (when used in secondary fashion) on reload
...
1. The readers will overwrite the layer names if given in secondary fashion
(additionally to layer/datatype)
2. The layer properties nodes will update the "real source" according to
the actual name if the name is used in addition to layer/datatypes
2026-07-17 23:46:14 +02:00
Matthias Koefferlein
c8d307c914
Marek's bug: move interactive/copy interactive did not do anything when the mouse wasn't moved
2026-07-17 17:59:20 +02:00
Matthias Koefferlein
b21f253cf8
Bugfix: entering '16:17' (or similar) into 'new layout' layer list made KLayout hang
2026-07-17 17:47:21 +02:00
Matthias Köfferlein
3c6b342448
Merge pull request #2387 from querielo/kirill/pixelbuffer-to-bytes
...
Add PixelBuffer#to_bytes for zero-overhead pixel access
2026-07-16 22:58:35 +02:00
Kirill Osipov
9a606ec4e9
Cap PixelBuffer.from_bytes dimensions at 64k x 64k
...
Following review feedback, the reader now rejects a header claiming a
width or height beyond 65536, guarding against malformed byte streams
that would otherwise trigger an unreasonable allocation. The writer
stays full 32-bit ('unlimited'), and native little-endian order and the
transparency mask are kept as-is. Adds Ruby and Python tests for the
oversized-header rejection.
Ref: https://github.com/KLayout/klayout/pull/2387#issuecomment-4984941409
2026-07-16 19:03:34 +02:00
Kirill Osipov
2fa7b24345
Add PixelBuffer#from_bytes and width/height header to to_bytes
2026-07-16 19:03:34 +02:00
Matthias Köfferlein
4ac26d686d
Merge pull request #2388 from KLayout/bugfix/issue-2384
...
Fixed issue #2384
2026-07-12 00:23:03 +02:00
Matthias Köfferlein
fa043bc441
Merge pull request #2373 from nikosavola/nikosavola/push-toxvqxkontlt
...
Remove dead CI configurations
2026-07-12 00:18:26 +02:00
Matthias Köfferlein
a84f440602
Merge pull request #2381 from KLayout/dependabot/github_actions/pypa/cibuildwheel-4.1.0
...
Bump pypa/cibuildwheel from 3.4.1 to 4.1.0
2026-07-12 00:16:55 +02:00
Matthias Köfferlein
fdc30cc76b
Merge pull request #2382 from KLayout/dependabot/github_actions/actions/checkout-7
...
Bump actions/checkout from 6 to 7
2026-07-12 00:16:41 +02:00
Matthias Köfferlein
7f600cc24c
Merge pull request #2386 from querielo/kirill/multithread
...
Use multiple drawing workers for image_with_options rendering
2026-07-12 00:16:24 +02:00
Matthias Koefferlein
abe9479ced
Bugfix: removing a pin from a Circuit does not crash if the pin was not disconnected before. Now it's disconnected automatically.
2026-07-12 00:14:30 +02:00
Matthias Koefferlein
8eaf5638f8
Improved the image pixel value display: favors selected image, faster
2026-07-11 23:51:11 +02:00
Matthias Koefferlein
8fa97d7fcc
Small issue fixed: when images are selected and images are turned off, the selection persisted
2026-07-11 22:51:58 +02:00
Matthias Koefferlein
1cd9cbc8ba
Enhancement: using PCell parameter 'name' won't break PCell's cell_name_impl default implementation
2026-07-11 22:32:42 +02:00
Matthias Koefferlein
b2afb55fe3
Convenience constructor for Layout from a cell (hierarchical copy)
2026-07-11 21:56:02 +02:00
Matthias Koefferlein
43a5d8c548
Fixed issue #2384
...
Problem was that the magnification was applied twice
when running the checks inside compound DRC checks.
2026-07-09 23:43:25 +02:00
Kirill Osipov
35ec1107b6
Add PixelBuffer#to_bytes for zero-overhead RGBA pixel access
...
Exposes a GSI method on tl::PixelBuffer that returns the raw ARGB32
contents as a byte vector (4 bytes per pixel, row-major, top to bottom)
via a single memcpy. Unlike to_png_data this skips all image encoding,
which is useful when the caller just wants direct pixel data.
2026-07-06 12:55:26 +02:00