Matthias Koefferlein
76b8bd3279
Fixed several issues with raw mode/merged semantics and many Region and Edges methods. Added edge/edge pull and edge/polygon pull.
2019-10-03 01:46:49 +02:00
Matthias Koefferlein
441f946f43
WIP: LVS rerun feature
2019-08-25 21:55:48 +02:00
Matthias Koefferlein
515b68b76f
WIP: provide a recipe registration facility for LVS rerun
2019-08-25 18:03:27 +02:00
Matthias Köfferlein
c75a1bc2eb
Merge pull request #313 from KLayout/query-performance
...
Query performance
2019-08-18 17:31:17 +02:00
Matthias Koefferlein
e329f60257
WIP: attempt to improve performance by using name match shortcuts
2019-07-28 19:05:25 +02:00
Matthias Koefferlein
49c1bacb98
Introducing variables for layout queries:
...
1.) The ExpressionContext class is a mapping of tl::Eval
and allows providing a variable context for the LQ.
Expression class is derived from ExpressionContext now.
2.) The variable lookup has been changed so that variables
can be modified even if they come from a parent context.
3.) LayoutQuery and iterator has been given an argument to
supply the context
2019-07-28 01:33:30 +02:00
Matthias Köfferlein
b3e9915259
Provide special LVS test golden data for Windows (slight differences in shape order etc.)
2019-07-16 00:40:43 +02:00
Matthias Köfferlein
e4efaac12f
MSVC builds fixed - XML source needs to accept URLs (specifically resource URLs) also with EXPAT
2019-07-15 23:23:19 +02:00
matthias
89ce2be5c2
Merge remote-tracking branch 'origin/master' into dvb
2019-07-14 01:28:11 +02:00
matthias
5f27341995
Some refactoring, better templates
...
1.) tl::Stream now can read from resources
(:<path> URL's)
2.) LVS/DRC templates are kept as resource,
"create_template" uses the URL to read them.
3.) Added samples for LVS
4.) Configured LVS to match sample
2019-07-13 18:40:00 +02:00
Matthias Koefferlein
e8ff8156a0
fix for #264
...
1. Errors in coerce_parameters are now shown as
red label + warning icon in the parameters dialog
2. Errors during produce are always logged now
Plus: the scroll bars of the PCell parameters page
don't jump back on "Apply".
2019-07-12 21:13:18 +02:00
Matthias Koefferlein
ad041a63bc
Windows build fix.
2019-06-11 08:37:39 +02:00
Matthias Koefferlein
985cffc099
Unique net names for Spice netlist writer
2019-05-31 22:19:51 +02:00
Matthias Koefferlein
9c6ed3e956
Merge remote-tracking branch 'origin/master' into dvb
2019-05-29 22:32:05 +02:00
Matthias Koefferlein
f59e49d678
Small bugfix for glob pattern matcher.
2019-05-29 22:27:58 +02:00
Matthias Koefferlein
7f6afe1f8b
Allow some compiler warnings in favor of passing unit tests ...
2019-05-27 18:55:27 +02:00
Matthias Koefferlein
7b7e35d3d5
Fixed some compiler warnings.
2019-05-27 18:05:38 +02:00
Matthias Koefferlein
252622e3f8
Fixed unit tests, support floating pins for netlist compare
2019-05-20 23:48:07 +02:00
Matthias Koefferlein
dfb9cdad4f
WIP: refactoring of glob pattern
2019-05-11 18:31:42 +02:00
Matthias Koefferlein
b171ee5ae1
WIP: refactoring of glob pattern (goal is to support more pattern)
2019-05-11 18:23:31 +02:00
Matthias Koefferlein
72cadf6d5d
WIP: more powerful glob pattern
2019-05-11 02:29:38 +02:00
Matthias Koefferlein
252b1551dc
Bugfix: strmrun issues
...
- strmrun did not support x[rb] notation for file type
- x.y.py was rejected because y.py was taken as the suffix
- reason was extension() function for which there is
an extension_last() now
- but this function is no longer used as the lym::Macro
object is used now
2019-05-10 23:43:57 +02:00
Matthias Koefferlein
5b8a9cf49c
WIP: netlist browser
2019-04-22 01:25:48 +02:00
Matthias Koefferlein
567769f13d
More robust WebDAV test by sorting the order of collection items
2019-04-17 22:01:56 +02:00
Matthias Koefferlein
52fb8b0f65
Merge remote-tracking branch 'remotes/origin/master' into dvb
2019-04-04 07:35:43 +02:00
Matthias Koefferlein
eacd5fc19d
Fixed some spelling errors (allow to, allows to)
2019-04-03 19:15:09 +02:00
Matthias Koefferlein
89ffd7e3da
WIP: Simple SPICE reader.
2019-04-01 22:46:33 +02:00
Ruben Undheim
5d26cf4c77
Spelling errors in code and comments fixed
2019-03-31 15:25:18 +00:00
Matthias Koefferlein
b9127a93bf
Build issue fixed.
2019-03-02 17:35:15 +01:00
Matthias Koefferlein
d7cb2913c9
Fixed a problem with the documentation generator.
2019-03-02 17:22:27 +01:00
Matthias Koefferlein
c7b17fb65a
Merged master into dvb branch
2019-02-22 23:16:44 +01:00
Matthias Koefferlein
9c0123df20
Implemented implicit joining of nets with the same label.
2019-02-03 21:34:23 +01:00
Matthias Koefferlein
8ad6da0281
Fixed a build issue on MSVC
2019-02-01 07:43:24 +01:00
Matthias Koefferlein
74b6341425
Fixed unit tests, added swap function to tl::list
2019-01-25 23:19:12 +01:00
Matthias Koefferlein
3b0f4b3d78
WIP: fixed some compiler issues on certain systems.
2019-01-12 00:27:55 +01:00
Matthias Koefferlein
aeeb6d7c87
Fixed #200 by introducing layout locking during iteration
...
The cause for the problem was that the layout got updated
while iterating causing the mess within the iterator.
This solution is to lock the layout while an iterator
is present. This happens for various Cell and Shapes
iterator, so it's a major enhancement.
2019-01-09 01:06:11 +01:00
Matthias Koefferlein
d4d7ea8022
Updated copyright.
2019-01-08 01:09:25 +01:00
Matthias Koefferlein
b0d7f5f7f5
Updated copyright.
2019-01-08 00:58:45 +01:00
Matthias Koefferlein
37d8f0bfca
Added hierarchical progress reporting for more detailed progress.
2018-12-31 16:41:32 +01:00
Matthias Koefferlein
923e4075da
Added an intrinsic linked list implementation.
2018-12-31 15:25:45 +01:00
Matthias Koefferlein
7ceb4ed076
Fixed an issue with the deep region: the layout pointer is not a good key for the backannotation cache. So we better use the unique ID - a concept introduced herein.
2018-12-17 20:31:24 +01:00
Matthias Koefferlein
5c7cd02af3
Merge remote-tracking branch 'remotes/origin/pymod' into net-extract
2018-11-25 23:16:56 +01:00
Matthias Koefferlein
9539e36bc9
Fixed #195
2018-11-22 22:19:37 +01:00
Matthias Koefferlein
3f8825cfd1
WIP: Improved design of HierarchyBuilder, added tests.
2018-11-15 22:50:02 +01:00
Matthias Koefferlein
b192417809
Merge branch 'pymod' into net-extract
2018-11-10 22:42:48 +01:00
Matthias Koefferlein
8ab4868d76
Fixed build on Windows (tl::InputPipe::wait was missing)
2018-10-16 23:00:28 +02:00
Matthias Koefferlein
62224b0d91
Merge branch 'pymod' into net-extract
2018-10-14 23:57:18 +02:00
Matthias Koefferlein
dd9d46da38
Activated stream unit tests.
2018-10-14 23:34:25 +02:00
Matthias Koefferlein
3392c08d36
Merge branch 'pymod' into net-extract
2018-10-09 23:43:58 +02:00
Matthias Koefferlein
904a12c11e
Added a way to get the exit code from InputPipe
...
The method is to call wait() on the pipe object
which returns the exit code.
Some tests have been added for this.
2018-10-09 23:40:28 +02:00
Matthias Koefferlein
222b98fd70
Some fixes for the testsuite
...
With these fixes, unit tests pass with MacOS
(set DYLD_LIBRARY_PATH!)
1.) MacOS takes popen vs. pclose seriously
By using fopen we basically spoil the system and other popen
won't work.
2.) For system integrity, MacOS does not propagate DYLD_LIBRARY_PATH
to child processes such as sh. This has to be done explictly.
3.) Search the klayout binary in the right path (klayout.app/...)
4.) Reset KLAYOUT_HOME for less intervention by installed macros
2018-10-09 13:57:26 -07:00
Matthias Koefferlein
52a4459dac
WIP: timer enhanced (reports start now), drop empty boxes in hier processor (will make the processor stall).
2018-09-23 20:06:27 +02:00
Matthias Koefferlein
ad03533a7b
OASIS tests made robust against hash implementation
...
The text writer was made "normalizing": it will introduce
a certain element order (string sorting). This way, OASIS
files can be compared against golden data without
changes in the order due to different implementation of
hash containers.
2018-09-10 01:16:49 +02:00
Matthias Koefferlein
84072aa23e
Fixed a few things that got damaged in Linux build while doing MSVC compatibility.
2018-09-09 22:43:22 +02:00
Matthias Köfferlein
940a96716c
Fixed the timestamp generation for pthread-win32 timed waits
...
Issue: we have to use WIN API functions which deliver times in a
different way. In order to make the wait functions work, we have to use
the same time definition - specifically the same zero time.
2018-09-09 18:30:21 +02:00
Matthias Köfferlein
28477af15e
Added a missing header
2018-09-09 16:52:18 +02:00
Matthias Köfferlein
9544a5419b
Addd current_utc_time() again which got lost during merge
2018-09-09 16:51:54 +02:00
Matthias Köfferlein
a543950316
Explicitly allow enabling of pthreads (rather than Qt) using HAVE_PTHREADS on qmake
2018-09-09 16:51:20 +02:00
Matthias Köfferlein
4821b12780
Removed dependency of tlStream on zlib by using a delegate.
2018-09-09 16:49:21 +02:00
Matthias Köfferlein
adebdf307b
Fixed XML parser tests for Qt-less builds with expat
2018-09-08 00:44:19 +02:00
Matthias Köfferlein
28f8a1ee7d
Merge branch 'pymod' into pymod-msvc
2018-09-07 22:56:22 +02:00
Matthias Köfferlein
5be469af90
Support "klayout-bits" for building on MSVC
2018-09-06 00:23:10 +02:00
Matthias Köfferlein
b0dac7026f
MSVC compatibility
2018-09-06 00:22:38 +02:00
Matthias Köfferlein
406b2c8cd1
Fixed KD tree implementation for compatibility with MSVC iterator debug mode
2018-09-02 22:39:15 +02:00
Matthias Köfferlein
1bf4d95388
Further MSVC compatibility
...
String assertions fixed, numerical issue with dbTrans fixed, iterator
assertions fixed.
2018-09-02 19:18:42 +02:00
Matthias Köfferlein
356a468d66
A couple of changes to make MSVC work - not done yet.
2018-09-02 00:40:35 +02:00
Matthias Koefferlein
c9771f54eb
Merge branch 'master' into pymod
2018-09-01 09:37:08 +02:00
Matthias Köfferlein
af50c0f0c3
Many warnings fixed for MSVC
2018-08-29 01:46:18 +02:00
Matthias Köfferlein
23d715001b
First steps towards enablement of MSVC2017 for pymod. A lot of things to TODO yet ...
2018-08-04 18:02:39 +02:00
Thomas Ferreira de Lima
5bda390d82
bugfix: forgot to include tlTimer.h in tlThreads.cc
2018-07-31 17:47:01 -04:00
Matthias Koefferlein
98ecc9e47b
Fixed a typo, force update of unit tests on Jenkins.
2018-07-29 14:07:02 +02:00
Matthias Koefferlein
3fb568671d
A little refactoring - central place for DLL/.so path detection
2018-07-29 10:20:48 +02:00
Matthias Koefferlein
3d7bd0f32d
Cleaned up code
...
Moved current_utc_time out of the central tlUtils header where
it does not belong. It a time function, so tlTimer.h is the better
place. Plus it does not make sense to make this inline. This just
spoils build times on changes.
2018-07-29 10:06:11 +02:00
Matthias Koefferlein
e2f4c1874a
Fixed a build issue on some compilers.
2018-07-24 22:29:45 +02:00
Matthias Koefferlein
c9859b4f8f
Fixed some issues with long int emulation. Using long int as substitute for __int128
2018-07-24 22:08:30 +02:00
Matthias Koefferlein
7191e4faa9
Added long int (N times a word) support for emulation of __int128
2018-07-24 21:01:54 +02:00
Daniel Wang
ad1ada9b23
Merge branch 'pymod' of https://github.com/klayoutmatthias/klayout into pymod
2018-07-19 13:40:57 -04:00
Matthias Koefferlein
aca209c095
Using C.UTF-8 locale fallback for string tests for vanilla Linux installations.
2018-07-18 21:57:47 +02:00
Daniel Wang
5f6c265e4b
Moved current_utc_time to tlUtils and fixed tlTimer
2018-07-17 14:37:41 -04:00
Daniel Wang
106b57c676
Fixed unchanged functions
2018-07-17 14:14:47 -04:00
Daniel Wang
20db1e1f24
Added support for Mac OS X 10.11 and lower
2018-07-17 14:05:33 -04:00
Thomas Ferreira de Lima
f26576099c
missing stdlib.h import
2018-07-16 23:29:51 -04:00
Matthias Koefferlein
46b0f079cf
Skipping HTTP tests rather than disabling them
...
With this commit, tests are logged as skipped and
not just omitted, if HTTP support is not enabled
(neighter Qt nor curl)
2018-07-15 20:58:54 +02:00
Matthias Koefferlein
5351922440
Enabled minimum build configuration
...
Minimum build configuration is without Qt, Ruby, curl and expat.
Only Python is required.
This commit also provides a functional (through polling) Qt-less HTTP
implementation through libcurl if enabled.
2018-07-15 19:59:45 +02:00
klayoutmatthias
6858190a20
Fixed Windows build and tests
...
* tl::is_same_file works with directories now too
* Unit tests added for this
* bridge_mod sample produces the proper DLL now
2018-07-15 18:03:42 +02:00
Matthias Koefferlein
bbb88c5ca6
Merge branch 'pymod' of www.klayout.org:/home/matthias/klayout into pymod
2018-07-15 07:42:14 -07:00
Matthias Koefferlein
d3b4bc7f87
Enabled pymod build via setup.py/distutils on MacOS
2018-07-15 07:42:01 -07:00
klayoutmatthias
1642129504
Fixed a typo that breaks the Win build.
2018-07-15 16:39:16 +02:00
Matthias Koefferlein
cb33753e1c
Fixed a FileUtils unit test on Windows.
2018-07-15 15:36:30 +02:00
Matthias Koefferlein
a1d8913de9
Enhanced Qt-less FileUtils test, so they cover the full functionality without Qt
2018-07-15 15:27:39 +02:00
Matthias Koefferlein
fc9783432b
Bugfix: db_plugin modules were not loaded for python modules
...
* Added unit test for this
* Provided an option for easier debugging such issues:
Setting env var KLAYOUT_VERBOSITY will enable debug levels on Python
modules (and all other binaries). Plugin loading issues can
be debugged by setting KLAYOUT_VERBOSITY=21.
2018-07-15 14:14:14 +02:00
Matthias Koefferlein
07f69dccd3
Merge branch 'pymod' of www.klayout.org:/home/matthias/klayout into pymod
2018-07-15 11:12:29 +02:00
Matthias Koefferlein
628219080a
Some enhancements/bug fixes for Windows
...
* Enabled pipe: on outputs
* Don't die on file paths containing backslashes in DRC tests
2018-07-15 11:11:05 +02:00
Matthias Koefferlein
e709cad9c8
Fixed an include path for better compatibility with Python's distutil.
2018-07-14 20:24:28 +00:00
Matthias Koefferlein
5ea72893f3
Enabled build with Qt again.
2018-07-14 02:16:35 +02:00
Matthias Koefferlein
8f04fc5358
Removed some further Qt dependencies. For example, HTTPS access now is possible without Qt through Curl only.
2018-07-14 02:14:06 +02:00
Matthias Koefferlein
9ea24cb6a0
Explicitly set the locale for local string conversion test.
2018-07-13 18:35:49 +02:00
Matthias Koefferlein
b10c64907a
Made the threaded worker test a bit more reliable
2018-07-13 18:28:32 +02:00
Matthias Koefferlein
937fa96245
Some bug fixes
...
* Case folding table fixed: lowercase "i without dot" overlaps "i"
* Fixed build of bridge sample in non-Qt case
2018-07-13 08:03:00 +02:00
Matthias Koefferlein
abdde4ba19
Corrected last commit (UTF-8 case conversion) and added more test coverage.
2018-07-13 01:13:41 +02:00