Klayout

Latest version: v0.29.12

Safety actively analyzes 714875 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 3 of 24

0.29.0

* Enhancement: %GITHUB%/issues/1662 Strong default grids
* Enhancement: %GITHUB%/issues/1656 Display-->Goto Position dialog should accept + as well as - for number prefixes
* Bugfix: %GITHUB%/issues/1651 Errors when adding polygons with 4 points
* Bugfix: %GITHUB%/issues/1644 DRC: some issues with edge layers
* Bugfix: %GITHUB%/issues/1643 DRC: Feeding the same layer to two-layer operations in deep mode does not render the desired result
* Enhancement: %GITHUB%/issues/1638 let klayout marker browser read strmxor .. xor.gds.gz, xor.oas result files
* Enhancement: %GITHUB%/issues/1637 XOR optimization for prBoundary layer
* Bugfix: %GITHUB%/issues/1632 rdb python/ruby module: modifing items not possible as they are const
* Enhancement: %GITHUB%/issues/1598 LVS - Support for Soft Connections
* Bugfix: %GITHUB%/issues/1586 Refactoring transformation conversion functions for complex transformation
* Enhancement: %GITHUB%/issues/1583 Add possibility to customize main window title
* Enhancement: %GITHUB%/issues/1513 Update Qt version for Qt bindings to 5.12.12 and 6.2.1
* Bugfix: %GITHUB%/issues/1356 Instance Property form: Array Instance col/row would be more intuitive then the current row/col
* Enhancement: New ruler type "auto measure along edge"
* Enhancement: Trigger ruler measurement on mouse hovering transiently
* Enhancement: Min and max value bounds for PCell parameters in editor
The condition is not strictly enforced - for example it is not checked when
changing parameters programmatically. For that, use "coerce_parameters".
Still, this feature is an editing aid.
* Bugfix: Pixel garbage in color selector button with "Auto" color selected
* Bugfix: DRC/LVS - connect_explicit did not accept an array of nets as single argument
* Bugfix: 'edge outside polygon' now consistently ignores the border of the polygon
* Bugfix: Warning level was ignored for some warnings in LEF/DEF reader
* Bugfix: Netlist reader: anonymous circuits are not checked for known parameters
* Enhancement: LVS - Supporting remote must-connect connections
So far, must-connect connections had to be made one level up in the hierarchy
or promoted further using labels and such. Now, must-connect connections
can be made at any point up in the hierarchy.
* Bugfix: LVS - do not waste too much time analyzing failed matches
* Enhancement: LVS - LVS: Consider net names identical that differ
in signal type suffix only - e.g. 'NET:I' is identical to 'NET'
* Enhancement: OASIS reader will produce layers that are listed in layer table
but empty. Previously, empty layers were never created, even if listed in
the layer table.
* Enhancement: Reading from HTTP streams and pipes now supports automatic .gz uncompression
* Enhancement: New DRC Features
- "edges" method allows selecting convext/concave/step edges
- Interaction count for edge/edge edge/polygon "interacting"
- Improved handling of dots (degenerated edges) - these are now
passed through the edge/edge and edge/polygon booleans and
participate in "interact". This enables selecting corners and
using them to select edges.
* Enhancement: New RBA/pya Features
- Main window title: MainWindowtitle (property)
- MainWindowsynchronous (getter added)
- LayoutViewis_dirty?
- Triangulation: Regiondelaunay
- Quality rasterizer: Regionrasterize
- Generic edge and polygon filters and operators support hierarchical processing
with Python or Ruby callbacks: classes EdgePairFilter, EdgePairOperator,
EdgePairToPolygonOperator, EdgePairToEdgeOperator, EdgeFilter, EdgeOperator,
EdgeToPolygonOperator, EdgeToEdgePairOperator, PolygonFilter, PolygonOperator
PolygonToEdgeOperator, PolygonToEdgePairOperator, TextFilter, TextOperator,
TextToPolygonOperator
Methods: EdgePairsfilter, EdgePairsfiltered, EdgePairsprocess, EdgePairsprocessed,
same for Edges, Regions and Texts
- Polygonsplit, Polygonbreak, same for DPolygon, SimplePolygon, DSimplePolygon
- Keyword arguments for Python, Ruby and Expressions
- You can now also use "klayout" package inside the application (same code
for Python module and application) - i.e. "import klayout.db"
- Synonyms: connect/disconnect for events for better compatibility with PyQt5

0.28.17

* Enhancement: %GITHUB%/issues/1626 Technology specific grids

0.28.16

* Bugfix: %GITHUB%/issues/1623 Package installation with "-y" from command line does not work for URL or file
* Bugfix: %GITHUB%/issues/1619 Segfault on Fedora-39 with Python 3.12.1
* Bugfix: %GITHUB%/issues/1618 Leaking Python reference causing trouble with iterators
* Bugfix: %GITHUB%/issues/1616 DRC doc typo
* Bugfix: %GITHUB%/issues/1614 LEF/DEF .map should not map boundaries and fill to ALL purpose
* Bugfix: %GITHUB%/issues/1609 Cell.read doesn't read LayoutMetaInfo
* Bugfix: %GITHUB%/issues/1608 CustomResistorExtraction: show faulty device in GUI
* Bugfix: %GITHUB%/issues/1603 Weird parameter dialog resizing when hiding / showing many parameters at once with callback_impl
* Bugfix: %GITHUB%/issues/1602 [Qt6] Cannot normally quit the main application window
* Bugfix: %GITHUB%/issues/1594 "connect" (in flat mode) + multiple top cells give an error message
* Bugfix: %GITHUB%/issues/1592 DXF file parsing error, about spline curve
* Enhancement: DRC enhancements related to touching edges
- New DRC function switches: "without_touching_corners", "without_touching_edges"
to skip width and space errors at kissing corners and touching-edge configurations
- Kissing corners are now detected also in non-collinear edge configurations
* Bugfix: fixed rendering of color selection buttons on High-DPI screens
* Bugfix: cross-hair cursor should not use selection default line width and styles
* Enhancement: OASIS reader errors out on broken OASIS with duplicate CELLNAMEs

0.28.15

* Bugfix: %GITHUB%/issues/1578 Missing strm2*.exe in the Windows portable binary package (*.zip)
* Enhancement: %GITHUB%/issues/1569 Make "toggle (selected) layer" key-bindable
- Plus feature: "visibility follows selection"
* Bugfix: %GITHUB%/issues/1565 quit() raises an error in KLayout Python Console
* Bugfix: %GITHUB%/issues/1556 Cannot shrink Marker Browser window
* Bugfix: %GITHUB%/issues/1539 Misleading description in 'Flatten Cell'
* Enhancement: Supporting UCRT runtime option in MSYS2 deployment
* Bugfix: DRC, LVS and other higher-level functionality now supported on 64 bit coordinate builds
* Bugfix: initial tip dialogs appear on same screen than application
* New binaries:
- Windows binaries now include UCRT (64 bit) and 64 bit coordinate versions
- RockyLinux 9 RPMs included

0.28.14

* Bugfix: %GITHUB%/issues/1563 Duplicated Tabs in the Macro Development Tool
* Bugfix: %GITHUB%/issues/1560 git+https package installation on windows fails
* Bugfix: %GITHUB%/issues/1559 (partial) Move function not respecting some diagonals
* Bugfix: %GITHUB%/issues/1549 Layout.error_layer now available in recursive shape search
* Bugfix: %GITHUB%/issues/1542 KLayout crashes on exit
* Enhancement: %GITHUB%/issues/1535 Support pathlib.Path in Python API
Implicitly converts objects to strings using "str(object)" (Python) or "object.to_s" (Ruby).
* Bugfix: %GITHUB%/issues/1533 KLayout crashing with two consecutive calls of the same LayoutView::show_layout command
* Bugfix: %GITHUB%/issues/1531 When symlinking a .def to a target without .def suffix, file can't be loaded
* Enhancement: %GITHUB%/issues/1530 polygon from 2 size tuple points
The effect of this feature is pretty basic: tuples or lists are used as constructor
arguments for implicitly creating an object in place of them. Hence, "(x,y)" can be
used instead of a vector or a point. In some cases, this leads to ambiguities and
the implicit resolution will fail however.
Specifically a list of size-2 tuples can be passed to the "points" arguments of
Polygon and Path.
* Enhancement: %GITHUB%/issues/1528 LEF: Implement LEF58_WIDTHTABLE
* Enhancement: new methods (D)Edgeeuclidian_distance and (D)EdgePairdistance
* Bugfix: package download dialog: mute an assertion, less questions for re-running macros
* Enhancement: reading $KLAYOUT_GIT_PROXY_HTTP for proxy URL in Git downloads
* Bugfix: cheats were not enabled for edges and (implicit) polygon merges such as for "sized"
* Bugfix: more consistent behavior for Marker Browser / Scan Shapes
- Scan Shapes Hierarchical will scan from current cell, not all cells
- Marker browser shows markers propertly also in descended mode
- Marker database description of shown in selection box
* Bugfix: Search feature in macro editor does not jump back to first position
* Bugfix: "Trace All Nets"
- Asks for stack now in case of multiple stacks (previously: took that from "Trace Nets" dialog)
- Skips symbols which are not used (previously: extracted them as disconnected layers)

0.28.13

* Bugfix: %GITHUB%/issues/1534 Layout::dup does not copy properties
* Bugfix: %GITHUB%/issues/1533 KLayout crashing with two consecutive calls of the same LayoutView::show_layout command
* Bugfix: %GITHUB%/issues/1532 DRC checks give incorrect results in deep mode with magnified instances
* Enhancement: %GITHUB%/issues/1527 Marker Database Browser: add context menu to Info widget
* Bugfix: %GITHUB%/issues/1522 Changing ruler/annotation from script weirdly interferes with pya.Application.commit_config
* Enhancement: %GITHUB%/issues/1514 Package manager: Support for Git-hosted packages
* Bugfix: %GITHUB%/issues/1512 "get_image" of LayoutView should also work on inactive views
* Bugfix: %GITHUB%/issues/1511 Typo
* Enhancement: %GITHUB%/issues/1510 Cross hair cursor
* Bugfix: %GITHUB%/issues/1503 Import LEF/DEF - LEF files given in list are ignored for DEF import
* Bugfix: %GITHUB%/issues/1499 strm2oas: support LAYER <layername> TYPE OVERLAP ; for L-shaped abstracts
* Bugfix: %GITHUB%/issues/1486 Invalid error "Some macros are configured to run automatically" when changing reader options
* Bugfix: %GITHUB%/issues/1485 Incorrectly set output cell name if using DRC::cell
* Bugfix: %GITHUB%/issues/1482 Strict mode oasis should write the S_CELL_OFFSET into the CELLNAME table
* Bugfix: %GITHUB%/issues/885 Must-connect checks in LVS
* Bugfix: -without-qt builds did not include DRC or LVS
* Enhancement: Added Layouterror_layer
* Enhancement: Option -k for copying log to a file
* Enhancement: Editor option to control snapping to grid while moving
This controls whether objects are snapped to grid (on) or moved in grid
increments (off)

Page 3 of 24

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.