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
Matthias Koefferlein
1375bdcc9a
Fixed XMLParser unit test 5 for Qt
2018-07-12 23:19:54 +02:00
Matthias Koefferlein
03ddd495d8
Disabled brute-force shutdown test for threads on Qt - QThread is not able to deal with this.
2018-07-12 22:11:57 +02:00
Matthias Koefferlein
ca8f9fd904
Fixed Qt-based XML parser build.
2018-07-12 20:54:05 +02:00
klayoutmatthias
616c2942e1
WIP: made pymod functional on Windows (without Qt). Tests pass.
2018-07-10 23:34:30 +02:00
Matthias Koefferlein
58fd6ed143
WIP: bugfix on WaitCondition (deadlocked)
2018-07-10 00:13:06 +02:00
Matthias Koefferlein
5cfb98d9f2
WIP: pthread-based WaitCondition (simple)
2018-07-10 00:01:25 +02:00
Matthias Koefferlein
ad49c9502b
WIP: some work on the pthread-based alternative to Qt threads.
2018-07-09 22:58:16 +02:00
Matthias Koefferlein
b0f69d46a9
WIP: one first basic Thread test.
2018-07-09 00:55:41 +02:00
Matthias Koefferlein
260243a6d9
WIP: Fixed PCB import for non-Qt builds, added missing file.
2018-07-08 23:44:36 +02:00
Matthias Koefferlein
e0a23adb66
Made XML parser and writer functional with expat
2018-07-05 23:40:39 +02:00
Matthias Koefferlein
43243ae162
Enabled Qt-less unit tests, some basic implementation of Qt-less threads based on pthread and an atomics library. A lot missing.
2018-07-05 00:33:34 +02:00
Matthias Koefferlein
ad7a9836b0
Using pipes instead of QProcess for pymod tests, enable pipes on Windows (needs testing)
2018-07-04 20:26:34 +02:00
Matthias Koefferlein
642fb4270b
Fixed rba::Technology test. Now all tests are passing with Qt.
2018-07-04 20:00:41 +02:00
Matthias Koefferlein
12e0db660c
Finished file utils tests.
2018-07-04 19:33:39 +02:00
Matthias Koefferlein
e9dcadb278
Fixed a linker issue.
2018-07-04 00:25:34 +02:00
Matthias Koefferlein
1f8afab417
Bugfixed the Qt-based XML implementation.
2018-07-04 00:21:06 +02:00
Matthias Koefferlein
d1553d7586
Some more tests on tl::FileUtils
2018-07-03 23:51:10 +02:00
Matthias Koefferlein
17c7c8e1bb
Some file utils tests added (file name decomposition, fake Windows/Linux tests)
2018-07-03 23:43:57 +02:00
Matthias Koefferlein
7ede06dca5
Build fixed, basic bugs fixed and made unit test framework work. Added tests for tlString.
2018-07-03 22:09:38 +02:00
Matthias Koefferlein
bbfcd9cf9e
Made normal build work again.
2018-07-03 01:49:06 +02:00
Matthias Koefferlein
ab06ce3445
Made the code build without Qt.
2018-07-03 01:08:02 +02:00
Matthias Koefferlein
a82adbbe83
Massive reduction of Qt dependencies, but also massive refactoring.
2018-07-03 00:51:36 +02:00
Matthias Koefferlein
c532b75338
Provide an QtXml alternative through expat.
2018-07-02 22:19:36 +02:00
Matthias Koefferlein
7fca6f5f31
Non-Qt implementations of file utils - needs testing.
2018-07-02 20:29:34 +02:00
Matthias Koefferlein
239b7ca3ff
First (major) steps towards a Qt-less basic build.
2018-07-02 18:20:20 +02:00
Matthias Koefferlein
edbe0b2542
Attempt to make thread test more reproducible.
2018-06-24 15:16:49 +02:00
Matthias Koefferlein
bfbd8732f3
WIP: basic availability of LayoutView as separate component
...
- The deferred method scheduler is now automatically created
when required and when there is a QApplication
- QApplication and related have argv constructors
2018-06-03 00:54:58 +02:00
Matthias Koefferlein
6468bb7ab9
WIP: refactoring of GSI structure for separated modules.
2018-05-30 00:39:58 +02:00
Matthias Koefferlein
0b0393ce56
First version of Python module.
2018-05-26 21:31:39 +02:00
Matthias Koefferlein
108f90e382
Small enhancements for package manager
...
- Progress on download
- Some icons did not get marked (8 bit indexed image format)
- Colors in installation status dialog
One internal enhancement: progress adaptors can be
instantiated temporarily now to catch progress events.
2018-05-19 00:22:15 +02:00
Matthias Koefferlein
d075c37cb4
Windows build fixed, version incremented to 0.25.3, updated changelog.
2018-05-02 21:47:30 +02:00
Matthias Koefferlein
74cc8eea07
Compatibility with Ruby 1.8.7 (main app test), tests fixed for CentOS6
2018-05-02 07:32:20 +02:00
Matthias Koefferlein
9084a7f519
Fixed Windows build, changed tl::Clock documentation
2018-05-01 22:48:08 +02:00
Matthias Koefferlein
8596b0b9ea
libcurl integration and HTTP support enhanced
...
Issue was: the asynch interface for HTTP access
wasn't entirely compatible between Curl and Qt
implementations.
Plus, the progress integration was messed up
because of the deleteLater scheme (progress was
visible even after the connection ended).
The deleteLater scheme was replaced by an
explicit close which does not require the
connection to be deleted immediately in the
receivers.
2018-05-01 21:24:05 +02:00
Matthias Koefferlein
6edb5b9f3e
Build fixed.
2018-05-01 08:17:51 +02:00
Matthias Koefferlein
90c5ff4b12
Bugfix: progress response time was long sometimes
...
Reason: the timer involved measured CPU time. So if the
process wasn't CPU intensive (i.e. waiting for network
response), cancelling the operation wasn't possible.
2018-04-30 23:25:23 +02:00
Matthias Koefferlein
080623ad15
libcurl substitute for Qt network.
...
Reasoning: on Qt <4.7, custom request are not available.
They are required however to implement WebDAV. libcurl
provides a substitute for QNetwork. This is important
for deployment on CentOS6 for example.
2018-04-30 23:23:07 +02:00
Matthias Koefferlein
e1922da3b2
Better memory statistics.
2018-04-15 00:54:30 +02:00
Matthias Koefferlein
655eb49afd
Bugfix #109 (part 2): re-established compatibility with previous version.
2018-04-06 23:08:41 +02:00
Matthias Koefferlein
ea3ebba470
Bugfix #109 (part 1): account for long != long long on Windows in tl::Variant
2018-04-06 14:53:40 +02:00
Matthias Koefferlein
415d52f35d
Fixed some issues found by Coverity scan.
2018-03-19 18:24:09 +01:00
Matthias Koefferlein
2f46f0d1c6
Fixed some issues found with Coverity.
2018-02-21 00:21:19 +01:00
Matthias Koefferlein
aab425a58c
Fixed #66 (Authentication dialog should indicate retry)
2018-01-24 22:08:13 +01:00
Matthias Koefferlein
53328d1767
Merge branch 'macos-build' from kazzz
2018-01-14 17:29:59 +01:00
Matthias Koefferlein
a2ba300bd7
More consistent 64bit coordinate support
2018-01-12 00:30:49 +01:00
Matthias Koefferlein
2de6b691b4
64bit coordinate support enhanced
...
- int128 to string support for output
- unit tests
- some compiler issues fixed
2018-01-10 22:12:55 +01:00
Matthias Koefferlein
bf5f932ff1
HTTP access enhancments
...
Added the ability for asyn requests.
Fixed a memory lead issue in WebDAV access.
2018-01-07 08:56:06 +01:00
Matthias Koefferlein
55be7d78e7
Merge remote-tracking branch 'matthias-origin/async-reader' into macos-build-on-master
2018-01-06 17:10:35 -08:00
Matthias Koefferlein
8003d1bb47
Merge branch 'master' into macos-build-on-master
2018-01-02 23:37:45 +01:00
Matthias Koefferlein
ffb56335fb
Updated copyright note to 2018.
2018-01-01 21:08:06 +01:00
klayoutmatthias
efa921c950
Removed visibility declaration which wasn't actually required.
2018-01-01 19:04:52 +01:00
klayoutmatthias
7e0f1522ac
Windows build compatibility
...
The issue is with "dllexport": previously, dllexport was present on
exposed templates tool (= visibility(default) for gcc/clang). This
ensured MacOS compatibility since then the typeinfo is corretly
shared and dynamic_cast/typeid works.
For Windows, the "dllexport" equivalent requires the template
instantiations to be declared "external" which is a coding nightmare.
The solution is to provide separate macros for real (non-specialized,
not explicitly instantiated) templates (.._PUBLIC_TEMPLATE) which
is defined as empty for Windows and "visiblity(default)" for gcc/clang.
2018-01-01 18:55:11 +01:00
Matthias Koefferlein
111e1f12e0
WIP: Windows build compatibility
2018-01-01 14:44:25 +01:00
Matthias Koefferlein
c8108dd038
WIP: Windows build compatibility
2018-01-01 14:34:49 +01:00
Matthias Koefferlein
d670083111
Even more exported templates ..
2017-12-31 11:43:44 -08:00
Matthias Koefferlein
48a6b4b57a
Exceptions have to be exported from DSO's too to make the recognized in catch statements.
2017-12-31 09:54:47 -08:00
matthias
063811edc4
Solved the clang/MacOS startup failure and menu issue
...
1.) Startup issue:
This is solved by making sure templates with virtual functions
are made visible in the DSO. This way, dynamic_cast is possible
across DSO's.
Scary: clang/MacOS wants the forward declarations be declared visible as well.
2.) Menu issue:
The best solution is to have only one QMenuBar. The navigator
now gets a synthetic menu bar composed of QToolButtons.
2017-12-30 15:22:16 -08:00
Pankaj Pandey
f318cb2e30
Update tlString.h
2017-12-06 18:33:57 +05:30
Pankaj Pandey
58281695fb
Update tlString.cc
2017-12-06 18:32:17 +05:30
Pankaj Pandey
ff74c466d5
Replace `m_m128` -> `m_int128` in tlVariant.cc
...
Typo in member variable name.
2017-12-06 16:11:28 +05:30
Matthias Koefferlein
2cd5d68db2
Build enhancements
...
Qt <4.7 is partially supported now:
* Without Qt bindings (build.sh -without-qtbinding ...)
* With reduced functionality (i.e. package manager won't work)
Build compatibility with STL-less Qt installations
2017-12-05 22:26:30 +01:00
Matthias Koefferlein
615ba36836
Bugfix: take download URL as source for packages also for relative URLs
...
Plus: diagnostics for HTTP access.
2017-10-12 21:08:19 +02:00
Matthias Koefferlein
b3ffa23499
Relative paths for includes in package index files
...
Plus: inhibt some deferred methods during processEvent (i.e. progress reporting,
HTTP/HTTPS download).
2017-10-10 21:04:52 +02:00
Matthias Koefferlein
c077feb3d5
Some refactoring of package manager, new features
...
* Moved tlSystemPaths into lay namespace where it belongs
* Doc updates
* New command line switch -y and -yd for unattended installation
* Download URL's can be relative to salt.mine URL
* KLAYOUT_HOME environment variable to make ~/.klayout configurable
* Better error messages on XML parser on file/stream read errors
(specifically from http/https)
2017-10-03 14:19:01 +02:00
Matthias Koefferlein
7e7a5ce030
Some enhancements/bug fixes for package manager
2017-09-27 00:16:43 +02:00
Matthias Koefferlein
ce951b29ec
Made tl::parent_path require existing parent - otherwise the previous implementation returned true always.
2017-09-26 22:25:53 +02:00
Matthias Koefferlein
7d2bf2d969
tl::DeferredMethod: allow new method calls from inside
...
This change will allow issuing the same method from inside
itself (postpone execution by re-issuing).
2017-09-23 13:14:36 +02:00
Matthias Koefferlein
3e37c0bf7b
First version of XOR progress visualization.
2017-09-20 01:22:25 +02:00
Matthias Koefferlein
196d3a60e7
Fixed the build with less dependencies.
2017-09-03 10:29:14 +02:00
Matthias Koefferlein
cfe8375be0
Unit test refactoring
...
Move ut framework to tl, so there are less complex
dependencies.
2017-09-03 01:54:11 +02:00
Matthias Koefferlein
000917d2c9
Refactoring: moved unit tests to libraries for some libs (ut modularization)
2017-08-26 22:44:31 +02:00
Matthias Koefferlein
55e797ffaf
Provide proper INSTALL targets for .pro files
...
Plus: reduce compiler warnings
2017-08-21 02:33:45 +02:00
Matthias Koefferlein
9585922659
Some enhancements in the command line parser
...
* Cancel exceptions are handled properly and -h does
no longer produce an error
* Help text is more readable now
* Some typos fixed
2017-08-21 00:20:18 +02:00
Matthias Koefferlein
c7edc9e7a0
More basic bd tests (reader) and some bug fixes
2017-08-19 19:25:21 +02:00
Matthias Koefferlein
a9b64d1e57
Refactoring and first bd tests
...
The goal of the refactoring is to support unit tests
for the db library.
For this, a distributed unit test concept has been
introduced (later to be extended to other libs).
Unit tests are shared objects called ".ut" and are
automatically loaded by the ut runner. The bd library
now has two folders - one for sources and one for the
unit tests. The sources are separated into lib and apps.
First unit tests for the writer options have been
provided.
2017-08-19 18:47:52 +02:00
Matthias Koefferlein
b296cdd915
Heavy refactoring of buddy sources
...
* To reduce the redundancy
* To enable testing of the bd library including the apps
The apps are entirely configured through their names.
Their .pro files are identical and the app implementation
is inside the bd lib (partially generic too). Hence the
apps can be tested by bd library unit tests.
2017-08-19 10:23:19 +02:00
Matthias Koefferlein
681c255e50
Equipped strmclip with the new command line parser
...
Plus: added repeated arguments (in addition to the array
arguments that have been there before).
2017-08-19 00:36:45 +02:00
Matthias Koefferlein
aa3caeca07
More options for buddies
...
* Generic writer options
* Generic reader options
* All converter tools are equipped with writer options
* strm2gds is equipped with reader options already
2017-08-17 23:31:05 +02:00
Matthias Koefferlein
dede3afe1b
Enhancements on command line parser
...
* Advanced options
* Groups
* strm2gds uses the new features already.
2017-08-17 09:26:15 +02:00
Matthias Koefferlein
09033d834e
Refactoring and enhancements of the cmd system
...
* Includes version and license info now
* New "bd" library for common features of the
buddies scripts.
2017-08-16 23:48:59 +02:00
Matthias Koefferlein
9f8144a254
Refined documentation of command line parser and buddies.
2017-08-15 00:13:57 +02:00
Matthias Koefferlein
492351519e
Added more options for strm2cif and strm2gds.
2017-08-14 22:42:12 +02:00
Matthias Koefferlein
7280a56ee9
Added command line parser to tl.
2017-08-13 23:05:40 +02:00
Matthias Koefferlein
8d6547291b
Fixed Linux build.
2017-08-06 18:30:21 +02:00
klayoutmatthias
f8b3c92191
Windows and Ruby/Python for deploymenu
...
This commit deals with the deployment issue on Windows
where there is no global Ruby/Python installation and
the installer needs to package all required files.
The solution is to read the Ruby/Python path from a
file that is evaluated upon startup. The installer will
install these files together with the executable for
Windows. This feature is only enabled on Windows.
A specific issue occured: since the location of the
file needs to be determined, the path of the executable
needs to be known. The Ruby initialization requires the
path to be set very early, before QCoreApplication is
instantiated. But Qt complains in QCoreApplication::applicationDirPath
so that this approach cannot be used for this purpose.
2017-08-06 18:18:34 +02:00
Matthias Koefferlein
808df3e90f
More verbose error messages for expression methods.
2017-07-29 11:40:11 +02:00
klayoutmatthias
c442202ca4
Enabled Windows build on Qt5.
2017-07-23 23:36:29 +02:00
Matthias Koefferlein
1b1ed7b291
Fixed a performance issue with many markers.
2017-07-19 21:47:45 +02:00
Matthias Koefferlein
45b774a3af
Fixed a XOR issue
...
Bug: sometimes, if the files had different database units, the XOR
tool was showing differences while there are none.
This was due to a sloppy computation of the tile boxes. The solution
is to properly round the tile size to a common database unit and
to use a common effective size for both inputs.
2017-07-18 22:33:54 +02:00
Matthias Koefferlein
d83c420c0a
Better support for delete-while-iterate on stable vectors
2017-07-02 19:19:55 +02:00
Matthias Koefferlein
93713d19e1
Ruby integration and debugger enhancements
...
- Massive performance improvement with debugger - trace was
eventually clearing the file to id map.
- UI updates on debugger did not happen because delayed
execution of functions got disabled.
2017-06-21 01:37:07 +02:00
Matthias Koefferlein
b0fbbadd83
A small performance improvement (by avoiding intermediate objects)
2017-06-17 00:32:00 +02:00
Matthias Koefferlein
46fccb99bc
WIP on Salt package manager
...
- made WebDAV implementation compatible with Git's SVN API
- bugfix: parallel requests were not supported on tl::HttpStream
2017-06-05 03:16:29 +02:00
Matthias Koefferlein
edf7caa2fb
Enhanced Salt package capabilities
...
* Salt packages can host native Ruby and Python
libraries now. The "ruby_lib" and "python_lib"
templates provide such native libraries.
This way we can basically wrap every native
extension in such a package.
* Ability to supply binary plugins through
Salt packages as well.
2017-05-27 22:32:55 +02:00
Matthias Koefferlein
f41e849e2f
A little refactoring and polishing of the Salt Manager dialog.
2017-05-26 23:47:36 +02:00
Matthias Koefferlein
e08e3459af
Set the default salt mine URL to the final one
...
+ fixed a WIN32 build error.
2017-05-17 22:22:27 +02:00