Commit Graph

7973 Commits

Author SHA1 Message Date
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
Kirill Osipov 7d6aa2e728 Use multiple drawing workers for image_with_options rendering
LayoutCanvas::image_with_options always rendered the layout with a
single thread (workers = 0), which serialized image generation even on
views configured for parallel drawing. Now it honors the view's
drawing_workers() count when the view is not in synchronous mode, and
waits for the asynchronous workers to finish before reading back the
rendered bitmaps. This speeds up image export on large layouts while
preserving the original single-threaded behavior in synchronous mode.
2026-07-06 11:09:28 +02:00
dependabot[bot] b57b862a02
Bump actions/checkout from 6 to 7
Bumps [actions/checkout](https://github.com/actions/checkout) from 6 to 7.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v6...v7)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-01 21:12:39 +00:00
dependabot[bot] af66d6c4ab
Bump pypa/cibuildwheel from 3.4.1 to 4.1.0
Bumps [pypa/cibuildwheel](https://github.com/pypa/cibuildwheel) from 3.4.1 to 4.1.0.
- [Release notes](https://github.com/pypa/cibuildwheel/releases)
- [Changelog](https://github.com/pypa/cibuildwheel/blob/main/docs/changelog.md)
- [Commits](https://github.com/pypa/cibuildwheel/compare/v3.4.1...v4.1.0)

---
updated-dependencies:
- dependency-name: pypa/cibuildwheel
  dependency-version: 4.1.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-01 21:12:34 +00:00
Niko Savola 463f51dcb0
Remove dead CI configurations 2026-06-22 16:14:58 +03:00
Matthias Koefferlein d352db146f Trying to fix unit tests with Python 3.14 - it delivers a different reference count under unit test conditions 2026-06-20 00:06:42 +02:00