* [CONSIDER MERGING] Clarification and typo fixed in DRC doc.
* Implemented #1097 (discourage file compression, use CBLOCK)
* A warning is printed if file compression is enabled on OASIS
* A hint is present in the writer options
* CBLOCK is default (with fresh config) and for buddy tools
(use --cblock=false to disable it)
* Strict mode is default too.
* Updated tests
The application got unstable on exit under various conditions
(e.g. LayoutView created in script). Reason was the ownership
management of LayoutView which interfered with Qt widget
lifetime management.
The solution now is based on a clean widget/view hierarchy
and a consistent plugin parent/child relationship.
In addition, a new class is enabled which allows creating
a true QWidget (rather QFrame) for a LayoutView again.
* Fixed issue-1135 (LVS mismatch on parallel devices)
The fix consists of a more elaborate device identity analysis
following the topological matching. In this step, the devices
are identified according to their connections and parameters.
It is important to properly identify devices taking their
parameters into account as well as their connections.
* Second part of issue fixed (inverter chain ambiguity)
* Added test
* Updated tests
* Updated golden test results
* Updated golden test data for Windows
Co-authored-by: klayoutmatthias <matthias@klayout.org>
* First attempt to fix. Rather experimental.
* Debugging and bug fixing
The basic issue was a missing break
However, correct computation of cache results for instance-to-instance cluster
interaction is implemented
Plus: identical and overlapping instances are no longer ignored except in the
case of exact duplicates. Otherwise these instance generate dead nets which
are not connected elsewhere.
* Added tests, fixed duplicate cells test, added missing files.
* Code simplification (removed invariant from transformation in cluster-to-cluster interaction cache)
* Skipping cell instance duplicates as some real-world testcases mandate so
* Updated test data
* Fixed issue-1131 (do not show files in MRU lists which do no longer exist)
The solution consists of an extension of the Action system allowing to
dynamically hide or disable items. This currently works for menu items only.
This feature is used to dynamically *disable* (as of now, not hiding)
items from the four MRU lists corresponding to non-existing files.
In addition, a "clear list" menu has been added to the MRU lists.
* Small enhancement: file names can be URIs
This was a problem with universal DRC which does not specifically
set the merged status. Furthermore, the default for DeepRegion and
DeepEdges was "false" already and now is aligned.
* WIP: some convenience (self.param=() for Ruby PCell impl), a bug fix (crash on call of pcell_parameter on wrong cell), update of tests
* Implemented solution for #1079 (refresh calls coerce_parameters)
* Basic.CIRCLE modified such that coerce_parameters_impl also catches the case of a programmatic change of actual_radius and this function will update radius and the handle accordingly
* Modified Basic PCells such that they work with coerce_parameters also if generated programmatically
* Added tests