Matthias Koefferlein
3e3dcb757e
New golden test data
2025-05-17 18:55:51 +02:00
Matthias Koefferlein
135030649b
Updating golden test data with new lvsdb files
2025-05-17 17:15:04 +02:00
Matthias Koefferlein
1c4077449b
Fixed build issue
2025-05-16 18:55:55 +02:00
Matthias Koefferlein
6cd4b97cd3
Including internal net names in LVS DB
...
Problem: so far, these names have not been conveyed.
But after the net IDs changed in the LVS DB (renumbering),
the names should be retained. Otherwise it is difficult to
relate log level entries or Spice netlists to them.
2025-05-15 21:17:15 +02:00
Matthias Koefferlein
91005d5cb6
Tests for RBA+pex, bug fixes
2025-05-04 20:42:12 +02:00
Matthias Koefferlein
2bc8ac235a
Fixed unit tests
2025-05-04 16:22:03 +02:00
Matthias Koefferlein
80ad38f81b
WIP: debugging, tests. Triangulation should be safer now against linear chains of vertexes.
2025-05-04 14:36:34 +02:00
Matthias Koefferlein
f83cd61843
WIP: debugging, tests.
2025-05-04 13:11:46 +02:00
Matthias Koefferlein
1932532416
Bug fixes, tests
2025-05-02 15:07:28 +02:00
Matthias Koefferlein
30ac61ea20
Added title support, tests, debugging
2025-05-02 14:25:34 +02:00
Matthias Koefferlein
226ba429f1
WIP: MALY reader, debugging, tests
2025-05-02 13:27:59 +02:00
Matthias Koefferlein
cd468d4d67
WIP
2025-04-27 23:00:46 +02:00
Matthias Koefferlein
282f6e9d23
Merge branch 'master' into feature/maly
2025-04-27 20:57:09 +02:00
Matthias Koefferlein
e76be5b071
WIP
2025-04-27 20:55:11 +02:00
Matthias Köfferlein
e76e9b7d0b
Merge pull request #2017 from KLayout/bugfix/issue-2014
...
Fixed issue #2014 (strm2oas lef/def/gds collect drops cells reference…
2025-04-27 20:53:47 +02:00
Matthias Koefferlein
ffa42653fe
Addressing issue #2011
...
- "report" can now be late in DRC without internal error
Yet, the report will only capture the output layers
after the report statement has been called.
- Text objects don't create zero-area polygons in deep mode
XOR now.
2025-04-26 22:04:50 +02:00
Matthias Koefferlein
8ece7bcce1
Activate pex module, GSI bindings
2025-04-22 22:37:23 +02:00
Matthias Koefferlein
8a122c8a7d
WIP: bug fixes, one more test
2025-04-18 23:29:29 +02:00
Matthias Koefferlein
71620445ee
Polygon#triangulate now returns a 'raw' region, same for SimplePolygon#triangulate. Working on hm_decomposition (tests, bug fixes etc.)
2025-04-18 15:13:29 +02:00
Matthias Koefferlein
16604e5a92
New module: 'pex'
2025-04-18 13:12:45 +02:00
Matthias Koefferlein
60d1fb0685
Porting HM decomposition to new PLC framework
2025-04-16 00:02:25 +02:00
Matthias Koefferlein
e8d796aded
Fixed unit tests
2025-04-08 19:38:56 +02:00
Matthias Koefferlein
8150e732af
Hopefully fixing strm2xor finally, added a test
2025-04-08 19:14:01 +02:00
Matthias Köfferlein
449a9a968e
Merge pull request #2015 from KLayout/bugfix/issue-2012
...
Bugfix/issue 2012
2025-04-05 19:21:35 +02:00
Matthias Koefferlein
78e2074b4c
Added a unit test
2025-04-03 21:15:49 +02:00
Matthias Koefferlein
c656700b44
Maybe fixed issue-2012 (leaking reference in Python)
2025-04-03 20:44:34 +02:00
Matthias Koefferlein
a38bea3086
Fixed a unit test
2025-03-29 19:35:26 +01:00
Matthias Koefferlein
40a0113ce5
Fixing Texts[], EdgePairs[] and Edges[] operators - both in terms of returning xWithProperties and objects with properties at all
2025-03-27 00:27:53 +01:00
Matthias Koefferlein
3aebf90ecd
Texts[n] now also provides a TextWithProperties object. Bugfix: this method was not delivering any objects with properties at all.
2025-03-26 01:22:54 +01:00
Matthias Koefferlein
a24d5388d7
Region[] now returns a PolygonWithProperties object or nil
2025-03-26 00:56:54 +01:00
Matthias Koefferlein
227203cdd1
Providing a less strict overload resolution
...
Downcast now has precedence over conversion constructors, hence less ambiguities
Solution is implemented for
- Ruby
- Python
- Expressions
For Expressions:
- The overload resolution is less evolved anyway
- There was an additional bug preventing to pass arrays (hashes) in expressions
2025-03-26 00:45:16 +01:00
Matthias Koefferlein
a5625c6d86
New golden testdata for MSYS2
2025-03-23 18:14:44 +01:00
Matthias Koefferlein
b493be2dfa
New golden testdata for MSVC2017
2025-03-23 18:12:13 +01:00
Matthias Koefferlein
a22f48d87a
Texts#polygons now has an argument to specify a property key that receives the text string
2025-03-23 15:54:18 +01:00
Matthias Koefferlein
f977973b85
RecursiveShapeIterator#property and RecursiveShapeIterator#properties
2025-03-23 15:23:19 +01:00
Matthias Koefferlein
cf5e62a4ed
Added RBA/pya tests for triangulation
2025-03-23 11:41:26 +01:00
Matthias Koefferlein
21bfe7a632
New golden testdata variants
2025-03-22 22:36:15 +01:00
Matthias Koefferlein
85bb9be5c0
Fixed Python tests for Python 2 backward compatibility
2025-03-22 21:55:44 +01:00
Matthias Koefferlein
2191febc38
Updating test data for better robustness
2025-03-22 20:41:24 +01:00
Matthias Koefferlein
d60b296417
Improvement: Device#terminal_ref to get a NetTerminalRef from a Device.
2025-03-14 23:29:09 +01:00
Matthias Koefferlein
da88973df9
A number of new methods and variants in LayoutToNetlist
...
The goal is to support texts as native objects in
LayoutToNetlist.
Primarily this means, that instead of using a Region
to identify a layer, it is encouraged to use a
layer index instead. Also, Region is not longer the
only way to represent a layer, Texts is available
too.
It is possible now to retrieve the texts of a net
using "texts_of_net".
Also, the "lmap" parameter of "build_nets" became
optional. If "nil", a layer map is created based
on the layer info attribute of the layers.
2025-03-09 23:07:46 +01:00
Matthias Koefferlein
903bd70223
Fixed merge issues
2025-03-06 22:24:05 +01:00
Matthias Koefferlein
87e7d8e493
Merge branch 'master' into devel
2025-03-06 19:35:32 +01:00
Matthias Koefferlein
605fa44ca6
Another refinement for DSS bug fix.
2025-03-05 10:26:45 +01:00
Matthias Koefferlein
7b4e8a3462
Refined solution for DSS remapping bug
2025-03-04 19:50:33 +01:00
Matthias Koefferlein
3893f3be56
Merge branch 'master' of github.com:KLayout/klayout
2025-03-03 18:36:05 +01:00
Matthias Köfferlein
8a01352549
Merge pull request #1992 from KLayout/feature/issue-1989
...
Feature/issue 1989
2025-03-03 18:35:46 +01:00
Matthias Koefferlein
ac1c656bc0
Fixed unit tests
2025-03-03 18:34:43 +01:00
Matthias Koefferlein
32fe65adc0
[consider merging] Fixed a bug when returning a Region into a layout with cells unselected.
2025-03-02 19:06:48 +01:00
Matthias Koefferlein
c6e7c47d6c
Some bug fixes, updated tests
2025-03-02 18:30:31 +01:00
Matthias Koefferlein
79262028ff
[consider merging] Fixed a bug when returning a Region into a layout with cells unselected.
2025-03-01 23:18:29 +01:00
Matthias Koefferlein
094fccce74
Made unit tests more robust
2025-02-16 15:07:37 +01:00
Matthias Koefferlein
ae5ae25000
Properties filters for EdgePairs and Texts too.
2025-02-16 13:59:50 +01:00
Matthias Koefferlein
1fed2767e8
Property filter for edges too.
2025-02-16 13:35:49 +01:00
Matthias Koefferlein
a219576296
WIP: Region, Edges, EdgePairs and Texts filters can filter by property now, first implementation of Region property filter.
2025-02-16 00:08:35 +01:00
Matthias Koefferlein
e48c6f3660
Edges#each, Edges#each_merged, Region#each, Region#each_merged, Texts#each and EdgePairs#each now deliver objects with properties too.
2025-02-14 22:11:18 +01:00
Matthias Koefferlein
aad90d0c16
Fixed a name clash in PolygonNeighborhood unit tests
2025-02-05 00:02:04 +01:00
Matthias Koefferlein
c09184989f
Avoiding call ambiguities when creating Edges, Region, EdgePairs and Texts from arrays of objects with properties.
2025-02-04 23:59:04 +01:00
Matthias Koefferlein
1f44a951f4
Polygon neighborhood compound operation
2025-02-03 20:47:31 +01:00
Matthias Koefferlein
1bd1bb06ce
More support for objects with properties: RDB integration.
2025-02-02 17:00:31 +01:00
Matthias Koefferlein
a282a5d665
Some more tests for properties inside Edges, Regions
2025-01-29 02:42:16 +01:00
Matthias Koefferlein
375ac6364b
More support for properties inside Edges, Texts, EdgePairs. WIP
2025-01-29 01:59:00 +01:00
Matthias Koefferlein
dfc7d6bef4
Enhancing Python/Ruby API for better support with properties
2025-01-29 00:59:28 +01:00
Matthias Koefferlein
33b54f3f88
Merge branch 'master' into devel
2025-01-19 22:04:55 +01:00
Matthias Köfferlein
253270aaa3
Merge pull request #1973 from KLayout/feature/issue-1971
...
Feature/issue 1971
2025-01-17 10:10:19 +01:00
Matthias Köfferlein
b4dc9a6b1d
Merge pull request #1968 from KLayout/bugfix/issue-1967
...
Bugfix/issue 1967
2025-01-17 10:10:03 +01:00
Matthias Koefferlein
8bf93f0611
Added missing files
2025-01-16 20:50:51 +01:00
Matthias Koefferlein
063040695a
Preparing tests for GSI class properties
2025-01-16 20:40:42 +01:00
Matthias Koefferlein
7ab8da4bae
Added missing file
2025-01-04 23:16:34 +01:00
Matthias Koefferlein
73dc31244a
Merge branch 'master' into devel
2025-01-04 21:51:37 +01:00
Matthias Koefferlein
bccf68504f
Implemented a solution for #1963 (locking cells)
...
A cell can be locked using
cell.locked = true
and unlocked again using
cell.locked = false
Also, cell.is_locked? can be used to test the locked state.
In locked state writing shapes and instances is forbidden
and doing so would raise an exception.
Also, cells cannot be deleted when locked. However, Layout#clear
and Layout#_destroy are always available.
Cells can still be renamed, even if locked.
2025-01-04 21:44:11 +01:00
Matthias Koefferlein
2d5ddd794c
Merge branch 'master' of github.com:KLayout/klayout
2025-01-04 19:36:43 +01:00
Matthias Koefferlein
5d57cb5eed
Updating copyright to 2025
2025-01-04 19:32:33 +01:00
Matthias Koefferlein
c9da9dc6e0
Updating copyright to 2025
2025-01-04 19:28:56 +01:00
Matthias Koefferlein
826b811249
More generic object-with-properties GSI methods
2025-01-04 19:24:32 +01:00
Matthias Koefferlein
233d70d085
Transformation of objects with properties, GSI binding, bug fixing, tests
2025-01-01 22:49:50 +01:00
Matthias Koefferlein
8c935409ea
Added a test for net neighborhood, predicable order of results of edge neighborhood scanner.
2024-12-31 16:37:01 +01:00
Matthias Koefferlein
c112f78b1c
WIP: edge and edge pairs with properties, tests, conversion constructors, edge neighborhood tests with properties.
2024-12-30 23:47:34 +01:00
Matthias Koefferlein
75e4282f01
Introducing PolygonWithProperties etc. in gsi
2024-12-29 17:07:56 +01:00
Matthias Koefferlein
f2dc78f438
API enhanced for new properties ID scheme, updated doc and tests
2024-12-28 17:13:43 +01:00
Matthias Koefferlein
4beb8db15a
WIP: bug fixes, stability of tests
2024-12-26 21:45:28 +01:00
Matthias Koefferlein
5281397b17
Fixed some tests
2024-12-26 00:42:39 +01:00
Matthias Koefferlein
a7a4ff0cf2
Fixing RBA dbInstances tests
2024-12-25 23:54:58 +01:00
Matthias Koefferlein
1278ffeb77
WIP - refined tl::Variant::equal and less implementation, fixed tests
2024-12-25 17:36:29 +01:00
Matthias Koefferlein
28260a68b0
WIP
2024-12-24 15:39:27 +01:00
Matthias Koefferlein
f5fea29cc9
WIP: OASIS reader tests debugging.
2024-12-24 12:56:13 +01:00
Matthias Koefferlein
5e2f4eb243
Fixing bug #1955
...
Problem was caused by a leaking PolygonIteratorDelegate that locked the
DSS layout object. Solved by wrapping in PolygonIterator and
changing the interface such that PolygonIteratorDelegegate is no
longer useful.
2024-12-16 22:58:48 +01:00
Matthias Koefferlein
dd5214dc6e
Fixing issue #1942 (PythonStandalone Package stubs errors), adding defaults for Box#enlarge and Box#enlarged (bonus)
2024-12-02 22:01:51 +01:00
Matthias Koefferlein
e35aa97191
Added 'read_bytes' without options and 'write_bytes'. Added tests for write_bytes and for Ruby. Doc fixed.
2024-11-30 18:46:25 +01:00
Matthias Köfferlein
41383e4642
Merge pull request #1920 from rocallahan/readbytes
...
Add a Layout.read_bytes() method that reads a layout from a byte array
2024-11-30 17:47:03 +01:00
Matthias Köfferlein
ec21809cc3
Merge pull request #1916 from KLayout/maybe-pex-support
...
Some add-ons for potential application in the PEX context
2024-11-28 20:43:40 +01:00
Matthias Köfferlein
66d97bb5f1
Merge pull request #1928 from KLayout/feature/issue-1923
...
Feature/issue 1923
2024-11-28 20:43:01 +01:00
Matthias Köfferlein
1a5e8c9b36
Merge pull request #1927 from KLayout/bugfix/issue-1925
...
Fixed issue #1925 (MAGIC import fails)
2024-11-28 20:42:25 +01:00
Matthias Koefferlein
ce4dc08969
Robustness of tests against different hash implementations, documentation update
2024-11-26 23:15:28 +01:00
Matthias Koefferlein
0ce7fb18a9
Added test for Point/DPoint
2024-11-17 22:09:52 +01:00
Matthias Koefferlein
85caa4b397
Fixed issue #1925 (MAGIC import fails)
2024-11-17 21:42:29 +01:00
Matthias Koefferlein
0f438cdbd2
On same name, creating a RDB category would return the original one.
2024-11-13 18:26:06 +01:00
Matthias Koefferlein
fecb8a8c8a
RDB tests for Python too
2024-11-13 18:22:55 +01:00
Robert O'Callahan
db56b0293e
Add a Layout.read_bytes() method that reads a layout from a byte array in Python or Ruby.
...
This is much more convenient and a bit more efficient than writing the bytes
to a temporary file and reading that back in. It's useful when we have received
a layout over the network or embedded in some file.
This makes a copy of the bytes but there doesn't seem to be any way to avoid that
currently.
2024-11-05 03:15:40 +00:00
Matthias Koefferlein
dd0949867f
Some convenience features: transformations in EdgeNeighborhood, added Matrix transformation support for edge pairs.
2024-11-01 17:34:46 +01:00
Matthias Koefferlein
2629700566
RBA tests, reproducible order of edge events, all edges are reported - even those which do not have neighbors.
2024-10-31 23:43:27 +01:00
Matthias Koefferlein
3073c1917f
Some enhancements: internal merging, tests
2024-10-31 22:55:46 +01:00
Matthias Koefferlein
57e98d17ac
Fixed some Ruby tests - as RecursiveShapeIterator lifelime may be longer than expected, we need to explicitly destroy the iterator now to avoid layout locking.
2024-10-26 21:24:51 +02:00
Matthias Köfferlein
2d1658cbfa
Merge pull request #1906 from KLayout/issue-1899
...
Issue 1899
2024-10-20 16:50:25 +02:00
Matthias Köfferlein
6c82177dfa
Merge pull request #1883 from KLayout/issue-1869
...
Fixed issue #1869 by adding a new option, -to or --top-output to strmxor
2024-10-20 13:22:12 +02:00
Matthias Koefferlein
14fa7a3760
Adding tests
2024-10-19 20:35:47 +02:00
Matthias Koefferlein
b4f38138e8
Updating test data
2024-10-19 16:52:17 +02:00
Matthias Koefferlein
7b7e98d49a
Fixed issue #1877 (rounding introduces DRC error in LEF/DEF via)
2024-10-12 21:44:49 +02:00
Matthias Koefferlein
4c33032f93
Merge branch 'better-not-break'
2024-09-22 20:08:10 +02:00
Matthias Köfferlein
ff0a2b8ab7
Merge pull request #1850 from KLayout/wip
...
Wip
2024-09-21 20:33:21 +02:00
Matthias Koefferlein
1e6b983942
Updating test data
2024-09-18 23:50:49 +02:00
Matthias Koefferlein
9bb9fc2a50
Added test data
2024-09-18 23:24:03 +02:00
Matthias Köfferlein
53b7c985f0
Merge pull request #1849 from KLayout/feature/issue-1836
...
Implemented solution for issue #1836 (Allow the usage of Cell.shapes(…
2024-09-08 22:24:40 +02:00
Matthias Koefferlein
680874c8e3
More variants of Layout#properties_id + added Layout#properties_hash and Layout#properties_array. Clarification of documentation.
2024-09-08 19:45:10 +02:00
Matthias Koefferlein
68d15e01af
DRC: more variants for layer#insert - labels, DBU-unit types
2024-09-08 19:16:40 +02:00
Matthias Koefferlein
bf965a7806
Implemented solution for issue #1836 (Allow the usage of Cell.shapes(LayerInfo(...)))
...
- For Cell#shapes, LayerInfo is an accepted argument now
- If the layer does not exist, it is created (non-const version)
or an error is raised (const version)
- Cell#clear also accepts a LayerInfo object
- Layout#clear and Layout#delete_layer also accept
a LayerInfo parameter
Rationale for supporting the clear and delete_layer methods:
These cases do nothing if the layer does not exist, so there
is a benefit of using them: it is not required to check first
if the layer exists.
2024-09-07 20:29:43 +02:00
Matthias Koefferlein
bc78f4a0e9
Added test.
2024-09-01 21:26:44 +02:00
Matthias Köfferlein
857fbc873c
Merge pull request #1824 from KLayout/bugfix/issue-1823
...
Fixed bug #1823 (select_all not working)
2024-08-10 13:33:48 +02:00
Matthias Köfferlein
bccc421f3d
Merge pull request #1821 from KLayout/feature/issue-1816
...
Feature/issue 1816
2024-08-10 13:33:25 +02:00
Matthias Koefferlein
3e0d0ad444
Added tests, fixed others
2024-08-09 17:20:40 +02:00
Matthias Koefferlein
33a3a15791
Bugfix: 'netter' function in DRC wasn't working as described - it raised an error
2024-08-07 00:48:19 +02:00
Matthias Koefferlein
fd1dc842e0
Generic GSI methods #_to_const_object (for testing) and #_const_cast. Fixed a class initialization issue - sub classes should not be registered by name at top level in Expressions
2024-08-07 00:11:48 +02:00
Matthias Koefferlein
82b3030352
const versions of Layout#cell and Layout#top_cell(s)
2024-08-06 18:19:31 +02:00
Matthias Koefferlein
3068dd2798
Allowing RBA::Net objects for DRCLayer#nets as well
2024-08-06 00:14:02 +02:00
Matthias Koefferlein
35bd336d3a
Added test for PCellParameterState
2024-08-04 23:36:44 +02:00
Matthias Koefferlein
b27bcd5c16
Added tests for GSI bindings of new EdgePairs functions
2024-08-04 22:26:21 +02:00
Matthias Koefferlein
35219469d6
Debugging and first tests for DRC
2024-08-04 21:03:19 +02:00
Matthias Köfferlein
8ab398dc58
Merge pull request #1811 from KLayout/wip
...
Wip
2024-07-30 18:59:09 +02:00
Matthias Köfferlein
ba899b391c
Merge pull request #1808 from KLayout/bugfix/issue-1784
...
Proposal for fixing issue #1784 (Spice throws error at midline semico…
2024-07-30 18:58:28 +02:00
Matthias Köfferlein
f4e4ce99b8
Merge pull request #1803 from KLayout/feature/issue-1790
...
Implemented a solution for issue #1790 (Support for recursive PCell i…
2024-07-30 18:57:34 +02:00
Matthias Koefferlein
7978a2bb1d
Proposal for fixing issue #1784 (Spice throws error at midline semicolon comments)
2024-07-28 22:24:15 +02:00
Matthias Koefferlein
c3fdc6e1bc
Implemented a solution for issue #1790 (Support for recursive PCell instances)
...
This also fixes some other issues, like "display_text_impl" being
called when a PCell is run with the debugger open.
2024-07-27 14:00:54 +02:00
Matthias Köfferlein
cfa0dacd4f
Merge pull request #1800 from KLayout/bugfix/issue-1799
...
Fixed issue #1799 (Can't set cell properties by script)
2024-07-27 11:48:01 +02:00
Matthias Koefferlein
d6ee473d72
Fixed issue #1799 (Can't set cell properties by script)
2024-07-25 22:36:46 +02:00
Matthias Koefferlein
58d489b39a
Added Region#being_shapes_rec and Region#begin_merged_shapes_rec, mainly for being able to retrieve shapes with properties from Region#nets
2024-07-25 19:34:08 +02:00
Matthias Koefferlein
4cd8772e70
Convenience methods Shape#properties, Layout#properties, Cell#properties, Instance#properties
2024-07-24 22:29:09 +02:00
Matthias Koefferlein
6baabc30bb
Added Netlist#top_circuit and Netlist#top_circuits convenience methods
2024-07-24 20:57:17 +02:00
Matthias Koefferlein
16abeb2bdc
Merge branch 'master' into wip
2024-07-22 21:34:12 +02:00
Matthias Koefferlein
9600cd818c
Merge branch 'master' into bugfix/issue-1793
2024-07-21 08:11:37 +02:00
Matthias Koefferlein
00aeeade68
Updating antenna DRC golden data - needed as the precision of the double-typed tl::Variant output was increased
2024-07-20 21:02:45 +02:00
Matthias Koefferlein
ee07e4b3b9
Added smoke test for Layout#break_polygons and Shapes#break_polygons to RBA
2024-07-17 23:25:20 +02:00
Matthias Koefferlein
1ed69e9b46
Added test
2024-07-17 23:09:04 +02:00
Matthias Koefferlein
072edecb1a
Add-on making re-registration of PCells a valid feature.
2024-07-13 18:55:17 +02:00
Matthias Koefferlein
0df6339f4e
Fixing issue #1782
...
This patch establishes "nan", "inf" and "-inf" as
valid values for tl::Variant, so corresponding
PCell parameters can be serialized and are
properly managed.
2024-07-13 18:07:45 +02:00
Matthias Köfferlein
02506495c2
Merge pull request #1777 from KLayout/bugfix/issue-1771
...
Bugfix/issue 1771
2024-07-06 14:49:45 +02:00
Matthias Koefferlein
dbadeb47fe
Added test
2024-07-06 00:29:34 +02:00
Matthias Koefferlein
769327cdab
Fixing issue #1774 (providing klayout.__version__ also for built-in module)
2024-07-05 17:50:38 +02:00
Matthias Koefferlein
4a2d1be8bf
Backward compatibility mode (with fix): size now also accepts sizing mode as string (for supporting GF180 DRC decks properly)
2024-07-03 22:59:31 +02:00
Matthias Koefferlein
809f8a8256
Additional checks to cover 'size' syntax variants for DRC
2024-07-03 22:43:23 +02:00
Matthias Koefferlein
264f1e0586
Stepwise sizing: had to rename options
...
"inside" and "outside" was already taken. Now it is called
"size_inside" and "size_outside".
2024-07-02 21:10:11 +02:00