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
33b54f3f88
Merge branch 'master' into devel
2025-01-19 22:04:55 +01:00
Matthias Koefferlein
063040695a
Preparing tests for GSI class properties
2025-01-16 20:40:42 +01:00
Matthias Koefferlein
05ba1743d7
Adding 'Logger#set_verbosity' alias as it is difficult to implement class property setters in Python
2025-01-16 20:40:01 +01:00
Matthias Koefferlein
5d57cb5eed
Updating copyright to 2025
2025-01-04 19:32:33 +01:00
Matthias Koefferlein
c9da9dc6e0
Updating copyright to 2025
2025-01-04 19:28:56 +01:00
Matthias Koefferlein
5281397b17
Fixed some tests
2024-12-26 00:42:39 +01: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 Koefferlein
32a815a1c0
Properly selecting debug mode in .pri files for self diagnosis. Touching files for recompile.
2024-07-20 21:04:51 +02:00
Matthias Koefferlein
a8eaead404
Enhanced tl::Variant so it can capture all possible default values. Added a self-diagnosis step in debug builds.
2024-07-20 19:57:11 +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
054fd09424
Merge pull request #1752 from KLayout/bugfix/issue-1750-1751
...
Fixing issue #1750 and issue #1751
2024-06-29 20:11:54 +02:00
Matthias Koefferlein
27073cb128
Fixing issue #1750 and issue #1751
2024-06-22 21:00:26 +02:00
Matthias Koefferlein
24a9e6824a
Added tests for the last fix.
2024-06-16 16:54:20 +02:00
Matthias Koefferlein
4f88ff68da
Better error messages on Expressions too.
2024-05-25 19:18:15 +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
370abf7ab3
Enum to variant binding: needs to use enum class, not EnumWrapper<E>
...
The effect of this fix is that tl::Variant gets enabled for
enums declared with gsi::Enum.
2024-05-25 17:46:29 +02:00
Matthias Koefferlein
2b4a583f05
Update copyright year
2024-01-01 17:27:59 +01:00
Matthias Koefferlein
f335ab69af
More compatibility with Ruby <2.7
2023-12-29 23:00:06 +01:00
Matthias Koefferlein
775c331bae
Fixing an unit test
2023-12-28 22:33:47 +01:00
Matthias Koefferlein
6ceb77cf73
Trying to fix the ambiguity issue in Ruby < 3.0 with hash arguments vs. keyword arguments
2023-12-28 21:53:38 +01:00
Matthias Koefferlein
11fbad0104
eliminating some unnamed arguments
2023-12-28 21:35:14 +01:00
Matthias Koefferlein
e2ba78185c
Tests for GSI kwargs, test framework enhanced to print the total number of tests
2023-12-28 19:44:44 +01:00
Matthias Koefferlein
f685fe3adf
WIP: keyword arguments for expressions
2023-12-28 01:03:21 +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
5a0b7e9fb5
Trying to fix MSVC builds
2023-11-26 18:51:06 +01:00
Matthias Koefferlein
b7d1d22fb2
Fixed Windows builds, enhanced unit test framework with error messages upon exceptions.
2023-11-26 17:04:44 +01:00
Matthias Koefferlein
cb1589b2ba
Ported upgrade to expressions too
2023-11-26 16:19:09 +01:00
Matthias Koefferlein
a95706baaa
Tests for implict construction from tuple or list arguments
2023-11-26 09:55:26 +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
c6dc723227
Fixing build issue on some platforms with noqt
2023-11-10 23:36:35 +01:00
Matthias Koefferlein
254015617d
Merge branch 'wip' into wip2
2023-08-11 19:17:01 +02:00
Matthias Koefferlein
3736b59156
it's -> its
2023-07-30 14:46:58 +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
fa61f96194
GSI: enabling enums as hash keys and int(enum) in Python
2023-03-26 17:52:33 +02:00
Matthias Koefferlein
2e2ba41250
[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-03-26 14:21:30 +02:00
Matthias Koefferlein
31aa45dce4
Qt5 binding enhancements
...
- Based on Qt 5.12.12 now (tested to build on 5.15)
- QImage constructor with binary data
- More classes, specifically QLibraryInfo for Qt version
- QLayout and derivatives take ownership over widgets added
2023-03-25 22:54:54 +01:00
Matthias Koefferlein
9a1c776475
Make sure the Python modules are found from the application's installation by prepending their path to sys.path
2023-03-24 19:15:57 +01:00
Matthias Koefferlein
feb50f49dd
Enabling some more PNG related features by falling back to Qt without libpng
2023-03-04 20:32:44 +01:00
Matthias Koefferlein
817bb396f6
PNG support for PixelBuffer taken from Qt also if Qt bindings are off
2023-02-19 20:25:21 +01:00
Matthias Koefferlein
a85dbd3d31
Updating copyright notice to 2023
2023-01-01 22:27:22 +01:00
Matthias Koefferlein
1edbd6232f
Merge branch 'python-typehints'
2022-11-09 23:13:31 +01:00
Matthias Koefferlein
f338c13309
[consider merging] Important bug fix - do not use NDEBUG as ruby.h redefines it and this will lead to crashes in the debugger
2022-11-05 14:28:40 +01:00
Matthias Koefferlein
2c18bc6c46
WIP: refactoring
2022-10-23 18:31:13 +02:00
Matthias Koefferlein
fbd4c84d84
Refactoring of pya/rba/expressions
...
Goal is to support "*!" which is a variant of multiplication
without the commutative nature.
The refactoring yields a more consistent handling of
Python specializations. Now this happens when the methods
are collected, rather than later. This way, specific behavior
for identically named synonyms can be implemented for example.
This is the case for the "*" operator in Trans which is partially
commutative and partially not.
2022-10-20 23:26:14 +02:00
Thomas Ferreira de Lima
4d4f4b643b
Added python stubs with type hinting and documentation. ( #1125 )
...
* Added python stubs with type hinting and documentation.
The documentation was extracted by inspecting the docstrings within each class and methods.
This should enable type hinting and checking by IDEs like VSCode.
The stubs were automatically generated, and have not been manually curated. (TODO)
* created tl ArgType to python type translator
* Fixing a pyaModule.cc bug
* almost finished stubgen
* fixing little bug in classes defined within classes
* Release version of the stubgen script. Good enough for release.
* Adding notes
* Including stubs when installing from source
* typechecking bugfix: missed checking is_iter()
* Cleaning up unused code for merge review
* Including stubs when installing from source (part deux)
* Putting the GenericDeviceExtractor name setting into the right place.
* Updating python stubs
Co-authored-by: Matthias Koefferlein <matthias@koefferlein.de>
2022-09-01 00:41:42 +02:00
Matthias Koefferlein
0b0e440781
[Consider merging] method name parser exception for *= method (not seen as protected '=')
2022-08-10 21:05:34 +02:00
klayoutmatthias
bca7486082
[Consider merging] object lifetime problem with QLatin1String and GSI fixed
2022-07-26 21:02:48 +02:00