Commit Graph

201 Commits

Author SHA1 Message Date
Matthias Koefferlein 16b6328f1c Fixed new Python module handling for standalone module case 2024-09-14 16:16:58 +02:00
Matthias Koefferlein f1f3c64ab1 Mute noisy diagnostics with Python debug builds, avoid post-Finalize Python API access by pre-Finalize cleanup of modules. This avoids an assertion in Python debug builds and is a better style anyway. 2024-09-14 15:33:03 +02:00
Matthias Koefferlein fd1dc842e0 Generic GSI methods #_to_const_object (for testing) and #_const_cast. Fixed a class initialization issue - sub classes should not be registered by name at top level in Expressions 2024-08-07 00:11:48 +02:00
Matthias Köfferlein 8ab398dc58
Merge pull request #1811 from KLayout/wip
Wip
2024-07-30 18:59:09 +02:00
Matthias Koefferlein b253eaa51a Including more GeneratorExit and StopAsyncIteration in the ignored exceptions for Python 2024-07-27 14:29:14 +02:00
Matthias Koefferlein a0d26a59e3 Properly transferring ownership for variant to Python/Ruby translation 2024-07-25 21:07:36 +02:00
Matthias Koefferlein 9a79838369 Bugfix for issue-1793: using the heap to properly store the default values 2024-07-20 18:58:29 +02:00
Matthias Köfferlein 02506495c2
Merge pull request #1777 from KLayout/bugfix/issue-1771
Bugfix/issue 1771
2024-07-06 14:49:45 +02:00
Matthias Koefferlein 27549e006d Fixing issue #1771 - Python 3.11.7 introduced a new behavior for getting the stack trace line number 2024-07-06 00:23:42 +02:00
Matthias Koefferlein 769327cdab Fixing issue #1774 (providing klayout.__version__ also for built-in module) 2024-07-05 17:50:38 +02:00
Matthias Koefferlein d59d318218 Bugfix: restoring original overload matching scheme for Ruby and Python 2024-05-25 18:58:18 +02:00
Matthias Koefferlein 1861abc68c Bugfix for passing default arguments to GSI calls
This happens when default arguments (specifically
user class or enum types) and passed between keyword
and positional arguments. We must not use a temporary
tl::Variant object as it gets out of scope and a
reference is stored.

In addition: better error messages for Python when
a method can't be matched to arguments.
2024-05-25 17:48:17 +02:00
Matthias Koefferlein c43b70b783 Shape#hash and Shape#< allow using Shape objects as hash keys 2024-03-29 21:47:37 +01:00
Matthias Koefferlein 38a3b8305e Fixing issue #1651 (errors when adding polygons with 4 points) - needs some testing 2024-03-23 15:24:18 +01:00
Matthias Köfferlein cc7622b6b4
Maybe fixing issue #1619 (crash on Fedora-39 upon initialization) (#1622)
* Maybe fixing issue #1619 (crash on Fedora-39 upon initialization)

* Python 3.6 compatibility

---------

Co-authored-by: Matthias Koefferlein <matthias@klayout.de>
2024-02-12 08:40:39 +01:00
Matthias Köfferlein 2be4066856
Fixed issue #1610: leaking reference in Python debugger (#1618)
Co-authored-by: Matthias Koefferlein <matthias@klayout.de>
2024-02-11 10:27:53 +01:00
Matthias Koefferlein 1e51cf6901 Fixing Windows installation without path initialization file 2024-01-30 20:26:22 +01:00
Matthias Koefferlein 4f9effab7e Trying to fix Python 3.6 builds + tests 2024-01-25 13:35:23 +01:00
klayoutmatthias ef4cbb045b On Windows, Python needs to have a proper PYTHONHOME, otherwise a warning is issued 2024-01-24 00:30:15 +01:00
Matthias Koefferlein 2b4a583f05 Update copyright year 2024-01-01 17:27:59 +01:00
Matthias Koefferlein 940ef5319a WIP: refinement of Python and Ruby support for keyword arguments. 2023-12-27 22:56:11 +01:00
Matthias Koefferlein 702bcbe924 WIP: keyword arguments (for now: Python) + transformation alignment
pya.CplxTrans and pya.Trans are good classes for testing the
ability to resolve arguments through keyword parameters.

Keyword parameters are introduced to substitute positional
arguments.
2023-12-26 23:27:25 +01:00
Matthias Koefferlein d1695b88af Merge branch 'wip' 2023-12-23 18:05:54 +01:00
Matthias Koefferlein 9525cfd1cd Fixed #1565 (quit() raises an error in KLayout Python Console) 2023-12-11 23:55:57 +01:00
Matthias Köfferlein 6c4e082fc1
Merge pull request #1547 from KLayout/issue-1542
Issue 1542 - crash on exit
2023-11-26 22:19:04 +01:00
Matthias Köfferlein 3b83230de0
Merge pull request #1546 from KLayout/issue-1530
Issue 1530 - size-2 tuples for points
2023-11-26 22:18:52 +01:00
Matthias Koefferlein b2b950041d [consider merging] Avoids an assertion when using tuples for out vector parameters 2023-11-26 09:55:23 +01:00
Matthias Koefferlein 38d7d34642 [consider merging] Fixed Python Exit Exception - Python test fails were not recognized 2023-11-26 09:55:20 +01:00
Matthias Koefferlein b1ddb702b8 Experimental: implicitly calling constructors from arguments passed tuples or lists for objects - this allows using a (x,y) tuple for Vector or Point arguments 2023-11-26 09:55:15 +01:00
Matthias Koefferlein ef9d73f178 Experimental: calling str(x) implicitly in RBA and pya 2023-11-26 09:28:24 +01:00
Matthias Koefferlein dd0cfe9b97 Trying to fix issue 2023-11-25 01:00:20 +01:00
Matthias Koefferlein bcec400e09 Fixed a crash with -without-qt: Python appears to need a non-empty application path upon initialization 2023-11-11 10:47:39 +01:00
Matthias Koefferlein 261d0249e8 Merge branch 'wip' 2023-10-19 21:23:07 +02:00
Matthias Koefferlein 4e83cab061 Proper Python stack trace in debugger for Python 3.10 2023-08-26 15:44:54 +02:00
Matthias Koefferlein 254015617d Merge branch 'wip' into wip2 2023-08-11 19:17:01 +02:00
Matthias Koefferlein ad114f6137 Fixed unit tests (error messages now have the message class attached) 2023-07-29 01:13:25 +02:00
Matthias Koefferlein 7ac51337ca Script errors now include the class for better readability in Python, normalizing errors in Python 2023-07-28 21:28:09 +02:00
Matthias Koefferlein 58417d5700 pya: adding hint about disambiuation of methods/properties to Python specific doc. 2023-07-23 18:35:36 +02:00
Matthias Koefferlein 292892d1ae Some performance enhancement for Python binding 2023-07-15 22:50:29 +02:00
Matthias Koefferlein e965f87f58 Merge branch 'master' into wip 2023-07-15 22:48:53 +02:00
Matthias Koefferlein 41c5d3f4ff Issue-1397: possible solution 2023-06-13 00:44:42 +02:00
Matthias Koefferlein 5438b9a82f configuration for debugger scope override 2023-06-03 21:25:30 +02:00
Matthias Koefferlein 53fa78c01f Ruby debugger performance boost
Problem was that the file-to-id cache was cleared
upon calling internal Ruby functions (begin_exec
was triggered). In one test case, the execution
performance improved from 6s/320s (without/with debugger)
to 6s/7s (without/with debugger)
2023-05-18 19:43:44 +02:00
Matthias Koefferlein 7ff9b4d8e6 [consider merging] more consistent behavior of RBA/pya: enum classes are properly made available (was for example RBA::Qt::Qt_Keys instead of RBA::Qt_Keys and pya.Qt.Keys was no fully initialized type object) 2023-05-06 00:04:14 +02:00
Matthias Koefferlein 2166437480 Compatibility with other Python version 2023-03-30 20:09:17 +02:00
Matthias Koefferlein 692e5b4a01 Fixed a reference counting bug (Python) 2023-03-29 23:33:00 +02:00
Matthias Koefferlein cb0f2b4166 Enabling pya initialization for app and ut_runner only. 2023-03-29 00:09:26 +02:00
Matthias Koefferlein 1cfe7b10ba Another attempt trying to fix the DLL load issue for pya on Windows - force-load all DLL that are needed by pyacore into the app before importing the module 2023-03-28 00:39:32 +02:00
Matthias Koefferlein 5c57f5ddf8 Maybe fixing ut_runner errors on MSVC 2023-03-28 00:11:34 +02:00
Matthias Koefferlein 7d41078e8c Avoid a segfault: an event may kill the event object itself indirectly. 2023-03-26 21:29:06 +02:00