Commit Graph

2034 Commits

Author SHA1 Message Date
Matthias Koefferlein 0bedc4edac Removed inclusion of APPDATA into search path on Windows - this was pulling DLLs from other installations. 2021-02-02 22:45:07 +01:00
Matthias ab7db78ee8 Fixed crash in WebDAV access test observed on MacOS, but probably also relevant for other platforms. 2021-02-02 10:53:03 -08:00
Matthias Koefferlein c3c8f20e36 Fixed some merge issues 2021-02-01 10:13:44 +01:00
Matthias Köfferlein 47d9001ba6 Issue 718 (#719)
* WIP: first part of fix - generation of hole cutlines

First problem was that hole cutlines got extended
over the whole length and sometimes lead to coincident
edges which are difficult to resolve for the polygon
cutter.

* Refined solution, fixed #718

- disabled elaborate hole insertion procedure for now as the
  performance impact has to be assessed yet and the new scheme
  will break many tests
- stricter rejection of ambiguous configurations in the polygon cutter
- fallback is boolean AND now since there is no need to re-invoke the
  polygon cutter (we can't do so as we made it more strict).
  Performance-wise we replace a merge by an AND step which may even be
  faster the output is smaller and the polygon cutter does not need
  to be re-invoked.

* Compatibility with other STLs
2021-01-31 19:23:36 +01:00
Matthias Köfferlein bed82733e6 Fixed #709. (#714) 2021-01-31 19:21:54 +01:00
Matthias Koefferlein f3923f5875 Fixed Qt-less builds. 2021-01-27 12:42:15 +01:00
Matthias Koefferlein 0c8e38893b Fixed Qt-less builds. 2021-01-27 12:42:09 +01:00
Matthias Koefferlein c324a21649 Fixed merge and build issues. 2021-01-25 21:46:18 +01:00
Matthias Koefferlein 77f6327940 Some issues with the byte array binding fixed, less ambiguitites with Qt bindings, tests added. 2021-01-25 12:54:24 +01:00
Matthias Koefferlein 405445a427 Mapping QByteArray (and std::vector<char>) to Python 'bytes' now. 2021-01-25 12:52:29 +01:00
Matthias Köfferlein 233bff538b Fixed #704 (DXF reader: rational splines not supported) (#705)
* Fixed issue #704. TODO: replace algorithm by De Boor, check if accuracy is still maintained.

* Switch spline interpolation algorithm to De Boor for better numerical stability.

* Updated tests with DXF accuracy test, provide a warning for unsupported SPLINE types.
2021-01-25 12:49:39 +01:00
Matthias Köfferlein 46712e8866 Fixed #646 (crash on delete of library) (#685)
* Fixed a compiler warning

* Fixed #646 (crash on PCell Library "delete")

The issue was mainly caused by a "cleanup" call on
the library. Cleanup is supposed to remove excess
top level PCell variants. For libraries this is not
possible, as the library does not know which variants
are used and which are not.

In addition, some hardening against segfaults in
case of defect layouts has been applied.
2020-11-27 18:37:16 +01:00
Matthias Köfferlein 2c5e90c323 Fixed #647 (text orientation not working on search & replace) (#684)
* Fixed a compiler warning

* Fixed #647 (search & replace not working for text rotation)
2020-11-25 21:33:33 +01:00
Matthias Koefferlein aa97d4abe1 Fixed display bug happening when child cells are instantiated with a small magnification factor. 2020-11-21 23:39:53 +01:00
Matthias Köfferlein 63291aea92
Fixed (hopefully) #658 - needs some testing (#665)
This patch introduces a slightly more elaborate scheme for building
menus on MacOS. Under normal circumstances, this scheme should maintain
the menu item order as far as possible when Qt is trying to sync with
Mac's menu bar.

Co-authored-by: Matthias <klayoutmatthias>
2020-11-13 01:52:53 +01:00
Thomas Ferreira de Lima a452853c45 Adding clarification on GDS properties in cell, instance, shape and layout. 2020-11-11 22:38:07 -05:00
Matthias Köfferlein 4dbb4e72ca Fixed #652 (M scaling not working sometimes for Spice), provided test… (#653)
* Fixed #652 (M scaling not working sometimes for Spice), provided testcases

* One more patch (bugfix, Spice reader)
2020-10-10 23:22:48 +02:00
Matthias Köfferlein 9d3d3e8df6 Fixed #651 (DRC "select" feature issues) (#654)
* WIP: added test case, fixed dup problem and '-' shortcut

* WIP: updated DRC doc and could not resist the temptation to fix 'it's' vs. 'its'

* Deep mode also working with select now. Updated tests.
2020-10-10 23:22:15 +02:00
Matthias Köfferlein a5d13c25ae Fixed #629 (timeout event of QTimer not present on Qt5) (#631)
In addition, the "destroyed" and "objectNameChanged" signals
were added (specifically to QObject).

The API binding for Qt5 was updated which adds some events.
2020-09-14 20:29:15 +02:00
Matthias Koefferlein 4371df61cd Updated fix version in RBA::Layout documentation. 2020-09-14 18:47:53 +02:00
Matthias Koefferlein c816f91fb0 Provide multi-cell copy/move of shapes (GSI binding) 2020-09-14 18:47:48 +02:00
Matthias Koefferlein 72b12ffe1a Added multi-cell mapping for transferring multiple cells from one layout to another while including their hierarchy without duplicating cells. 2020-09-14 18:47:43 +02:00
Matthias Köfferlein 336c90a727 Fixed #637 (Points are not selected properly for mirrored subcells) (#638) 2020-09-14 18:43:26 +02:00
Matthias Köfferlein cb6e8760d3 Fixed issue #617 (constness problem in netlist) (#622) 2020-09-14 18:43:05 +02:00
Matthias Köfferlein ac609c9376 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:42:54 +02:00
Matthias Köfferlein 2576d0a8af Fixed #609 (internal error on netlist extract) (#610)
Reason was: when caching instance-to-instance interactions,
the array descriptions need to be normalized too.
2020-07-07 18:25:53 +02:00
Matthias Koefferlein c47532e340 Fixed a porting issue. 2020-07-05 22:02:52 +02:00
Matthias Köfferlein 3dbd50627e Implemented #603 (Coordinates for adjust origin) (#604) 2020-07-05 18:43:35 +02:00
Matthias Köfferlein 1d5275d22f Implemented #586 (issues with duplicate cell names) (#605)
As discussed in the ticket, the implementation will
check for unique cell names upon *writing* of a layout
file.
2020-07-05 18:43:04 +02:00
Matthias c6798c090b Fixed another porting issue. 2020-07-05 05:53:12 -07:00
Matthias af34116b81 Fixed compile issue happend during porting of Cell#transform from master to 0.26 2020-07-05 05:36:51 -07:00
Matthias Koefferlein 5d70a5ade6 Candidate for fix. 2020-07-05 14:10:39 +02:00
Matthias Köfferlein 0507d72d57 Fixed #591 (two topics for macro editor) (#595)
* Fixed #591 (crash on Macro/Add Location)

The main reason was that the QSortFilterProxyModel is very sensitive
to the order of signals it receives from the proxy model.

In this case, dataChanged() must not be send between layoutAboutToBeChanged()
and layoutChanged(). This happened implicitly during load() of a macro while
scanning the freshly added folder.

* Fixed another part of #591: ability to disable template selection pop-up in macro editor. Tied to the tip window now - if this is dismissed, no template selection dialog will be shown.
2020-07-03 23:43:49 +02:00
Matthias Köfferlein 3d20290499 Fixed #596 (crash on library _destroy) (#597) 2020-07-03 23:43:45 +02:00
Matthias Köfferlein ec4fefdfbe Implemented issue #598 (Cell#transform) (#600) 2020-07-03 23:43:39 +02:00
Matthias Köfferlein c416c7faf9 Fixed #592 (layer mapping issue) (#601) 2020-07-03 23:43:24 +02:00
Matthias Köfferlein d49689078a Netlist compare: Ambiguity resolution through name matching now default (can be turned off) (#594)
* WIP: some refactoring

* WIP: some refactoring

* Netlist compare: introducing ambiguity resolution by net names

By default now net names are used for resolving ambiguities.
If net names match, they will be used to associate nets if the
choice is ambiguous. This is usually much faster and more reliable
than trying to resolve ambiguities through topology analysis.

This feature can be disabled using "consider_net_names(false)" in
the LVS script.

* Some refactoring, Jenkinsfile modified for better test coverage
2020-06-29 20:52:04 +02:00
Matthias Koefferlein f31803f332 Golden test data for Ubuntu 20 and Windows, pipe output stream for Windows. 2020-06-27 20:52:01 +02:00
Matthias Koefferlein a66cd2a5fc Provide a new option -o for unit test runner which sends the log to a file. This way we don't capture qWarning in the XML JUnit logs. 2020-06-27 20:50:22 +02:00
Matthias a4c02357c3 Pipe streams supported for MacOS too. 2020-06-26 16:09:46 -07:00
Matthias 91eca19b3a Merge remote-tracking branch 'origin/netlist-compare-hardening' into macos-fixes 2020-06-26 08:00:13 -07:00
Matthias Koefferlein acdca4bc73 Updated testdata, added tests for breadth-first compare mode 2020-06-26 16:54:26 +02:00
Matthias Koefferlein f3c549ca73 Net compare algorithm enhancement (pre-analsysis of node connections for shortcut) 2020-06-26 16:33:16 +02:00
Matthias Koefferlein 3a680eb167 WIP: preserving the order of device and subcircuit assignments for test data reuse 2020-06-26 01:01:11 +02:00
Matthias Koefferlein b4732d818d WIP: proper checking of device and subcircuit topologiy - don't entirely rely on the equivalence deduction. 2020-06-26 00:22:30 +02:00
Matthias Koefferlein 08e6df238b WIP: bugfixes, enhancements for netlist compare 2020-06-25 00:53:56 +02:00
Matthias Koefferlein fed563c6d4 Finalization of the net compare algorithm change
This patch will allow the algorithm to consider
device and subcircuit equivalences during tentative
evaluation too.
2020-06-23 22:43:31 +02:00
Matthias Koefferlein 5cb1f63c63 Updated testdata 2020-06-23 21:56:04 +02:00
Matthias Koefferlein 783f3e08df Enhanced ambiguity resolution in netlist compare
The solution consists of considering device and subcircuit
equivalences during the evaluation of the node equivalence.
This will block certain paths and help resolving ambiguities
without creating contradictions.
2020-06-23 00:51:52 +02:00
Matthias Koefferlein d65888fcd9 WIP: better handling of ambiguity resolution 2020-06-22 21:07:29 +02:00