Commit Graph

571 Commits

Author SHA1 Message Date
Matthias Köfferlein 8e64d1eff9
Merge pull request #2321 from KLayout/bugfix/issue-2320
Fixing issue #2320
2026-04-09 20:40:15 +02:00
Matthias Koefferlein 615658cb30 Fixing issue #2320
The fix implements a dynamic buffer for the InflateFilter
which is dynamically enlarged if needed. That fix is universal
and does not only apply to OASIS.

@abdelq Thanks for the test case
2026-04-06 16:48:29 +02:00
Matthias Koefferlein 2dfcc9293e Allowing to explicity specify a format
Most tools and functions now allow to explicitly
specify a format for input and output. On input,
the format is usually detected, but for some
cases, this is not possible (e.g. DEF). So you can
specify the format attached to the file name in
square brackets:

e.g. file.defok[def]

"def" is the intended suffix, "defok" is the given one.

On output, the same is possible, specifically in strmxor
and strmclip:

strmxor a.gds b.gds out.xor[oas]
2026-03-20 16:30:28 +01:00
Matthias Koefferlein a80d181cf1 Mutex got faster on i386, so threaded worker tests need to be adjusted 2026-03-05 21:16:17 +01:00
Matthias Koefferlein 001deab767 Fixing Python module builds 2026-03-03 23:20:43 +01:00
Matthias Koefferlein 95d6b0aca5 Fixing a potential segfault during drawing
This patch moves a lock inside the thread finishing
code such that a race condition of the finish sequence
and a random restart of the threads becomes impossible.
This problem has been observed while randomly zooming
with multiple drawing threads present. It's hard to
reproduce.
2026-02-19 22:34:10 +01:00
Matthias Koefferlein 9534209240 Preparing to use C++20 atomics for thread locking, which is slightly more efficient. Right now, that's an experimental option. 2026-02-19 21:36:00 +01:00
Matthias Koefferlein b685f89639 C++20 readiness 2026-02-16 23:49:23 +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 Koefferlein f68d02c6f3 Merge branch 'master' into wip 2026-02-05 22:05:24 +01:00
Matthias Koefferlein 73b078003d Expression objects 'is_a' method now considers derivation 2026-02-02 23:17:15 +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 407bbbcf62 More options on 'evaluate_nets' expressions, i.e. 'copy'. See documentation for details. 2026-01-03 01:21:30 +01:00
Matthias Koefferlein a35304912f Fixed build problem with 64bit coordinates and without Qt 2025-11-25 22:22:52 +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 ef5f8953aa Enabling lstream for Python module builds - that needs some refactoring later 2025-11-08 17:55:51 +01:00
Matthias Koefferlein 4dbc103523 Bugfix: File watcher was dropping files when they were temporarily unavailable 2025-08-04 18:47:39 +02:00
Matthias Koefferlein 7c0934ec8a Fixing unit tests after making byte array and strings equal citizens in variants 2025-08-03 20:33:47 +02:00
Matthias Koefferlein 8a5e83bf5d Consistently differenting between double and int values as property keys (otherwise there may be a confusing mix present in the property repository) 2025-08-03 19:46:31 +02:00
klayoutmatthias 642cbd6831 [consider merging] fixing Qt-less builds 2025-08-03 14:19:02 +02:00
Matthias Koefferlein 5b3ce9ff30 [consider merging] tl::Variant now considers byte arrays and strings equivalent for sloppy compare. This is important for Ruby string property keys as they are often kept as byte arrays when not UTF-8 encoded. 2025-07-27 22:15:52 +02:00
Matthias Koefferlein ede15ffcc0 WIP 2025-07-27 19:48:38 +02:00
Matthias Koefferlein cc796317a0 Safeguard against broken code table in OASIS CBLOCKs 2025-07-13 19:31:47 +02:00
Matthias Koefferlein f3cc7cadc0 Enabling Qt-less DB plugins for Qt-enabled applications 2025-06-26 20:35:39 +02:00
Matthias Koefferlein eb3be68030 Removing an unused declaration 2025-06-26 20:34:53 +02:00
Matthias Köfferlein 45fdaf0a6d
Merge pull request #2049 from KLayout/devel
Devel
2025-05-29 09:43:23 +02:00
Matthias Koefferlein 9917978566 Merge branch 'master' into dev-polygon-graph 2025-05-28 19:01:42 +02:00
Matthias Koefferlein bfe49c22e3 Properly using 'long' and 'unsigned long' in tl::sprintf to fit Windows definition of 'long' 2025-05-25 19:42:14 +02:00
Matthias Koefferlein dec7ad9da1 [consider merging] properly conveying string encoding for Ruby, so that UTF-8 encoding is maintained when returning such strings from C++ 2025-05-25 16:28:46 +02:00
Henner Zeller f9e2a9257f Fix logic error in hex2int.
This was probably never noticed as it was the last branch and would
behave benign on valid input.

Signed-off-by: Henner Zeller <hzeller@google.com>
2025-05-19 14:16:18 +02:00
klayoutmatthias 6e7eff95e7 Fixed glob feature for Windows. 2025-04-27 19:16:37 +02:00
Matthias Koefferlein 9aa8d79bfc Enhanced unit test for better debugging 2025-04-27 14:43:53 +02:00
Matthias Koefferlein 6b5268e5f7 Feature glob expansion on LEF and GDS lists for LEF/DEF reader options. 2025-04-06 19:21:02 +02:00
Matthias Koefferlein e6ff30adee Modifying definition of Timer#memory_size on Linux to become resident size. 2025-03-23 18:46:15 +01:00
Matthias Koefferlein db728dc68a Merge commit 'refs/pull/2003/head' of github.com:KLayout/klayout 2025-03-23 18:38:42 +01:00
Matthias Koefferlein efeb2c061b Layout queries support diff as placeholder for the current cell 2025-03-23 16:51:47 +01:00
Martin Köhler b8a6d0a1cd Timer::memory_size() implementation for macOS 2025-03-23 00:03:29 +01:00
Matthias Koefferlein 2668b42d29 Separating tl::hfunc from std namespace. Needed to support int128 in tl::Variant for 64bit coordinate builds. 2025-03-22 20:35:15 +01:00
Matthias Koefferlein e6914c78b9 Fixing builds for Qt4 2025-03-22 17:29:16 +01:00
Matthias Koefferlein 2aa88fe29c Fixed a linker issue on Qt4 2025-03-22 14:09:00 +01:00
Matthias Koefferlein 283a9d0b22 Build fixes for Qt4 2025-03-22 00:02:13 +01:00
Matthias Koefferlein 69a8f3ac11 Preparations for 0.30. 2025-03-21 23:52:08 +01:00
Matthias Koefferlein 87e7d8e493 Merge branch 'master' into devel 2025-03-06 19:35:32 +01:00
Matthias Koefferlein e06498763a Fixing issue #1997. 2025-03-05 19:12:38 +01:00
Matthias Koefferlein aaae05016e Fixed unit tests 2025-02-02 21:57:21 +01:00
Matthias Koefferlein 08dbe3aba5 Fixing problem with sorting order of tl::Variant as key in std::map 2025-02-02 19:41:54 +01:00
Matthias Koefferlein 2a47006a84 C++11 compatibility 2025-01-21 17:07:51 +01:00
Matthias Koefferlein 33b54f3f88 Merge branch 'master' into devel 2025-01-19 22:04:55 +01:00