Matthias Koefferlein
51666eb439
Fixed non-Qt build
2022-05-05 23:44:47 +02:00
Matthias Koefferlein
17cbcc2877
Added mono image class
2022-05-04 02:18:01 +02:00
Matthias Koefferlein
373f307ae6
WIP: image object, first steps
2022-05-02 00:26:13 +02:00
Matthias Koefferlein
0b48cb9020
WIP: added new lay::Image class
2022-05-02 00:02:47 +02:00
Matthias Koefferlein
1b129758d8
More range for NoQt option - covers lym (without MacroCollection), drc, lvs and buddies now
2022-04-24 23:28:04 +02:00
Matthias Koefferlein
981db08dea
More automatic conversion of int to enum and vice versa + automatic object-to-variant conversion when supplying to_int, to_double or to_variant functions. Discussion 2052.
2022-04-04 01:09:19 +02:00
Matthias Koefferlein
6d0aa9c435
Maybe fixed build issue on MacOS
2022-03-16 21:11:25 +01:00
Matthias Köfferlein
a4b663199d
Fixed issue-1012 with some enhancements ( #1016 )
...
- warning if a layer is not mapped
- "," allowed as separator between files on buddy tools (in addition to '+')
- relative paths are resolved relative to . in buddy tools (more natural on Linux)
- Fixed tl::warn and tl::error so warnings/error messages can be continued with tl::noendl.
2022-03-05 14:57:09 +01:00
Matthias Koefferlein
4a8918364b
Patch for issue-973 fix to make it work with libcurl
2022-02-12 22:16:14 +01:00
Matthias Köfferlein
0005c5d742
Fixed #971 (double compare fails in LVS) ( #1001 )
2022-02-12 17:04:47 +01:00
Matthias Köfferlein
c80f789e5a
Fixed issue-973 (timeout in Salt Manager) ( #981 )
...
The implementation now offers "infinite timeout" with
the option to abort download.
2022-02-08 19:05:53 +01:00
Matthias Köfferlein
71c9073bc5
Fixed issue-979 (backup file fails with relative paths) ( #980 )
2022-02-08 19:05:00 +01:00
Matthias Koefferlein
12fd26663d
Merge branch 'qt6'
2022-01-06 21:48:02 +01:00
Matthias Koefferlein
10456516db
Updated copyright to 2022, preparations for 0.27.6 (was delayed due to code signing certificate issues)
2022-01-04 21:20:04 +01:00
Matthias Koefferlein
219fbceb28
Fixed the fix.
2021-12-17 08:18:35 +01:00
Matthias Koefferlein
e1df15a47f
Fixed Windows tests
2021-12-16 22:51:20 +01:00
Matthias Köfferlein
f60a5de325
Merge pull request #948 from KLayout/less-expressions
...
Less expression evaluation for more robustness
2021-12-16 07:56:21 +01:00
Matthias Koefferlein
a6d4c80c6c
Less expression evaluation for more robustness
2021-12-16 00:23:06 +01:00
Matthias Koefferlein
533a72b7bd
Added tests, fixed implementation
2021-12-15 23:18:42 +01:00
Matthias Koefferlein
07515cd716
Fixed issue #946 for the case of file paths with blanks
2021-12-15 23:04:58 +01:00
Matthias Koefferlein
279342e61a
Added more declarations for gcc in release mode
2021-12-12 16:48:44 +01:00
klayoutmatthias
0c142c9252
gcc 4.x (CentOS 7) does not support all C++11 type traits
2021-12-11 18:56:44 +00:00
Matthias Koefferlein
3bb46e2717
Qt5 builds functional again, enabled QLatin1String for Qt5 and Qt4 too.
2021-12-05 13:38:08 +01:00
Matthias Koefferlein
302a5fccd0
Build fixes
2021-12-05 00:27:41 +01:00
Matthias Koefferlein
6aae46772c
WIP: typo bug fixed.
2021-12-04 22:46:59 +01:00
Matthias Koefferlein
125543957d
WIP: Fixed GSI to some extent, some tests
2021-12-04 00:31:01 +01:00
Matthias Koefferlein
a17f89201f
Updated Qt binding generation scripts and build fixes
2021-11-30 23:12:12 +01:00
Matthias Koefferlein
6b49386b67
WIP: fixed some build errors
2021-11-29 23:27:26 +01:00
Matthias Koefferlein
132ad2ed8d
WIP: removing need to tl::type_traits
2021-11-29 22:54:28 +01:00
Matthias Koefferlein
f4c0a43d49
unit tests pass now with the exception of two XML parser tests (QTBUG-98656)
2021-11-25 22:18:25 +01:00
Matthias Koefferlein
0e15426c9f
WIP
2021-11-25 00:57:11 +01:00
Matthias Koefferlein
a4d2e7891c
WIP
2021-11-24 23:59:36 +01:00
Matthias Koefferlein
068f782544
Fixed CentOS7 builds
2021-09-21 23:56:57 +02:00
Matthias Koefferlein
e1dd79acbf
Include SSL errors in error message on HTTPS access.
2021-09-21 21:01:53 +02:00
klayoutmatthias
1555daf68c
Adjustments for Windows build with MSVC2019 (VC 16.10.31419.357)
...
1. removed some duplicate symbol linker error
2. removed many compiler warnings (mainly size_t/int compatibility)
3. consistent definition of db::pcell_id_type
4. removed UTF-8 character codes from string constants
5. float constants for float arguments
6. timeout in tlHttp when no openssl lib is found (instead of stalling
app)
2021-07-17 00:20:55 +02:00
Matthias Koefferlein
45152dad00
Fixed a linker issue
2021-07-04 19:13:42 +02:00
Matthias Koefferlein
6050eb85de
Fixed #839
2021-06-14 22:50:54 +02:00
Eugene Zelenko
8b0f60742e
Fix misspellings in lay and tl.
2021-06-04 10:49:05 -07:00
Matthias Koefferlein
7a754b9c6f
Fixed a basic bug in the deferred execution framework: when the execution of a deferred method unqueued another one, the application crashed.
2021-05-15 18:45:53 +02:00
Matthias Koefferlein
f5afdd91a5
Preventing event recursion on different levels.
2021-05-10 23:42:40 +02:00
Matthias Koefferlein
31cc8f32e2
Fixed #787 - the results of const reference return values need to be copied as the holder object may go out of scope
2021-05-02 23:00:38 +02:00
Matthias Koefferlein
1285868546
Skip private-only tests without private data access
2021-05-01 21:36:52 +02:00
Matthias Koefferlein
217f957d60
Some more safety against accessing deleted user objects (stored point in temporary UserObject or DUserObject gets destroyed on destruction of the holder) - using C++ move semantics (overdue)
2021-04-07 22:16:52 +02:00
Matthias Koefferlein
94556c1448
Merge branch 'master' into lvs-enhancements
2021-03-30 18:56:27 +02:00
Matthias Köfferlein
8cb73c2daa
Merge pull request #759 from KLayout/fill-enhancements
...
Fill enhancements
2021-03-30 12:36:48 +02:00
Matthias Koefferlein
311d0e3ca7
Fixed some merge issues.
2021-03-29 15:18:19 +02:00
Matthias Koefferlein
8fda92a9c4
Merge branch 'drc-enhancements' into fill-enhancements
2021-03-29 15:07:47 +02:00
Matthias Koefferlein
9f295523e4
explicit net joining - preparations
2021-03-27 21:56:53 +01:00
Matthias Koefferlein
fa1719acc3
Avoid a deadlock in the logger system
2021-03-23 22:45:45 +01:00
Matthias Koefferlein
a8f3df7aa5
Refactoring of the interpreter scheme with the goal to provide a functional cleanup. This is required if someone stops inside the debugger. Without a proper cleanup the application becomes dysfunctional.
2021-03-15 10:17:25 +01:00
Matthias Koefferlein
bb9ae20c32
Rework of the progress reporting scheme: LVS got a log now, the layout is horizontal for multiple progress objects, less flicker and more quiet display, cancel function should work more reliably now.
2021-03-14 16:25:56 +01:00
Matthias Koefferlein
3378a9a7ce
'final' progress objects: will prevent child progress objects from showing too.
2021-03-13 10:12:53 +01:00
Matthias Koefferlein
f323c830d7
Enhancements for sync mode in threaded workers: allows providing progress too.
2021-03-13 10:11:27 +01:00
Matthias Koefferlein
fd01328659
Fixed Expressions error message for multi-line expressions.
2021-03-12 23:18:23 +01:00
Matthias Köfferlein
b968f2b47f
#730 : providing a new Qt module named QtUiTools for QUiLoader class s… ( #735 )
...
* #730 : providing a new Qt module named QtUiTools for QUiLoader class support.
* Fixed a compile error on Mac
* Added QtUiTools to some more places
* Fixed a linker issue in the QtUiTools Python lib
* On occasion fixed a infinite recursion problem in the debugger
The recursion happened because by mistake I instantiated a
QApplication inside an in-application Python script. This
crashed the debugger due to infinite recursion. This is not
a real use case but to prevent similar issues, a recursion
sentinel was added.
* Removed QCoreApplication#notify from script bindings
Reasoning: "notify" made standalone scripts using QApplication and
QUiLoader virtually impossible.
Problem description:
- When a QApplication object is instantiated, e.g. in Python, the Qt binding
will install reimplementation hooks as the object may be dynamically
extended.
- A notify is virtual this means the *every* "notify" call in the application
is routed through the interpreter.
- For one thing this will slow down the application
- But as "notify" is called a zillion times this has more than this side effect.
- Specifically "notify" is called from within the QWidget constructor to
indicate a new widget. Then, if a QDialog for example is instatiated, it's
base class constructor will call "notify" when the object isn't ready yet.
- This has another severe side effect: as the object isn't ready yet, it gets
registered in the Python space with the wrong class and QDialog is not visible
as such.
To mitigate these problems, the most efficient solution is to disable "notify"
in general. There is hardly any use case in a script environment (in C++,
apart from hacking the only reasonable use case is exception handling, but
this does not apply to scripts). For providing the call functionality of
"notify" you should better use "postEvent" or "sendEvent" anyway.
So farewell QCoreApplication.notify ...
* Fixed python test for QtUiTools module
* Fixed UiTools test on Qt4 - QUiLoader needs an application object
Co-authored-by: Kazunari Sekigawa <kazunari.sekigawa@gmail.com>
2021-02-25 21:29:21 +01:00
Matthias Köfferlein
8b2ecf41df
Fixed issue by providing a compatibility bridge between tl::Stream (abstract paths) and tl::URI ( #734 )
2021-02-25 21:28:48 +01:00
Matthias Koefferlein
94e6f0f7a6
Logging progress for DRC, introducing 'abstract progress' concept
2021-02-07 23:41:53 +01:00
Matthias Köfferlein
d8c0ea806a
Issue 723 fixed. ( #724 )
...
* Fixed a segfault with simple 'klayout -v'
* Fixed #723
2021-02-05 23:28:22 +01:00
Matthias Köfferlein
c837b306be
Issue 720 ( #721 )
...
* Implemented a backup scheme for the file writer.
* Also consider backup files when the writer fails.
* Removed test exception
* Added config option for number of backups.
2021-02-02 22:47:25 +01:00
Matthias
47777b7eba
Fixed crash in WebDAV access test observed on MacOS, but probably also relevant for other platforms.
2021-02-02 19:53:55 +01:00
Matthias Koefferlein
036e9f7d6b
Yet another fix for Windows build.
2021-01-31 21:49:20 +01:00
Matthias Koefferlein
d10165928f
Trying to fix Windows build.
2021-01-31 20:21:14 +01:00
Matthias Koefferlein
f1d2f39031
Added signal-safe sleep function which does not return when a timer signal happens. Fixes some random fails in the test suite.
2021-01-31 16:20:16 +01:00
Matthias Köfferlein
1ba4394c2a
Merge pull request #710 from KLayout/byte-arrays
...
Byte arrays
2021-01-27 12:42:48 +01:00
Matthias Koefferlein
96136e6993
Fixed Qt-less builds.
2021-01-27 08:05:02 +01:00
Matthias Koefferlein
dce371caaa
Fixed Qt-less builds.
2021-01-26 23:42:18 +01:00
Matthias Köfferlein
bd41f7222d
Merge pull request #706 from KLayout/spline-as-api
...
Generalized spline interpolation of DXF reader
2021-01-26 23:39:51 +01:00
Matthias Koefferlein
702852a8a9
Merge branch 'master' of github.com:KLayout/klayout into byte-arrays
2021-01-25 08:11:53 +01:00
Matthias Koefferlein
204cb7ec3f
Fixed build with curl
2021-01-25 08:05:16 +01:00
Matthias Koefferlein
199602424a
Merge branch 'master' of github.com:KLayout/klayout into byte-arrays
2021-01-24 23:52:56 +01:00
Matthias Koefferlein
245bf93429
Some build fixes to enable basic compilation on CentOS6
2021-01-24 17:37:46 +00:00
Matthias Koefferlein
5aac018503
Mapping QByteArray (and std::vector<char>) to Python 'bytes' now.
2021-01-24 17:36:40 +01:00
Matthias Koefferlein
c309961109
More verbose debugging for HTTP requests.
2021-01-23 22:27:53 +01:00
Matthias Koefferlein
d1e6845ae4
Replaced std::auto_ptr by std::unique_ptr because the latter is deprecated
2021-01-23 21:55:51 +01:00
Matthias Koefferlein
fdd5671602
Attempt to solve WebDAV redirection issue on Windows.
2021-01-23 20:40:25 +01:00
Matthias Koefferlein
372a42e84a
Renamed test files so that debugger doesn't get confused
2021-01-23 20:40:10 +01:00
Matthias Koefferlein
c8951c10cd
Generalized spline interpolation of DXF reader and provide a script binding (RBA::Utils).
2021-01-23 18:44:36 +01:00
Matthias Koefferlein
9a7b2babc0
Fixed Windows build
2021-01-17 23:50:42 +01:00
Matthias Koefferlein
19ecf8866c
Fixed Windows build
2021-01-17 23:41:51 +01:00
Matthias Koefferlein
5b60e2be90
Fixed Windows build
2021-01-17 23:35:22 +01:00
Matthias Koefferlein
081c445cd8
Merge branch 'master' into complex_drc_ops
2021-01-17 19:55:28 +01:00
Matthias Koefferlein
7d4310d343
Updated copyright to 2021
2021-01-05 22:57:48 +01:00
Matthias Koefferlein
cc58d7d8ee
WIP: performance improvement: copy-on-write for flat edge pairs
2020-12-27 18:45:10 +01:00
Matthias Koefferlein
4ec00fb129
Fixed an issue with wrapping new objects into tl::Variants which are returned directly. For these objects, ownership needs to be transferred to the script.
2020-12-27 17:09:06 +01:00
Matthias Koefferlein
0fbfa4dfde
Fixed URI relative path resolution if the first URI is empty.
2020-12-23 23:33:11 +01:00
Matthias Koefferlein
fd066127ff
Merge branch 'master' into complex_drc_ops
2020-12-08 23:34:07 +01:00
Matthias Köfferlein
d5f6b51092
Compatibility with Qt 4.6.x on CentOS6
2020-11-22 19:54:13 +00:00
Matthias Koefferlein
db6b3d280e
Merge branch 'master' into complex_drc_ops
2020-11-22 09:31:15 +01:00
Matthias Koefferlein
f3668a713d
Merge branch 'master' into usability-enhancements
2020-11-13 02:08:10 +01:00
Kevin Zheng
a1d1156407
Add -lexecinfo for BSD
2020-11-04 20:52:56 -08:00
Kevin Zheng
96123c3429
Fix build on FreeBSD ( #656 )
...
* Fix build on FreeBSD
* Add missing dependency on qtWidgets
2020-10-18 23:43:28 +02:00
Matthias Koefferlein
8c1e0d7e0e
Added option to retrieve current memory footprint, implemented for Windows (to be tested)
2020-10-11 17:47:30 +02:00
Matthias Koefferlein
61f18f7f33
[PORTBACK] fixed an issue with in-place processing of flat regions
2020-10-01 23:10:24 +02:00
Matthias Koefferlein
151fd81bd3
Should fix unit test fails on Windows (backslash vs. slash for file name separators)
2020-09-20 01:07:39 +02:00
Matthias Koefferlein
60e3f87877
Merge branch 'master' into usability-enhancements
2020-09-14 20:41:23 +02:00
Matthias Köfferlein
9cef935fad
Merge pull request #630 from KLayout/ruby-include
...
Ruby include
2020-09-14 18:33:57 +02:00
Matthias Köfferlein
948819472b
Issue 615 ( #621 )
...
* Password encoding to UTF-8 for Basic HTTP authentication - this is basically a hack. Needs to be reverted as soon as Qt switches to UTF-8 encoding.
* Workaround for issue #615
2020-09-14 18:33:01 +02:00
Matthias Koefferlein
0cc41f43c4
Fixed one more issue with the include implementation.
2020-09-01 22:02:47 +02:00
Matthias Koefferlein
ad6809a084
Fixed a few issues with the include implementation.
2020-09-01 19:57:27 +02:00
Matthias Koefferlein
a01eb70891
Added tests for include feature, some bug fixes and enhancements.
2020-08-31 20:27:57 +02:00
Matthias Koefferlein
9c2914f016
WIP: allow breakpoints for files with includes and inside includes
2020-08-31 20:27:57 +02:00
Matthias Koefferlein
77a9253273
WIP: Provide a generic include file expansion mechanism, basic class.
2020-08-31 20:27:57 +02:00
Matthias Koefferlein
be26c679d8
Merge branch 'master' into lefdef-enhancments
2020-08-30 22:55:45 +02:00
Matthias Koefferlein
4bba58cde1
Merge branch 'master' into usability-enhancements
2020-08-30 14:14:36 +02:00
Matthias Koefferlein
a5d675304c
Fixed an issue with deferred method execution in unit test context.
2020-08-30 13:06:50 +02:00
Matthias Koefferlein
98973e345d
Bugfix for command line parser - did not print name of unknown option
2020-08-23 19:41:51 +02:00
Matthias Koefferlein
cb1b3655e9
Bugfix in the command line parser: inverted bool options with value have not been inverted.
2020-08-23 01:55:55 +02:00
Matthias Koefferlein
608824fb36
Added LEF/DEF options to strm* buddies
2020-08-22 19:09:30 +02:00
Matthias Koefferlein
28520697a3
WIP: distribute feature.
2020-08-08 00:14:48 +02:00
Matthias Koefferlein
b9c49f0603
Mask specific suffixes, datatypes for LEF/DEF reader.
2020-07-18 22:28:14 +02:00
Matthias Köfferlein
e744eb32d1
Merge pull request #580 from KLayout/drawing-performance2
...
Drawing performance2
2020-06-28 16:14:48 +02:00
Matthias Koefferlein
43ceeecf6e
Golden test data for Ubuntu 20 and Windows, pipe output stream for Windows.
2020-06-27 09:50:55 +02:00
Matthias Koefferlein
c517aa4ff7
Cherry-picked MacOS fixes into master
2020-06-27 01:47:35 +02:00
Matthias Koefferlein
999c065262
Introducing iterated arrays for instances
...
Iterated instances are created for OASIS files
using irregular repetitions in viewer mode.
Reason: this way, the same drawing optimization
than for iterated shape arrays can be applied.
As this is a new API feature, some adjustments
had to be made to incorporate them into the
code.
2020-06-04 12:17:34 +02:00
Matthias Koefferlein
a9c0616aa0
WIP: more changes
2020-05-31 10:37:30 +02:00
Matthias Köfferlein
9f4ccaaedc
Issue #535 (Image handling enhancements) ( #551 )
...
* Menu item to hide or show all images
* Images: asymmetric color nodes.
* Added RBA::image::from_s for reading image back from string. Added tests.
* Added image file reader test (RBA)
* Added lyimg format for image file persistence.
* Small fix of unit tests.
* Added GSI binding for new image features and tests.
* Save and load for .lyimg formats in image properties dialog.
2020-05-02 13:45:20 +02:00
Matthias Koefferlein
f6b2eea0a7
Build fixed.
2020-04-26 17:08:52 +02:00
Matthias Koefferlein
3a7d9d0b0f
Fixed copyright/license topic.
2020-04-25 23:30:48 +02:00
Matthias Koefferlein
5bedd3cd04
Removed tab characters from sources.
2020-04-25 23:27:29 +02:00
Matthias Koefferlein
4c6d61bed1
Fixed 'at most one statement is allowed per line' for tl_assert macro
2020-04-25 22:59:45 +02:00
Matthias Koefferlein
0abd5d5d96
Fixed some minor compiler warnings.
2020-04-05 18:30:08 +02:00
Matthias Koefferlein
d315f84cab
Attempt to fix Windows build error.
2020-02-27 15:46:34 +01:00
Matthias Koefferlein
25d1a65b21
Small enhancement: unit tests work also with verbosity >0 now.
2020-02-27 01:29:10 +01:00
Matthias Koefferlein
58de38739a
WIP: some refactoring, debugging output for netlist compare
...
Abstraction: a central getenv() feature to wrap all the system-specific things
Netlist compare debug and options can be enabled through environment variables:
KLAYOUT_NETLIST_COMPARE_DEBUG_NETCOMPARE=1: print netlist compare debug info
KLAYOUT_NETLIST_COMPARE_DEBUG_NETGRAPH=1: print net grapg
KLAYOUT_NETLIST_COMPARE_CASE_SENSITIVE=1: make netlist compare case sensitive
2020-02-27 00:51:55 +01:00
Matthias Köfferlein
7c89192ad8
Fixed #502 (issues with AbsoluteProgress) ( #504 )
...
* Fixed #502 (issues with AbsoluteProgress)
* Updated Jenkinsfile to not publish a PR build
2020-02-21 18:37:50 +01:00
Matthias Koefferlein
b8c82c4f8b
Updated copyright notice to 2020
2020-01-05 00:59:43 +01:00
Matthias Koefferlein
297f37a63a
Huge performance improvement for a specific array element interaction. Reason: duplicate cluster interactions spoiled performance.
2019-12-18 01:10:16 +01:00
Matthias Koefferlein
bbb8e1f430
Merge branch 'master' of https://github.com/KLayout/klayout
2019-12-08 20:25:54 +01:00
Matthias Koefferlein
76c42f2959
Magic file writer fixes for Windows - file path handling wasn't right for windows paths with drives.
2019-12-08 19:58:58 +01:00
Matthias Koefferlein
a430b4df83
Supply 'read_all' capability of text stream with CRLF replacement.
2019-12-07 19:08:35 +01:00
Matthias Köfferlein
2fa545d80b
Merge pull request #435 from KLayout/issue-429
...
Issue 429
2019-12-02 21:15:05 +01:00
Matthias Köfferlein
e061a0a932
Merge pull request #433 from KLayout/wip
...
Some enhancements
2019-12-02 21:14:35 +01:00
Matthias Koefferlein
152dc87682
Implemented a dummy arrangement of cells when the MAG output file isn't corresponding to a existing cell - useful for obtaining a cell overview
2019-12-01 10:13:11 +01:00
Matthias Koefferlein
f16a5085c5
WIP: some implementation refinement
...
- MAG writer output name does not need to match a cell name
(this file is not written in this case, but the path and extension
are taken from it). A warning is issued in this case.
- Strings for layer and cell names are normalized (special chars, UTF8)
- Cell duplicates won't be produced but existing cells are reused.
This enables "incremental reads".
2019-11-30 19:04:54 +01:00
Matthias Koefferlein
c6ede46fd0
WIP: substantial changes
...
- force lower-case layer names to allow CIF/MAG loop (CIF needs
upper-case layer names, MAG doesn't)
- reverted CIF reader to standard
- new options for writer: tech, "zero timestamp".
- file name MUST be consistent with one cell name.
Reason: it's not possible to derive the initial
cell from the given options, so without the file name
being consistent, we can't know what to write there.
Basically the file name rather supplies the path.
2019-11-30 00:09:44 +01:00
Matthias Koefferlein
4ac5801cc7
WIP: Implementation draft of MAG file writer.
2019-11-28 00:20:30 +01:00
Matthias Koefferlein
211524a0c0
WIP: reader starts becoming functional.
2019-11-26 01:03:24 +01:00
Matthias Koefferlein
d37a744322
Build issue fixed on Windows.
2019-11-21 22:03:01 +01:00
Matthias Koefferlein
215ce8812b
More consistent handling of Windows/Linux switch in output stream and unit tests.
2019-11-21 21:57:49 +01:00
Matthias Koefferlein
72a3528e55
WIP: implementation of a fix (explicit text mode for XML reader and stream writer)
2019-11-20 23:52:37 +01:00
Matthias Koefferlein
181d5b48e6
Fixed consistent typo: PCell's -> PCells
2019-11-17 21:47:11 +01:00
Matthias Koefferlein
6b5c951088
Fixed string unit test on MinGW 32bit
2019-11-12 19:11:21 +01:00
Matthias Koefferlein
b220374bd1
Fixed gcc builds with stdc++0x (math.h issue)
2019-11-10 01:30:45 +01:00
Matthias Köfferlein
65b0752c5c
Merge pull request #396 from KLayout/issue-387
...
Implemented issue-387 (python version in grain.xml)
2019-11-06 01:01:23 +01:00
Matthias Koefferlein
fe9e808d61
Fixed implementation: cannot change definition of tl::Extractor::read_word and need a new method to read a word.
2019-11-03 21:50:47 +01:00
Matthias Koefferlein
50e8f334d1
Implemented issue-387 (python version in grain.xml)
...
The solution is to extend the api-version field.
"0.26.1" is KLayout API >= 0.26.1
"ruby" means: Ruby required
"python 2.6.0" means: Python required with at least 2.6.0
"0.26.1; ruby; python 2.6.0" means: all of this together
In addition, the version has been set to 0.26.1 now.
2019-11-03 02:12:05 +01:00
Matthias Koefferlein
a3b2e3a154
Bugfix for glob pattern with empty alternative.
2019-10-16 01:10:08 +02:00
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
Matthias Koefferlein
70a4bd7aa2
Locale-independent implementation of UTF-8 string case conversion.
2018-07-13 01:07:46 +02:00
Matthias Koefferlein
4f326572d4
Fixed one .pro file for older Qt versions
2018-07-12 23:57:00 +02:00
Matthias Koefferlein
72c3288090
Disabled thread local storage test for Qt <4.7 because this class is broken with an int argument on Qt 4.6.2
2018-07-12 23:25:33 +02:00