2023-03-16 21:24:01 +01:00
|
|
|
0.28.6 (2023-03-16):
|
|
|
|
|
* Enhancement: %GITHUB%/issues/1249 Include expanded/collapsed state of layer properties into session
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1265 Issues installing klayout with pip on macOS related to libpng
|
|
|
|
|
* Enhancement: %GITHUB%/issues/1271 __version__ attribute in Python modules available now
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1287 Goto Position (CRTL+G) is not showing the origin (0,0)
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1291 Better compatibility of PyQt5 and KLayout (i.e. debugger does not crash)
|
|
|
|
|
* Enhancement: %GITHUB%/issues/1294 Persisting layer properties in sessions
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1302 Select filter is not applied in partial mode
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1304 Spice netlist reader: should read "M" terminals in DGS order
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1309 Incomplete fill (polygon rasterizer issue)
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1315 Cannot export layers from Marker Browser in viewer mode
|
|
|
|
|
* Bugfix/enhancement: some LEF/DEF parser issues solved with the help of a new complete sample case
|
|
|
|
|
* Bugfix: Avoid a segfault while editing a ruler. This happens is both a selection and a transient selection is active.
|
|
|
|
|
* Enhancement: Some enhancements for image editing (e.g. selection remains after moving handles)
|
|
|
|
|
* Enhancement: klayout.db Python module is auto-loaded for providing stream readers
|
|
|
|
|
* Enhancement: Spice reader now supports parametric subcircuits
|
|
|
|
|
* Enhancement: Build issue fixed for Qt 5.15.2 bindings
|
|
|
|
|
* Enhancement: Including Python's matplotlib into Windows binaries
|
|
|
|
|
* Bugfix: Reading fillcell-generated inputs again into DRC deck now also works for deep mode
|
|
|
|
|
|
2023-02-04 22:40:43 +01:00
|
|
|
0.28.5 (2023-02-05):
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1275 Region.sized after .smooth returns empty region
|
|
|
|
|
|
2023-02-02 00:30:59 +01:00
|
|
|
0.28.4 (2023-02-02):
|
2023-01-29 17:41:04 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/1267 Editor options not visible initially on layout view
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1260 Internal error on package install
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1259 Qt-less LayoutView creates non-editable Layout initially even if editing is requested?
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1253 Library browser does not always display all libraries
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1237 Python error messages should include more information
|
2023-01-29 18:46:33 +01:00
|
|
|
* Bugfix: Technology indicator is cleared after last view is closed
|
|
|
|
|
* Bugfix: Partial mode did not support Ctrl/Shift to confine movement direction
|
|
|
|
|
* Bugfix: Avoid very long error messages in DRC/LVS scripts (listing all details of the engine)
|
2023-01-29 17:41:04 +01:00
|
|
|
* Bugfix: "clone panel" did not copy custom layer stipples
|
|
|
|
|
* Bugfix: Generic "drc" sizing has to use twice the size range to catch all possible interactions
|
|
|
|
|
* Bugfix: DRC check (e.g. "sep") against second layer of "raw" type did not work in deep mode
|
|
|
|
|
* Bugfix: DRC grid check markers are now exactly aligned with vertexes they are supposed to mark
|
2023-02-02 00:30:59 +01:00
|
|
|
* Bugfix: DRC interact of polygons with texts was not working properly
|
|
|
|
|
* Bugfix: LVS: same_nets with two arguments was not working as described
|
2023-02-02 18:48:10 +01:00
|
|
|
* Bugfix: py.typed included in Python wheel now.
|
2023-01-29 17:41:04 +01:00
|
|
|
* Enhancement: New feature: "Screenshot to clipboard"
|
|
|
|
|
* Enhancement: Introducing properties in DRC and net tagging by properties
|
|
|
|
|
- This enables implementation of "connected" or "unconnected" mode checks
|
|
|
|
|
- This is the first release, so the feature is somewhat experimental
|
|
|
|
|
- For details check the documentation: look for "DRC Runsets" and browse to "DRC and user properties"
|
|
|
|
|
|
2023-01-12 09:14:40 +01:00
|
|
|
0.28.3 (2023-01-12):
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1247 Layer stipples not updated after editing custom stipples with high-DPI displays
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1245 Connectivity not preserved when loading/saving technology
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1242 KLayout 0.28.2 crashes when registering a plugin if a layout exists
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1240 Layer is not activated from layer properties file on first creation
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1238 Macro IDE: breakpoints not effective on Windows
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1234 "Clone view": layer list is empty
|
|
|
|
|
* Enhancement: %GITHUB%/issues/1228 Add option to have Show parameter names on by default
|
|
|
|
|
* Enhancement: Improved performance of layer list with many layers
|
|
|
|
|
* Bugfix: Restored ability to build with Python 2.7
|
|
|
|
|
* Enhancement: Compatibility with Qt 6.4.1
|
|
|
|
|
|
2022-12-22 23:17:08 +01:00
|
|
|
0.28.2 (2022-12-22):
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1230 LVS browser crashes
|
|
|
|
|
|
2022-12-21 07:21:16 +01:00
|
|
|
0.28.1 (2022-12-21):
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1225 XML error prevents generation of help index
|
|
|
|
|
* Bugfix: Python module now has py.typed
|
|
|
|
|
* Bugfix: Some segfaults fixed on MacOS, other Linux systems
|
|
|
|
|
* Bugfix: dropped Python modules from RPM and DEB packages as this creates conflicts with pip-installed modules
|
|
|
|
|
* Bugfix: OASIS reader error with CBLOCK byte counts larger than 4G
|
|
|
|
|
|
2022-12-09 13:35:47 +01:00
|
|
|
0.28 (2022-12-09):
|
2022-12-07 00:51:03 +01:00
|
|
|
Changes (list may not be complete):
|
|
|
|
|
* Bugfix: %GITHUB%/issues/989 "Layout#convert_pcell_to_static" does not handle"defunct" cells
|
|
|
|
|
* Bugfix: %GITHUB%/issues/991 Basic library not available in Python module
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1059 Cleanup of PCell orphans after re-evaluation on load
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1081 Using a layer properties file from recent list without layout loaded crashes KLayout
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1138 Provide a way to suppress or redirect log output or disable warnings, specifically from file readers, in Python module
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1178 technology-data xml results in SEGV
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1190 General compatibility issue of Edges#extended/extended_* with deep mode
|
2022-12-09 13:35:47 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/1216 DRC internal error on "moved"
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1214 LEF via parser error
|
|
|
|
|
* Enhancement: %GITHUB%/issues/1056 X2 net names
|
|
|
|
|
* Enhancement: %GITHUB%/issues/1052 PDF documentation
|
|
|
|
|
* Enhancement: %GITHUB%/issues/1053 LEF/DEF enhancements
|
|
|
|
|
* Enhancement: Qt6 enabled
|
2022-12-07 00:51:03 +01:00
|
|
|
* Enhancement: KLayout paths
|
|
|
|
|
- $KLAYOUT_HOME can now be empty string (no home folder used)
|
|
|
|
|
- $KLAYOUT_PATH can now be empty string (no further and implicit search paths)
|
|
|
|
|
* Enhancement: Python typehints
|
|
|
|
|
- Python include files are generated for Python module
|
|
|
|
|
* Enhancement: Properties dialog now features object list on left side (select and change)
|
|
|
|
|
* Enhancement: Compute area and perimeter from selection (Edit/Selection/Area and Perimeter)
|
|
|
|
|
* Enhancement: Callbacks for PCells
|
|
|
|
|
- Allow dynamic change of some attributes (visibility, enabled etc.)
|
|
|
|
|
- By implementing "callback_impl" in PCellDeclarationHelper subclasses
|
|
|
|
|
* Enhancement: Report browser
|
|
|
|
|
- Shape user properties are turned into RDB values
|
|
|
|
|
- Scanning of text objects
|
|
|
|
|
* Enhancement: Support for high-DPI modes (scale factor 200%)
|
|
|
|
|
- "Highres" option to fully exploit resolution, normally follows screen scaling
|
|
|
|
|
* Enhancement: Multiple tech stacks for net tracer per technology
|
|
|
|
|
* Enhancement: New rulers
|
|
|
|
|
- Angle
|
|
|
|
|
- Radius (%GITHUB%/issues/906)
|
|
|
|
|
- Multi-segment
|
|
|
|
|
* Enhancement: LVS
|
|
|
|
|
- Generates a log view which may have useful hints
|
|
|
|
|
- Schematic and extracted netlists are available as separate tabs for LVS view
|
|
|
|
|
* Enhancement: DRC
|
|
|
|
|
- Antenna DRC measured values output on edge pair properties and into report file
|
|
|
|
|
- inside, not_inside, outside and not_outside also for edge/edge and edge/polygon layers
|
|
|
|
|
- split_inside, split_outside for edge/edge and edge/polygon layers
|
|
|
|
|
- andnot (edge/edge)
|
|
|
|
|
- inside_outside_part (edge/polygon)
|
|
|
|
|
- angle-class selectors (multiples or 90 or 45 degree)
|
|
|
|
|
- performance enhancements
|
|
|
|
|
- in_and_out (edge and polygon layers)
|
|
|
|
|
* Enhancement: "data:" URL schemes to pass direct base-64 encoded data
|
|
|
|
|
* Enhancement: "Close all except", "left of", "right of" etc. in layout tabs and macro editor tabs
|
|
|
|
|
* Enhancmennt: Drop-down list to select tab in layout views
|
|
|
|
|
* Enhancement: Setting for disabling "Save needed" dialog box
|
|
|
|
|
* Enhancement: File details are shown (dump of file header) for unknown file formats
|
|
|
|
|
* Enhancement: NoQt option for LayoutView
|
|
|
|
|
- PixelBuffer object instead of QImage
|
|
|
|
|
- LayoutView can be build without Qt
|
|
|
|
|
- Functions exist to emulate mouse events
|
|
|
|
|
- Included in standalone Python module
|
|
|
|
|
- Allows implementation of KLayout backend in web server
|
|
|
|
|
* Enhancement: New command "-rr" (like -r but keeps application running, for UI macros)
|
|
|
|
|
* Enhancement: PCell errors are shown on a special error layer which is visible together with guiding shapes
|
|
|
|
|
* Enhancement: custom queries support micron-unit attributes (dbbox, path_dtrans etc.)
|
|
|
|
|
* Enhancement: custom queries highlight results of queries when selected
|
|
|
|
|
* Enhancement: scale and snap improvements (edge pair support, properties maintained, arrays not always flattened)
|
|
|
|
|
* Enhancement: auto-run macros can not be given a priority in which they are executed
|
|
|
|
|
* Enhancement: D25 module overhauled
|
|
|
|
|
- Uses a DRC subset to generate layers
|
|
|
|
|
- Allows booleans and specific color assignments
|
|
|
|
|
- Supports edges and edge pairs (will build walls)
|
|
|
|
|
- Not backward compatible!
|
|
|
|
|
* Python/Ruby API:
|
|
|
|
|
- DText/Text: bbox, alignment enums
|
|
|
|
|
- Polygon#size with vector arguments
|
|
|
|
|
- DBox/Box#world
|
|
|
|
|
- Layout#unique_cell_name
|
|
|
|
|
- RecursiveShapeIterator#each, RecursiveInstanceIterator#each
|
|
|
|
|
- Layout#clip with DBox and Cell arguments
|
|
|
|
|
- Better automatic conversion of enum to int and vice versa
|
|
|
|
|
- CellInstArray constructor with Cell argument
|
|
|
|
|
- AbstractMenu#insert_menu, #clear_menu
|
|
|
|
|
- ActionBase#icon=, #on_menu_opening, #on_triggered
|
|
|
|
|
- CellMapping convinience methods
|
|
|
|
|
- Cell#read for easy importing of a layout into a cell + subtree
|
|
|
|
|
- LayerMap#map and #mmap: logical layer is optional now (needed to be incremental)
|
|
|
|
|
- Shapes#cell and #layout
|
|
|
|
|
- Edges#andnot, #split_interacting, #inside, #not_inside, #outside, #not_outside and related (for Region and Edges arguments)
|
|
|
|
|
- GenericDeviceExtractor#define_terminal convenience methods
|
|
|
|
|
- Box/DBox square and rectangle convenience constructor
|
|
|
|
|
- Box#enlarge convenience isotropic variant
|
|
|
|
|
- Region#in_and_out, Edges#in_and_out
|
2022-12-13 21:14:39 +01:00
|
|
|
- New class NetTracerConnectivity introduced for multi-stack support in NetTracerTechnology, substitutes connectivity part NetTracerTechnology
|
2020-04-05 14:58:30 +02:00
|
|
|
|
2022-12-07 00:51:03 +01:00
|
|
|
0.27.13 (2022-11-30):
|
|
|
|
|
* Bugfixes:
|
|
|
|
|
- selection did not work in non-editable mode
|
|
|
|
|
- partial selection did not work for guiding shapes
|
|
|
|
|
- compile issue: NDEBUG is not usable after ruby.h
|
|
|
|
|
|
|
|
|
|
0.27.12 (2022-11-01):
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1173 DXF SPLINE implementation not compatible with ezdxf
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1167 delete_cells slow in some cases
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1164 Deleting cells: 'basic_string: construction from null is not valid'
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1145 Crash when clearing a Shapes container by script while a shape is selected
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1144 Copy layer not choosing the right "new" target layer sometimes
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1143 DBU not taken from technology by default
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1097 Change oasis writer defaults to strict + cblocks, discourage the usage of oas.gz
|
|
|
|
|
* Bugfix: Incorrect behavior of some deep-mode DRC functions
|
|
|
|
|
- deep edges "and" with Region: incorrect behavior if region is empty or non-deep
|
|
|
|
|
- deep edges "inside_part" with Region: incorrect behavior if region is empty or non-deep
|
|
|
|
|
- deep edges "outside_part" with Region: incorrect behavior if region is empty or non-deep
|
|
|
|
|
* Enhancement: Python include files are now provided for the Python package. This will add type information to the methods.
|
|
|
|
|
|
|
|
|
|
0.27.11 (2022-08-10):
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1098 Normalize zero dimension when generating regular array instance
|
|
|
|
|
* Enhancement: %GITHUB%/issues/1103 Add setting to disable Save Needed dialog box
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1106 "move by" does not move instances from partial selection
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1111 GenericDeviceExtractor#define_opt_layer not working
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1114 MSYS2 compatibility with latest revision (based on gcc 12.1)
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1126 Internal error on DRC operation
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1135 LVS mismatch on parallel devices and issue on ambiguity resolution
|
|
|
|
|
* Enhancement: Support for Python 3.11
|
|
|
|
|
* Enhancement: L2N and LVSDB readers made compatible with potential future extensions
|
|
|
|
|
* Enhancement: DRC Antenna check now can be given a text layer which receives output describing the measured and computed values
|
|
|
|
|
* Bugfix: *= method (e.g. Point, DPoint) properly listed in help and reflection API
|
|
|
|
|
* Bugfixes: Fixed a number of potential segfaults due to memory corruption found during master branch refactoring
|
|
|
|
|
|
|
|
|
|
0.27.10 (2022-06-04):
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1081 Using a layer properties file from recent list without layout loaded crashes KLayout
|
|
|
|
|
* Enhancement: %GITHUB%/issues/1079 PCell update: Library#refresh should call coerce_parameters_impl
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1075 Edit layer specification doesn't work well with PCells
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1071 Issues with GDS text format and "Save As"
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1068 Circle handle not shown sometimes
|
|
|
|
|
* Bugfixes: two potential segfaults fixed due to early delete of LayoutView and access to non-initialized memory
|
2022-01-21 18:33:26 +01:00
|
|
|
|
2022-04-24 13:39:50 +02:00
|
|
|
0.27.9 (2022-04-23):
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1008 Don't optimize away points on path edit
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1011 DRC in deep mode highlights erroneous width violation with text
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1012 Warning requested if LEF/DEF map file does not capture certain layers
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1013 OASIS writer bug with certain irregular arrays
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1017 DXF export: better handling of PCB zone fills
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1021 LVS unexpectedly failing
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1029 Problem with Qt binding
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1031 Buddy tools + OASIS: invalid warning about unexpected strict mode
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1040 pip install klayout doesn't seem to work on M1 MacBookPro
|
|
|
|
|
* Bugfix: %GITHUB%/issues/1054 Qt binding: crash due to Python allocation-while-deallocating
|
|
|
|
|
* Bugfix: Ctrl+F will always enter search box in Macro IDE now
|
|
|
|
|
* Bugfix: LEF/DEF reader options - could not clear suffix or set datatype to none
|
|
|
|
|
* Bugfix: netlist/LVS result browser - do not clip texts, provide texts as tool tips as well for inspection
|
|
|
|
|
* Bugfix: the library selected box listed technology-specific libraries even if no technology was selected
|
|
|
|
|
* Bugfixes and enhancements for the LEF/DEF reader
|
|
|
|
|
Includes %GITHUB%/issues/1050, %GITHUB%/issues/1065 and %GITHUB%/issues/1047
|
|
|
|
|
plus a number of standard compatibility issues. Bugfixes and enhancements for the
|
|
|
|
|
strm2xyz buddy tool's LEF/DEF reader implementations.
|
|
|
|
|
* Enhancement: %GITHUB%/issues/1057 Include PCell update in Library#refresh
|
|
|
|
|
* Enhancement: %GITHUB%/issues/1058 Backspace to delete last point from polygon or path
|
|
|
|
|
* Enhancement: Split gates option for LVS (new keyword is "split_gates") - see documentation for details
|
|
|
|
|
* Enhancement: generate labels for PCB X2 net names
|
|
|
|
|
* Enhancement: PCell errors are now shown on a separate layer (formerly only if the PCell featured at least one layer-type parameter)
|
|
|
|
|
This layer is available with the same style and configuration than the guiding shape layer.
|
|
|
|
|
|
|
|
|
|
0.27.8 (2022-02-13):
|
|
|
|
|
* Bugfix: %GITHUB%/issues/971 Double compare fails in LVS
|
|
|
|
|
* Bugfix: %GITHUB%/issues/972 CIF writer generates unreadable file with invalid cell or layer names
|
|
|
|
|
* Bugfix: %GITHUB%/issues/973 Enhanced timeout in package manager on large file download
|
|
|
|
|
* Bugfix: %GITHUB%/issues/979 Backup file generation fails with relative paths
|
|
|
|
|
* Bugfix: %GITHUB%/issues/982 Heal option for tiled XOR
|
|
|
|
|
* Bugfix: %GITHUB%/issues/983 Bug changing PCell parameters of multiple cell instance
|
|
|
|
|
* Bugfix: %GITHUB%/issues/984 Crash in debug mode when placing a "slow cell"
|
|
|
|
|
* Bugfix: %GITHUB%/issues/994 Loss of selection when clicking at wrong position
|
|
|
|
|
To make this problem less annoying, the capture range was increased when
|
|
|
|
|
clicking at already selected items for "Move".
|
|
|
|
|
* Bugfix: %GITHUB%/issues/995 New top cell appearing after load
|
|
|
|
|
* Enhancement: %GITHUB%/issues/996 Refresh function to trigger update from within library
|
|
|
|
|
* Bugfix: %GITHUB%/issues/997 Wrong display of negative extensions of paths
|
|
|
|
|
* Bugfix: scale and grids were wrong in case of oversampling
|
|
|
|
|
|
|
|
|
|
0.27.7 (2022-01-12):
|
|
|
|
|
* Bugfix: %GITHUB%/issues/969 PCell error (infinite recursion)
|
|
|
|
|
|
2022-01-04 21:20:04 +01:00
|
|
|
0.27.6 (2022-01-04):
|
2021-12-30 09:15:52 +01:00
|
|
|
* Enhancement: %GITHUB%/issues/963 Display snapped position in main window
|
|
|
|
|
* Bugfix: %GITHUB%/issues/960 Cap values range now shown in netlist browser
|
|
|
|
|
* Bugfix: %GITHUB%/issues/954 Fixed a device extraction glitch
|
|
|
|
|
* Bugfix: %GITHUB%/issues/951 Internal error fixed when deleting the cell you're sitting at
|
|
|
|
|
Side effect: copy & paste of cells is correctly disabled now in viewer mode
|
2021-12-16 00:47:11 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/942 Technology file routing suffix string typo
|
|
|
|
|
* Bugfix: %GITHUB%/issues/946 Python: __file__ returns quoted path string
|
2021-12-30 09:15:52 +01:00
|
|
|
* Bugfix: DRC check for equal width now returns more consistent results
|
|
|
|
|
Previously, a check like "layer.drc(width == something)" was not flagging
|
|
|
|
|
all candidates correctly.
|
|
|
|
|
* Enhancement: A PCell can request "lazy evaluation" now
|
|
|
|
|
This means that a parameter change needs to be committed in the UI before
|
|
|
|
|
it is being taken. This way, slow PCell evaluation will not make the
|
|
|
|
|
application stall. To add this feature, reimplement "wants_lazy_evaluation"
|
|
|
|
|
in the PCell class to return "true".
|
|
|
|
|
* Enhancement: "lvs_data" is a global function now in LVS scripts
|
2021-12-16 00:47:11 +01:00
|
|
|
* Bugfix: less liberal evaluation of expressions in string to numeric conversion
|
|
|
|
|
This will fix a potential vulnerability which allows someone to sneak
|
|
|
|
|
in expression code through malicious configuration, technology or layer properties
|
|
|
|
|
files.
|
|
|
|
|
|
2021-11-14 09:52:13 +01:00
|
|
|
0.27.5 (2021-11-14):
|
|
|
|
|
* Enhancements: Better support for execution (also cross-interpreter) of macro code from scripts
|
|
|
|
|
- New methods for the Macro class like "run" and loading from file
|
|
|
|
|
- New class Interpreter for accessing Ruby interpreter state from Python and vice versa
|
|
|
|
|
* Enhancement: New DRC function "enclosed" as the reverse of "enclosing"
|
|
|
|
|
- Allows using the rectangle filters with "via enclosed by metal"
|
|
|
|
|
- Usually better performance than "metal enclosing via"
|
|
|
|
|
* Enhancements: Usability
|
|
|
|
|
- Navigation in the 2.5d view
|
|
|
|
|
- "tap" function shows layer names and details from layer view
|
|
|
|
|
- Documentation about layer views
|
|
|
|
|
* Enhancement: CentOS7 RPM's use Python 3 now
|
|
|
|
|
* Enhancement: Sending custom query shape objects to RDB produces shape markers now
|
|
|
|
|
* Enhancement: New method LayoutView#is_editable?
|
2021-11-14 17:51:30 +01:00
|
|
|
* Enhancement: %GITHUB%/issues/879 PCellDeclaration#layout and Layout#library ownership links
|
2021-11-14 09:52:13 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/918 Editor options tab window too big
|
|
|
|
|
* Bugfix: %GITHUB%/issues/920 Fill tool border parameter sign issue
|
|
|
|
|
* Bugfix: %GITHUB%/issues/921 BJT3 extraction with collector shape fixed
|
|
|
|
|
* Bugfix: %GITHUB%/issues/933 QMessageLogger methods safe now with "%" characters
|
|
|
|
|
* Bugfix: %GITHUB%/issues/935 Cell#insert (of cell instances) now checks their cell indexes
|
|
|
|
|
|
2021-09-23 22:47:52 +02:00
|
|
|
0.27.4 (2021-09-25):
|
|
|
|
|
* Enhancements: Some enhancements on the 2.5d view (e.g. live layer color update, z only scaling, wire frames, etc.)
|
|
|
|
|
* Enhancement: simple versions of DRC with_holes/without_holes without parameters
|
|
|
|
|
* Enhancement: LVS netlist compare performance improvements in certain cases
|
|
|
|
|
* Enhancement: %GITHUB%/issues/914 Make "tap" function available in reader mode
|
|
|
|
|
* Bugfix: %GITHUB%/issues/912 Decent error message (not crashing) when trying to create a cell or layer on an empty panel
|
|
|
|
|
* Bugfix: %GITHUB%/issues/909 DRC crash
|
|
|
|
|
* Bugfix: %GITHUB%/issues/905 Crash when deleting a hierarchical PCell library from Python
|
|
|
|
|
* Bugfix: %GITHUB%/issues/898 Spice reader ignores last line
|
|
|
|
|
* Bugfix: %GITHUB%/issues/897 Fill Tool crashes
|
|
|
|
|
* Bugfix: %GITHUB%/issues/894 border case GDS file behavior restored
|
|
|
|
|
* Bugfix: %GITHUB%/issues/892 Font path can be selected for standalone "Basic" library
|
|
|
|
|
* Bugfix: %GITHUB%/issues/886 Python module does not build from sources
|
|
|
|
|
* Bugfix: %GITHUB%/issues/881 Typo in separation_check signature
|
|
|
|
|
* Bugfix: %GITHUB%/issues/880 Clarification of device parameter compare on LVS
|
2021-07-31 09:03:13 +02:00
|
|
|
|
2021-07-22 23:15:04 +02:00
|
|
|
0.27.3 (2021-07-23):
|
2021-07-22 00:00:09 +02:00
|
|
|
* Enhancement: DRC - more filters for edge pair collections
|
|
|
|
|
As there are now: with(out)_area and with(out)_internal_angle
|
|
|
|
|
* Bugfix: %GITHUB%/issues/846 Crash in netlist browser
|
|
|
|
|
* Bugfix: %GITHUB%/issues/851 KLayout stalls in net browser net highlighting when net shapes contain texts
|
|
|
|
|
* Bugfix: %GITHUB%/issues/854 Resistor Device extractor extracts W and L 2 times too large
|
|
|
|
|
* Bugfix: %GITHUB%/issues/856 LVS: Resistor with bulk: bulk terminal swaps with A terminal
|
|
|
|
|
* Bugfix: %GITHUB%/issues/858 "+" line continuation in Spice reader only effective when at beginning of line
|
|
|
|
|
* Bugfix: %GITHUB%/issues/859 Technology was not assigned on new layout
|
|
|
|
|
* Bugfix: %GITHUB%/issues/864 Shapes#copy_shapes does not support undo/redo
|
|
|
|
|
* Bugfix: %GITHUB%/issues/866 Probe net not working for floating subcircuits in hierarchical net tracer
|
|
|
|
|
* Bugfix: %GITHUB%/issues/867 Macro editor freeze after search next
|
|
|
|
|
* Bugfix: %GITHUB%/issues/871 Application stalls with 'draw only border instances' mode with AREFs
|
|
|
|
|
* Bugfix: %GITHUB%/issues/875 Drawing glitch
|
|
|
|
|
* Enhancement: LVS features
|
|
|
|
|
- "extract_devices" returns the device class object
|
|
|
|
|
- Device class object can be used to enable parameters (make them primary)
|
|
|
|
|
- Spice writer delegate enabled in LVS for customization of output
|
|
|
|
|
- "blank_circuit" specifies circuits as black boxes and skips compare
|
|
|
|
|
- Better propagation of symmetric nets through swappable pins
|
|
|
|
|
- "tolerance" and "join_symmetric_nets" can be used anywhere in the LVS script now
|
|
|
|
|
- "same_nets!" (with exclamation mark) for strong matching of nets
|
|
|
|
|
- "same_nets" accepts glob pattern now
|
|
|
|
|
* Enhancements: RBA/pya
|
|
|
|
|
- Device#net_for_terminal with terminal name
|
|
|
|
|
- Circuit#nets_by_name with glob pattern
|
|
|
|
|
- Netlist#is_case_sensitive?, Netlist#case_sensitive=
|
|
|
|
|
- Netlist#nets_by_name to get nets from pattern
|
|
|
|
|
- CellView#context_trans and CellView#context_dtrans
|
|
|
|
|
* Enhancement: Ruby 3.0 basic enabling
|
|
|
|
|
* Enhancement: DRC "extent" accepts a cell name pattern now to deliver cell bounding boxes
|
2021-07-22 23:15:04 +02:00
|
|
|
* Bugfix: reverted change of #796
|
|
|
|
|
DXF version is back to AC1006 which seems to be more compatible with most consumers of
|
|
|
|
|
DXF files. Using 1016 AC1014 seems to require much more meta information I cannot
|
|
|
|
|
provide without deeper insight into the DXF structure.
|
2021-07-22 00:00:09 +02:00
|
|
|
|
2021-06-20 21:02:19 +02:00
|
|
|
0.27.2 (2021-06-20):
|
|
|
|
|
|
2021-06-20 23:21:07 +02:00
|
|
|
* Enhancement: %GITHUB%/issues/818 2.5d view shows view area instead of full layout
|
|
|
|
|
This way, it's possible to confine the extruded view to a small area of the
|
|
|
|
|
layout easily.
|
2021-06-20 21:02:19 +02:00
|
|
|
* Bugfix: %GITHUB%/issues/824 LEF/DEF flow - duplicate text label generated
|
|
|
|
|
* Bugfix: %GITHUB%/issues/826 Crash on deep, threaded DRC mode with universal DRC function
|
2021-06-20 23:21:07 +02:00
|
|
|
* Bugfix: %GITHUB%/issues/835 Crash on layout save after deep copy + close of other
|
|
|
|
|
* Bugfix: %GITHUB%/issues/839 Crash after PCell code exception is handled in Macro IDE
|
2021-06-21 21:50:14 +02:00
|
|
|
* Bugfix: Package names can contain dash characters ("-") too.
|
2021-06-20 23:21:07 +02:00
|
|
|
Previously this was not allowed leading to a conflict with the conventions
|
|
|
|
|
of the package repository at sami.klayout.org.
|
2021-06-20 21:02:19 +02:00
|
|
|
* Enhancement: a lot of typos fixed in documentation and code (thanks to Eugene)
|
|
|
|
|
|
2021-05-30 00:00:59 +02:00
|
|
|
0.27.1 (2021-05-31):
|
|
|
|
|
|
|
|
|
|
* Enhancement: %GITHUB%/issues/809
|
|
|
|
|
"without_density" goes outside the boundary of the input layer.
|
|
|
|
|
A new keyword ("padding_ignore") can be added to with_density/without_density
|
|
|
|
|
to ignore parts outside the boundary instead of treating them as zero
|
|
|
|
|
density.
|
|
|
|
|
* Enhancement: %GITHUB%/issues/808
|
|
|
|
|
Feature suggestion: DRC to report edges attached to corners as edge pairs.
|
|
|
|
|
There is a new output mode "as_edge_pairs" in addition to "as_dots" and
|
|
|
|
|
"as_boxes" now.
|
2021-06-21 21:50:14 +02:00
|
|
|
* Bugfix: %GITHUB%/issues/807 DRC: clear_connections and incremental connect was not working.
|
2021-05-30 00:00:59 +02:00
|
|
|
This is an important feature for correctly implementing antenna checks
|
|
|
|
|
* Bugfix: %GITHUB%/issues/806 LVS: CustomComparer is not working
|
|
|
|
|
* Bugfix: %GITHUB%/issues/801 DRC Layer#smoothed lacks the "keep_hv" argument
|
2021-06-21 21:50:14 +02:00
|
|
|
* Enhancement: %GITHUB%/issues/798 More flexibility on Spice reader.
|
2021-05-30 00:00:59 +02:00
|
|
|
A number of new features has been provided for the spice reader delegate
|
|
|
|
|
* Bugfix: %GITHUB%/issues/795 Unstable application with verbose log output
|
|
|
|
|
* Bugfix: %GITHUB%/issues/793 Bug on each_image_selected
|
2021-06-21 21:50:14 +02:00
|
|
|
* Bugfix: %GITHUB%/issues/787 Query issue (or general: expression issue).
|
2021-05-30 00:00:59 +02:00
|
|
|
A problem with memory corruption in certain scenarios was causes
|
|
|
|
|
an application crash.
|
|
|
|
|
* Bugfix: %GITHUB%/issues/778 Use system font instead of hard coded "Monospace"
|
|
|
|
|
* Bugfix: DRC "flatten" did not always flatten, but kept layers hierarchically
|
|
|
|
|
* Enhancement: DRC: a couple of new filters on edge pair layers:
|
|
|
|
|
- with_angle/without_angle: filter by angle of the edges (one or both)
|
|
|
|
|
- with_length/without_length: filter by length of the edges (one or both)
|
|
|
|
|
- with_distance/without_distance: filter by distance of the edges
|
|
|
|
|
* Enhancement: Added Edge#cut_point method
|
|
|
|
|
* Enhancement: LEF macro layouts now can be specified in UI
|
2021-06-21 21:50:14 +02:00
|
|
|
* Bugfix: full_edge, negative output for fragmented polygon vs. small ones (space, enclosure, overlap).
|
2021-05-30 00:00:59 +02:00
|
|
|
In some cases, only parts of the edges were reported and negative output was
|
|
|
|
|
incorrect. In addition, negative output for two-layer checks - such as "l1.drc(sep(l2) > 0.2)" - now
|
|
|
|
|
only is produced for the primary layer. With both outputs it was difficult to separate the
|
|
|
|
|
components.
|
|
|
|
|
* Bugfix: computed layers were printed with layer properties in lvsdb files sometimes.
|
|
|
|
|
* Enhancement: Performance improvements and memory footprint reduction for OpenRAM test case
|
|
|
|
|
* Bugfix: a number of typos fixed and documentation clarifications
|
2021-05-31 18:48:06 +02:00
|
|
|
* Bugfix: DRC "or" was producing flat output in deep mode
|
2021-05-30 00:00:59 +02:00
|
|
|
|
2021-05-01 00:42:10 +02:00
|
|
|
0.27 (2021-05-02):
|
2021-04-03 17:31:17 +02:00
|
|
|
|
2021-06-21 21:50:14 +02:00
|
|
|
* Enhancements: Numerous new functions for the RBA and pya API.
|
2021-04-03 17:31:17 +02:00
|
|
|
Some highlights:
|
2021-05-01 16:04:02 +02:00
|
|
|
- "Texts" for text collections (similar for Edges/EdgePairs/Region)
|
|
|
|
|
- New modes for blending layout files - see GitHub issue #666
|
|
|
|
|
- New function Cell#transform - see GitHub issue #598
|
|
|
|
|
- New functions for Image (read, write, clear)
|
|
|
|
|
- New functions for Region and Edges correlating with the new DRC features
|
|
|
|
|
- Multi-cell hierarchical copy/move of trees - will maintain shared instances
|
|
|
|
|
- RBA: iterators are now automatically made available as Enumerable
|
|
|
|
|
- All functions having a void return specification now return self (allows chaining)
|
|
|
|
|
- More functions for manipulating selections (LayoutView#select_all etc.)
|
|
|
|
|
- Spline interpolation code available in new "Utils" namespace
|
|
|
|
|
- QByteArray support, mapping to Python byte arrays
|
|
|
|
|
- MainWindow#set_key_bindings, MainWindow#get_key_bindings, MainWindow#set_menu_items_hidden etc.
|
|
|
|
|
- New class RecursiveInstanceIterator (similar to RecursiveShapeIterator, but acts on instances)
|
|
|
|
|
- Deep vs. flat operations do not always flatten out now (flat vs. deep does however)
|
|
|
|
|
- Global transformations for inputs
|
2021-06-21 21:50:14 +02:00
|
|
|
* Enhancements: New DRC features.
|
2021-04-03 17:31:17 +02:00
|
|
|
Some highlights:
|
2021-05-01 16:04:02 +02:00
|
|
|
- Better support for texts - "text layers"
|
|
|
|
|
- Combined AND+NOT feature for separating regions into inside and outside part
|
|
|
|
|
- "max_vertex_count" and "max_area_ratio" configuration options
|
|
|
|
|
- "forget" for memory optimization
|
|
|
|
|
- Shielding is optional now for some DRC functions
|
|
|
|
|
- "interact" now has a count filter
|
|
|
|
|
- In verbose more, figure counts and more information is printed
|
|
|
|
|
- Generic DRC function and complex DRC operations: for details search "Universal DRC" in documentation
|
|
|
|
|
- "not_opposite" and "rect_filter" options for some DRC functions
|
|
|
|
|
- "enclosing" (selects polygons entirely enclosing others)
|
|
|
|
|
- New filters for polygons: squares, non_squares, area ratio, bbox aspect ratio
|
|
|
|
|
- More intuitive specification of projection limits ("projecting < 2.um")
|
|
|
|
|
- "with_holes" and "without_holes", also with count
|
|
|
|
|
- Density check is included now ("with_densitiy", "without_density")
|
|
|
|
|
- "split_..." functions give interacting/non-interacting sets in one step
|
|
|
|
|
- Better support for generic transformations as Matrix2d and Matrix3d
|
|
|
|
|
- "fill" and "fill_with_left" functions for dummy fill
|
|
|
|
|
- NO "connected" feature yet. Sorry. Had to drop it to finish this release.
|
2021-06-21 21:50:14 +02:00
|
|
|
* Enhancements: new LVS features.
|
2021-04-03 17:31:17 +02:00
|
|
|
Some highlights:
|
2021-05-01 16:04:02 +02:00
|
|
|
- Improved netlist and LVS result browser (infinite-depth browsing)
|
|
|
|
|
- Improved circuit match algorithm
|
|
|
|
|
- Case insensitive handling of object names for SPICE netlists
|
|
|
|
|
- Probe feature fixed in flat mode
|
|
|
|
|
- "connect_explicit": for details search "connect_explicit" in documentation
|
2021-06-21 21:50:14 +02:00
|
|
|
* Enhancements: New features for images.
|
2021-04-03 17:31:17 +02:00
|
|
|
Some highlights:
|
2021-05-01 16:04:02 +02:00
|
|
|
- New menu item: show and hide all images - see GitHub issue #535
|
|
|
|
|
- False color nodes now can have a left and right color allowing color steps
|
|
|
|
|
- Persistance of images through a special file format: "lyimg" (XML based)
|
2021-06-21 21:50:14 +02:00
|
|
|
* Enhancements: LEF/DEF reader.
|
2021-04-03 17:31:17 +02:00
|
|
|
Some highlights:
|
2021-05-01 16:04:02 +02:00
|
|
|
- Support for layer map files
|
|
|
|
|
- More complete spec support (e.g. FILL, MASK, FOREIGN, DO/BY/STEP ...)
|
|
|
|
|
- Several bug fixes, e.g. routing layer switch for VIAs
|
|
|
|
|
- Some functions also act on the transient selection (less mouse clicks)
|
2021-06-21 21:50:14 +02:00
|
|
|
* Enhancements: Layout editing and rulers.
|
2021-04-03 17:31:17 +02:00
|
|
|
Some highlights:
|
2021-05-01 16:04:02 +02:00
|
|
|
- Object properties now are changed without having to commit the dialogs
|
|
|
|
|
- Dockable editor options windows
|
|
|
|
|
- "Recently used" list
|
|
|
|
|
- A "distribute objects" feature (Edit/Selection/Distribute)
|
|
|
|
|
- Snap highlighting
|
|
|
|
|
- Mouse tracking cursor indicates grid- and object-snapped location
|
2021-06-21 21:50:14 +02:00
|
|
|
* Enhancements: Help browser.
|
2021-05-01 16:04:02 +02:00
|
|
|
- Bookmarks
|
|
|
|
|
- Search in page (Ctrl+F)
|
2021-06-21 21:50:14 +02:00
|
|
|
* Enhancement: Improved fill tool.
|
2021-04-03 17:31:17 +02:00
|
|
|
The fill tool now also supports skewed fill pattern repetitions
|
2021-06-21 21:50:14 +02:00
|
|
|
* Enhancement: Ability to utilize a LayoutView as a Widget.
|
2021-04-03 17:31:17 +02:00
|
|
|
Standalone instantiation of a LayoutView object is
|
|
|
|
|
supported now. So it becomes possible to create
|
|
|
|
|
custom MainWindow UIs and embed a layout view there.
|
|
|
|
|
* Enhancement: Improved layer and cell list filtering and searching
|
2021-06-21 21:50:14 +02:00
|
|
|
* Enhancement: Experimental 3d (called 2.5d) view of layout.
|
2021-04-03 17:31:17 +02:00
|
|
|
For details search "2.5d View" in documentation.
|
2021-06-21 21:50:14 +02:00
|
|
|
* Enhancement: Improved performance on sea of instances for OASIS files.
|
2021-04-03 17:31:17 +02:00
|
|
|
Iterated OASIS instances are stored and handled in a leaner way in viewer mode
|
2021-06-21 21:50:14 +02:00
|
|
|
* Enhancement: Buddy scripts can concatenate files with "+" for input.
|
2021-04-03 17:31:17 +02:00
|
|
|
Concatenation happens by "blending files". Beware of the risk this implies.
|
2021-04-03 18:26:53 +02:00
|
|
|
A new option "--blend-mode" has been introduced for supporting overwrite, skip
|
|
|
|
|
and variant formation in case of cell name conflicts. See buddy script help.
|
2021-06-21 21:50:14 +02:00
|
|
|
* Enhancement: Layer maps now support n:m layer mapping.
|
2021-04-03 17:31:17 +02:00
|
|
|
This allows mapping n input layers to one logical layer (merging) and also
|
|
|
|
|
one input layer to m logical ones (clone layer). This applies to the
|
|
|
|
|
buddy scripts and layer maps inside KLayout's reader.
|
2021-06-21 21:50:14 +02:00
|
|
|
* Enhancement: include mechanism for easy include of files into DRC/LVS scripts.
|
2021-04-03 17:31:17 +02:00
|
|
|
This is a plain text substitution feature. Don't use it for Ruby or Python
|
|
|
|
|
scripts (the preferred way is still require/import). But it's a quick way
|
|
|
|
|
to include partial DRC and LVS scripts without having to worry about variable
|
|
|
|
|
scope. For details see "Including other files" in the documentation under:
|
|
|
|
|
KLayout User Manual/Design Rule Check (DRC)/DRC Runsets.
|
2021-04-18 20:34:39 +02:00
|
|
|
* Bugfix: %GITHUB%/issues/771
|
|
|
|
|
Fixed an issue with QByteArray/QVariant transformation in Qt binding
|
2021-04-03 17:31:17 +02:00
|
|
|
* Bugfix: %GITHUB%/issues/750
|
|
|
|
|
PCB gerber import: Incorrect handling of D02 operations.
|
2021-04-18 20:34:39 +02:00
|
|
|
* Bugfix: %GITHUB%/issues/747
|
|
|
|
|
Proper handling of comments in RVE DB reader
|
2021-04-03 17:31:17 +02:00
|
|
|
* Bugfix: %GITHUB%/issues/740
|
|
|
|
|
Bug in the "smooth" function.
|
2021-04-18 20:34:39 +02:00
|
|
|
* Enhancement: %GITHUB%/issues/715
|
|
|
|
|
A separate search range can be specified for box selections now
|
2021-04-03 17:31:17 +02:00
|
|
|
* Enhancement: %GITHUB%/issues/691
|
|
|
|
|
Technology specific libraries: library name resolution based on technology.
|
|
|
|
|
* Enhancement: %GITHUB%/issues/666
|
|
|
|
|
Controlling the way a layout reader integrates cells into an existing layout.
|
|
|
|
|
* Bugfix: %GITHUB%/issues/663
|
|
|
|
|
Deep mode DRC: separation from "inside" gives wrong errors.
|
|
|
|
|
* Enhancement: %GITHUB%/issues/648
|
|
|
|
|
LVS could not do "connect_implicit" with global nets.
|
|
|
|
|
* Bugfix: %GITHUB%/issues/609
|
|
|
|
|
Internal error on net extraction.
|
|
|
|
|
* Enhancement: %GITHUB%/issues/598
|
|
|
|
|
Plain transformation of cell missing.
|
|
|
|
|
* Enhancement: %GITHUB%/issues/588
|
|
|
|
|
RBA/PYA: Provide event when a net is selected in the netlist browser.
|
|
|
|
|
* Enhancement: %GITHUB%/issues/563
|
|
|
|
|
True support for text objects in DRC/LVS (text layers).
|
2020-05-31 02:33:46 +02:00
|
|
|
* Enhancement: %GITHUB%/issues/558
|
2020-05-31 02:30:30 +02:00
|
|
|
Edges#extents, Texts#extents and EdgePairs#extents now
|
|
|
|
|
work hierarchically in deep mode. In DRC, this means,
|
|
|
|
|
"extents" is a deep-enabled method now.
|
2021-04-03 17:31:17 +02:00
|
|
|
* Enhancement: %GITHUB%/issues/535
|
|
|
|
|
Image handling enhancements.
|
|
|
|
|
* Enhancement: %GITHUB%/issues/521
|
|
|
|
|
Enhanced API for ObjectInstPath.
|
|
|
|
|
* Enhancement: %GITHUB%/issues/487
|
|
|
|
|
Difficult to select specific labels for net name assignment in net extraction.
|
|
|
|
|
Solution involves a more elaborate handling of texts through "text layers.
|
|
|
|
|
|
2021-04-21 21:45:47 +02:00
|
|
|
0.26.12 (2021-04-21):
|
|
|
|
|
|
|
|
|
|
* Bugfix: %GITHUB%/issues/747
|
|
|
|
|
Result browser gives error message with // lines in RVE files
|
|
|
|
|
* Bugfix: %GITHUB%/issues/771
|
|
|
|
|
Problem with QMimeData binding
|
|
|
|
|
|
2021-04-03 17:31:17 +02:00
|
|
|
0.26.11 (2021-02-27):
|
|
|
|
|
|
|
|
|
|
* Bugfix: %GITHUB%/issues/733
|
|
|
|
|
Relative path resolution in session files fails when the session file's path contains "+" characters
|
|
|
|
|
* Enhancement: %GITHUB%/issues/730
|
|
|
|
|
Support of class 'QUiLoader' in PYA and RBA
|
|
|
|
|
* Bugfix: %GITHUB%/issues/728
|
|
|
|
|
Fails to build on Debian hppa: uses non-standard sa_restorer field of struct sigaction
|
|
|
|
|
* Bugfix: %GITHUB%/issues/726
|
|
|
|
|
Crash on LayoutView#clear_selection on Linux.
|
|
|
|
|
* Bugfix: %GITHUB%/issues/723
|
|
|
|
|
Backup scheme wasn't working correctly with a single file without path
|
|
|
|
|
given as command line argument.
|
|
|
|
|
|
|
|
|
|
0.26.10 (2020-02-02):
|
|
|
|
|
|
|
|
|
|
* Enhancement: %GITHUB%/issues/720
|
|
|
|
|
"Safe save" and backups: when saving files, the file is only overwritten after
|
|
|
|
|
the save terminated successfully. This will avoid loss of data for full volumes
|
|
|
|
|
or network share dropouts. In addition, a configurable number of back files can
|
|
|
|
|
be kept (see File/Setup: Application/General).
|
|
|
|
|
* Bugfix: %GITHUB%/issues/718
|
|
|
|
|
GDS export issue fixed (breaking of polygons was filling holes)
|
|
|
|
|
* Bugfix: %GITHUB%/issues/709
|
|
|
|
|
LVS compare enters infinite loop when it encounters two entirely identical subcircuits
|
|
|
|
|
* Bugfix: %GITHUB%/issues/708
|
|
|
|
|
Qt binding: missing support for binary strings as QByteArray representative
|
|
|
|
|
* Bugfix: %GITHUB%/issues/707
|
|
|
|
|
QJsonValue's string constructor is ambiguous
|
|
|
|
|
* Bugfix: %GITHUB%/issues/704
|
|
|
|
|
Rational Splines not supported DXF
|
|
|
|
|
* Bugfix: %GITHUB%/issues/693
|
|
|
|
|
MAGIC files won't find subcells when reading from command line
|
|
|
|
|
* Bugfix: HTTP stream reading issue with redirect
|
|
|
|
|
At least on MacOS a segfault happened when reading HTTP stream data
|
|
|
|
|
(e.g. for package manager) from addresses which are redirected.
|
|
|
|
|
* Enhancement: Removed %APPDATA% from DLL search path on Windows
|
|
|
|
|
This will avoid installation poisoning by the one from %APPDATA%
|
|
|
|
|
(which ironically is the default installation path). Eventually
|
|
|
|
|
multiple versions can be used in parallel.
|
|
|
|
|
|
|
|
|
|
0.26.9 (2020-11-27):
|
|
|
|
|
|
|
|
|
|
* Bugfix: %GITHUB%/issues/658
|
|
|
|
|
Menu items were not put into the right place on MacOS.
|
|
|
|
|
* Bugfix: %GITHUB%/issues/652
|
|
|
|
|
"M" factor scaling was not working for Spice reader.
|
|
|
|
|
* Bugfix: %GITHUB%/issues/651
|
|
|
|
|
Fixed an issue with DRC "select".
|
|
|
|
|
* Bugfix: %GITHUB%/issues/647
|
|
|
|
|
Text orientation was not considered properly in search & replace
|
|
|
|
|
* Bugfix: %GITHUB%/issues/646
|
|
|
|
|
A potential crash was fixed happening when a PCell
|
|
|
|
|
library is deleted
|
|
|
|
|
* Bugfix: Display bug
|
|
|
|
|
Cell placements with small magnification factors (such that the
|
|
|
|
|
viewport dimensions exceeded the DBU space when seem from inside
|
|
|
|
|
the cell) lead to display errors.
|
|
|
|
|
|
|
|
|
|
0.26.8 (2020-09-15):
|
|
|
|
|
|
|
|
|
|
* Enhancement: %GITHUB%/issues/639
|
|
|
|
|
A new method is available which enables copying of multiple cells
|
|
|
|
|
into a target layout while maintaining common subcells are single
|
|
|
|
|
cells.
|
|
|
|
|
* Bugfix: %GITHUB%/issues/637
|
|
|
|
|
Points have not been selected properly when inside mirrored subcells
|
|
|
|
|
in partial edit mode.
|
|
|
|
|
* Bugfix: %GITHUB%/issues/629
|
|
|
|
|
Qt5 QTimer timeout signal was not available to Python or Ruby.
|
|
|
|
|
This also applied to all "private" signals of Qt5. QTimer is just
|
|
|
|
|
one important example for this case.
|
|
|
|
|
* Bugfix: %GITHUB%/issues/617
|
|
|
|
|
A problem with pseudo-const Python/Ruby objects in the netlist API
|
|
|
|
|
was fixed.
|
|
|
|
|
* Bugfix: %GITHUB%/issues/615
|
|
|
|
|
Basic authentication for package manager now uses UTF-8 encoding.
|
|
|
|
|
Most servers expect this kind of encoding today. UTF password
|
|
|
|
|
characters are supported this way.
|
|
|
|
|
|
|
|
|
|
0.26.7 (2020-07-07):
|
|
|
|
|
|
|
|
|
|
* Bugfix: %GITHUB%/issues/381 and more
|
|
|
|
|
Some bugs fixed that happened specifically on MacOS.
|
|
|
|
|
1.) A segfault that happened in LVS
|
|
|
|
|
2.) Some classes were not properly registered for usage in scripts.
|
|
|
|
|
* Bugfix: %GITHUB%/issues/493
|
|
|
|
|
LVS asserted on MacOS
|
|
|
|
|
* Enhancement: %GITHUB%/issues/586
|
|
|
|
|
As a safety feature, the stream writers now refuse to write layouts
|
|
|
|
|
with cells carrying the same names. Writing such layers would result
|
|
|
|
|
in corrupted or invalid layout files.
|
|
|
|
|
* Bugfix: %GITHUB%/issues/589 (tentative)
|
|
|
|
|
On Anaconda-based builds for MacOS 10.15 (Catalina) a loss of instances
|
|
|
|
|
was observed. This could be traced down to compiler/library incompatibilities
|
|
|
|
|
but not further.
|
|
|
|
|
* Enhancements: %GITHUB%/issues/591
|
|
|
|
|
Two enhancements in the macro editor:
|
|
|
|
|
1.) A crash happening when adding a new location was fixed
|
|
|
|
|
2.) The template selection popup can now be disabled by dismissing the
|
|
|
|
|
tip dialog.
|
|
|
|
|
* Bugfix: %GITHUB%/issues/592
|
|
|
|
|
Reading a file into a layout with unnamed layers caused problems with
|
|
|
|
|
layer mapping specs.
|
|
|
|
|
* Bugfix: %GITHUB%/issues/596
|
|
|
|
|
Library#_destroy was crashing the application. As this function must not
|
|
|
|
|
be called, it's rerouted to "nothing" for backward compatibility.
|
|
|
|
|
* Enhancement: %GITHUB%/issues/603
|
|
|
|
|
The "adjust origin" feature now allows specifying the target
|
|
|
|
|
coordinates for the adjustment.
|
|
|
|
|
* Bugfix: %GITHUB%/issues/610
|
|
|
|
|
An internal error happened for certain hierarchical configurations on
|
|
|
|
|
netlist extraction.
|
|
|
|
|
* Enhancement: LVS netlist compare
|
|
|
|
|
The algorithm was improved to provide better reproducibility. The
|
|
|
|
|
detection of matching paths in the presence of ambiguities was
|
|
|
|
|
improved.
|
|
|
|
|
In addition, the netlist compare now favours net names for resolving
|
|
|
|
|
ambiguities. So if nets are named the same in the layout and the
|
|
|
|
|
schematic, ambiguities are resolved based on these names. This is
|
|
|
|
|
usually more efficient. A new function is available to turn this
|
|
|
|
|
feature off: "consider_net_names(false)".
|
|
|
|
|
|
|
|
|
|
0.26.6 (2020-06-05):
|
|
|
|
|
|
|
|
|
|
* Enhancement: %GITHUB%/issues/522
|
|
|
|
|
Skip comment lines with // in RVE DB reader
|
|
|
|
|
* Bugfix: %GITHUB%/issues/547
|
|
|
|
|
Doc fixes, better error messages on some Shape methods
|
|
|
|
|
* Bugfix: %GITHUB%/issues/554
|
|
|
|
|
Using 64bit coordinates on RVE reader to avoid overflow
|
|
|
|
|
* Bugfix: %GITHUB%/issues/565
|
|
|
|
|
Spice reader: .global should not add pin if the signal
|
|
|
|
|
isn't used in a subcircuit
|
|
|
|
|
* Bugfix: %GITHUB%/issues/568 and %GITHUB%/issues/578
|
|
|
|
|
A CIF reader and writer bug was fixed
|
|
|
|
|
* Bugfix: %GITHUB%/issues/570 and %GITHUB%/issues/579
|
|
|
|
|
Perimenter can be included in antenna area for the
|
|
|
|
|
antenna check. This also includes a mode in which only
|
|
|
|
|
the perimeter is considered.
|
|
|
|
|
* Enhancement: %GITHUB%/issues/560
|
|
|
|
|
A library can be associated with multiple technologies now.
|
|
|
|
|
* Bugfix: width of cell and library side panels could not be
|
|
|
|
|
reduced below the width of the selection boxes in the
|
|
|
|
|
header
|
|
|
|
|
* Bugfix: cell view selection header text did not get updated
|
|
|
|
|
when saving the layout to a different file
|
2020-04-05 14:58:30 +02:00
|
|
|
|
2021-04-03 17:31:17 +02:00
|
|
|
0.26.5 (2020-05-02):
|
2020-04-05 14:58:30 +02:00
|
|
|
|
2020-04-26 17:03:35 +02:00
|
|
|
* Bugfix: %GITHUB%/issues/539
|
|
|
|
|
An internal error happened on netlist flatten sometimes
|
|
|
|
|
* Bugfix: %GITHUB%/issues/524
|
|
|
|
|
Failed queries leave layout in undefined state
|
2020-04-05 14:58:30 +02:00
|
|
|
* Bugfix: %GITHUB%/issues/525
|
|
|
|
|
Report true source line in DRC and LVS verbose mode
|
|
|
|
|
* Bugfix: %GITHUB%/issues/526
|
|
|
|
|
Makes script debugging more reliable
|
|
|
|
|
* Enhancement: %GITHUB%/issues/527
|
|
|
|
|
Wildcard layer mapping for stream readers
|
2020-04-26 17:03:35 +02:00
|
|
|
* Bugfix: %GITHUB%/issues/544
|
|
|
|
|
Duplicate .global statements in SPICE netlists created
|
|
|
|
|
duplicate pins
|
2021-04-03 17:31:17 +02:00
|
|
|
* Bugfix: %GITHUB%/issues/548
|
|
|
|
|
A shielding issue was fixed for DRC space measurements
|
2020-04-26 17:03:35 +02:00
|
|
|
* Bugfix: diff tool bug with paths
|
|
|
|
|
Differences in path points where no reported
|
2020-04-05 14:58:30 +02:00
|
|
|
* Enhancement: documentation clarifications and typos fixed
|
|
|
|
|
|
2020-03-02 18:56:29 +01:00
|
|
|
0.26.4 (2020-03-02):
|
2020-02-23 00:39:51 +01:00
|
|
|
|
2020-03-02 18:56:29 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/517
|
|
|
|
|
DEF reader could not read VIAS+VIARULE without pattern
|
2020-02-27 18:45:08 +01:00
|
|
|
* Enhancement: %GITHUB%/issues/471
|
|
|
|
|
Leaner way to specify LVS compare tolerances for device parameters
|
2020-02-23 00:39:51 +01:00
|
|
|
* Enhancement: %GITHUB%/issues/473
|
|
|
|
|
Direct access to image data in scripts (array of values instead of
|
|
|
|
|
per-pixel calls)
|
|
|
|
|
* Bugfix: %GITHUB%/issues/476
|
|
|
|
|
Issues with "target" switching in DRC solved
|
|
|
|
|
* Bugfix: %GITHUB%/issues/477
|
|
|
|
|
Missing letter "J" in Times font .. actually this bug is of 1967.
|
2020-02-27 18:45:08 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/478
|
|
|
|
|
Layout queries could not use the "shapes" method
|
2020-02-23 00:39:51 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/481
|
|
|
|
|
"isolated" DRC function reported duplicate marker shapes
|
2020-02-27 18:45:08 +01:00
|
|
|
* Enhancement: %GITHUB%/issues/482
|
|
|
|
|
"join_symmetric_nets" feature in LVS for implementing
|
|
|
|
|
"split gate" configurations
|
|
|
|
|
* Enhancement: %GITHUB%/issues/486
|
|
|
|
|
There is a "save as" function available now in the macro editor
|
|
|
|
|
(in context menu of the macro tree)
|
2020-02-23 00:39:51 +01:00
|
|
|
* Enhancement: %GITHUB%/issues/489
|
|
|
|
|
Pin names can be attached as properties to port and pin shapes
|
|
|
|
|
when reading LEF or DEF
|
|
|
|
|
* Bugfix: %GITHUB%/issues/491
|
|
|
|
|
Performance enhancement of L2N/LVS DB file loader
|
|
|
|
|
* Bugfix: %GITHUB%/issues/496
|
|
|
|
|
Fixed builds on CentOS 8 and Fedora 31
|
2020-02-23 12:49:43 +01:00
|
|
|
* Enhancement: %GITHUB%/issues/500
|
|
|
|
|
Option to limit number of shapes for net tracer
|
2020-02-23 00:39:51 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/501
|
|
|
|
|
Issues with ownership transfer fixed in Qt binding
|
|
|
|
|
* Bugfix: %GITHUB%/issues/502
|
|
|
|
|
Issues with AbsoluteProgressReporter in scripts fixed
|
|
|
|
|
|
2020-01-05 00:58:51 +01:00
|
|
|
0.26.3 (2020-01-05):
|
|
|
|
|
|
|
|
|
|
* Bugfix: %GITHUB%/issues/466
|
|
|
|
|
A crash happened when accessing layer properties tabs with
|
|
|
|
|
an invalid index in Ruby or Python
|
|
|
|
|
* Bugfix: %GITHUB%/issues/464
|
|
|
|
|
Problem building a layer tree with "add_child" (Ruby/Python)
|
|
|
|
|
* Bugfix: %GITHUB%/issues/463
|
|
|
|
|
Configuring a layer color with a group node was not effective
|
|
|
|
|
over multiple levels of hierarchy
|
|
|
|
|
* Enhancement: %GITHUB%/issues/462
|
|
|
|
|
MOS transistor gate figures can be more generic now,
|
|
|
|
|
e.g. ring-like or non-rectangular
|
|
|
|
|
* Bugfix: %GITHUB%/issues/458
|
|
|
|
|
A net extraction bug related to certain array/array
|
|
|
|
|
interactions is fixed
|
|
|
|
|
|
2019-12-18 18:17:56 +01:00
|
|
|
0.26.2 (2019-12-18):
|
2019-12-08 09:10:38 +01:00
|
|
|
|
2019-12-18 18:05:09 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/453
|
|
|
|
|
A crash happened when the "inverse" button is used on the TEXT
|
|
|
|
|
PCell
|
2019-12-17 00:25:50 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/449
|
|
|
|
|
The Qt windows styling plugin is now installed too on Windows.
|
|
|
|
|
* Bugfix: %GITHUB%/issues/448
|
|
|
|
|
The LVSDB database wasn't written with the proper device
|
|
|
|
|
class statements in short form.
|
|
|
|
|
* Bugfix: %GITHUB%/issues/447
|
|
|
|
|
Net extraction did not work properly on a specific test case
|
|
|
|
|
with folded and interleaving array instances.
|
|
|
|
|
* Bugfix: %GITHUB%/issues/445
|
|
|
|
|
"Selection/Merge shapes" gave cryptic message when instances are selected
|
|
|
|
|
* Enhancement: %GITHUB%/issues/444
|
|
|
|
|
Support for net joining though labels also for specific
|
|
|
|
|
subcells (here: to support double-height standard cells)
|
2019-12-08 09:10:38 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/440
|
|
|
|
|
LayoutView#each_annotation_selected wasn't working
|
2019-12-18 18:17:56 +01:00
|
|
|
* Enhancement: %GITHUB%/issues/438
|
|
|
|
|
Redefining a circuit in Spice netlists will give an error now
|
2019-12-08 09:10:38 +01:00
|
|
|
* Enhancement: %GITHUB%/issues/436
|
|
|
|
|
Option to silence instance copy mode dialog,
|
|
|
|
|
Enhancements to interactive move, duplicate and copy (sensitive
|
|
|
|
|
to transient selection now)
|
2019-12-18 18:17:56 +01:00
|
|
|
* Enhancement: %GITHUB%/issues/434
|
|
|
|
|
New preinstalled Ruby gems and Python packages (e.g. numpy, scipy,
|
|
|
|
|
test/unit for Ruby) for the Windows packages.
|
|
|
|
|
* Bugfix: %GITHUB%/issues/429
|
|
|
|
|
Support for MAGIC file format (*.mag)
|
2019-12-08 09:10:38 +01:00
|
|
|
* Enhancement: %GITHUB%/issues/428
|
|
|
|
|
Edit buttons are not shown in user properties dialog
|
|
|
|
|
in viewer mode
|
2019-12-18 18:17:56 +01:00
|
|
|
* Enhancement: %GITHUB%/issues/426
|
|
|
|
|
Techs can be grouped in menu now
|
2019-12-08 09:10:38 +01:00
|
|
|
* Enhancement: %GITHUB%/issues/425
|
|
|
|
|
Don't generate dummy pins for dummy gates
|
2019-12-18 18:17:56 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/419
|
|
|
|
|
Multiple top circuits after flatten of netlist
|
|
|
|
|
* Bugfix: %GITHUB%/issues/417
|
|
|
|
|
Probe nets does not work with flat extraction on Tools/Trace All Nets/Flat
|
2019-12-08 09:10:38 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/415 and %GITHUB%/issues/439
|
|
|
|
|
Macros need to be stored with CRLF on Windows for management
|
|
|
|
|
with a versioning system like git
|
2019-12-18 18:17:56 +01:00
|
|
|
* Enhancement: %GITHUB%/issues/411
|
|
|
|
|
Multiple device extractors for same class
|
|
|
|
|
* Bugfix: %GITHUB%/issues/410
|
|
|
|
|
Errors were not reported on "rerun" from the DRC and LVS report dialogs
|
|
|
|
|
* Bugfix: %GITHUB%/issues/408
|
|
|
|
|
Internal error after EdgePairs#polygon
|
2019-12-08 09:10:38 +01:00
|
|
|
* Enhancement: %GITHUB%/issues/407
|
|
|
|
|
Variables can be used in technology base path now
|
|
|
|
|
- $(tech_name) -> substituted by the technology name
|
|
|
|
|
- $(tech_dir) -> substituted by the directory the technology file is stored in
|
|
|
|
|
- $(tech_file) -> substituted by the absolute path to the tech file
|
|
|
|
|
- $(appdata_path) -> substituted by KLayout's home directory (e.g. ~/.klayout)
|
|
|
|
|
- $(env('X')) -> substituted by the environment variable $X
|
|
|
|
|
* Enhancement: %GITHUB%/issues/406
|
|
|
|
|
DRC edge layers: AND between intersecting edges gives point-like
|
|
|
|
|
markers indicating the intersection points
|
|
|
|
|
* Enhancement: netlist object properties
|
|
|
|
|
User properties can be attached to the following netlist objects
|
|
|
|
|
now: Pin, Device, Circuit, Net and SubCircuit. Properties are
|
|
|
|
|
key/value pairs (keys and values can be strings can be strings
|
|
|
|
|
or numbers).
|
|
|
|
|
The property-enabled classes use "NetlistObject" as the base
|
|
|
|
|
class now. NetlistObject provides "set_property" to set or reset
|
|
|
|
|
a property and "property" to retrieve one.
|
|
|
|
|
Properties are persisted in L2N and LVSDB files and written to
|
|
|
|
|
layout shapes on "build_nets".
|
2019-12-18 18:17:56 +01:00
|
|
|
* Enhancement: more detailed progress
|
|
|
|
|
On certain nested operations, a double or triple progress bar is
|
|
|
|
|
shown indicating the progress of nested operations.
|
2019-12-08 09:10:38 +01:00
|
|
|
|
2019-11-06 22:24:03 +01:00
|
|
|
0.26.1 (2019-11-06):
|
|
|
|
|
|
|
|
|
|
* Bugfix: %GITHUB%/issues/354
|
|
|
|
|
Buddy scripts did segfault.
|
|
|
|
|
* Bugfix: %GITHUB%/issues/352
|
|
|
|
|
LVS: equivalent_pins required the cell to be present.
|
|
|
|
|
* Enhancement: %GITHUB%/issues/353
|
|
|
|
|
Session files: "file-path" and "rdb-file" behavior was inconsistent.
|
|
|
|
|
* Bugfix: %GITHUB%/issues/358
|
|
|
|
|
"strm2oas" was writing GDS files.
|
|
|
|
|
* Bugfix: %GITHUB%/issues/363
|
|
|
|
|
It was possible to produce bad polygons while drawing.
|
|
|
|
|
* Bugfix: %GITHUB%/issues/372
|
|
|
|
|
pymod build failed with HAVE_64BIT_COORD=1.
|
|
|
|
|
* Enhancement: %GITHUB%/issues/376
|
|
|
|
|
Parameters UI callback invoking.
|
|
|
|
|
* Bugfix: %GITHUB%/issues/368
|
|
|
|
|
Segfault with layer list manipulation while iterating.
|
|
|
|
|
* Bugfix: %GITHUB%/issues/386
|
|
|
|
|
"None" is a reserved keyword for Python binding - use "None_".
|
|
|
|
|
* Enhancement: %GITHUB%/issues/382
|
|
|
|
|
Possibility to copy user property value.
|
|
|
|
|
* Enhancement: %GITHUB%/issues/387
|
|
|
|
|
Salt: Python version can be specified in "api-version".
|
|
|
|
|
Other requirements can be specified too.
|
|
|
|
|
* Bugfix: %GITHUB%/issues/392
|
|
|
|
|
Layers "Style" sub-pane was malformed.
|
|
|
|
|
* Enhancement: %GITHUB%/issues/394
|
|
|
|
|
Even bigger font sizes for rulers and labels for the 4k age:
|
|
|
|
|
Now there is "XLarge", "XXLarge" and "XXXLarge" as well.
|
|
|
|
|
* Enhancement: %GITHUB%/issues/393
|
|
|
|
|
DRC syntax errors are now shown in their original code line
|
|
|
|
|
of the DRC script.
|
2019-11-07 23:42:16 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/400
|
|
|
|
|
Snap feature wasn't working for deep regions in certain use
|
|
|
|
|
cases.
|
|
|
|
|
* Enhancement: new "scale_and_snap" methods
|
|
|
|
|
These methods allow scaling and snapping of layouts. Scaling
|
|
|
|
|
is supported by a rational factor. After scaling, snapping can
|
|
|
|
|
be applied to an integer grid. There are two incarnations.
|
|
|
|
|
Region#scale_and_snap (or Region#scaled_and_snapped): this is
|
|
|
|
|
a flat implementation which allows anisotropic scaling/snapping
|
|
|
|
|
as well.
|
|
|
|
|
And there is Layout#scale_and_snap which is a fully
|
|
|
|
|
hierarchical scale-and-snap feature. The latter does not support
|
|
|
|
|
anisotropic scaling/snapping, but works hierarchically without
|
|
|
|
|
opening gaps. It operates on a top cell and on all layers.
|
|
|
|
|
* Enhancement: new Region#pull_* methods and DRC features
|
2019-11-06 22:24:03 +01:00
|
|
|
"pull_*" is a class of methods that allows rehierarchisation
|
|
|
|
|
of shapes. These methods act similar to "interacting", but
|
|
|
|
|
the other way around: instead of delivering interacting
|
|
|
|
|
shapes of the first argument, it will deliver shapes of
|
|
|
|
|
the second argument. For example, "a.pull_interacting(b)"
|
|
|
|
|
will deliver polygons of b which interact with polygons
|
|
|
|
|
of a. As a side effect, the polygons of b will be stored
|
|
|
|
|
hierarchically close to the polygons of a. This provides
|
|
|
|
|
a way to "re-hierarchise" layout.
|
|
|
|
|
The full class of methods and DRC functions involve:
|
|
|
|
|
Region#pull_interacting, Region#pull_inside, Region#pull_overlapping
|
|
|
|
|
and the same functions for DRC.
|
|
|
|
|
"pull_interacting" is also available for the Edges class
|
|
|
|
|
and edge layers in DRC.
|
|
|
|
|
* Enhancement: Net tracer bug fix for heavily decomposed polygons
|
|
|
|
|
The net tracing feature now can operate on heavily decompose
|
|
|
|
|
polygons as well. Such layouts can be created by using a low
|
|
|
|
|
max. vertex count on GDS write. The problem were small
|
|
|
|
|
triangles with an area of 0.5 square DBU.
|
|
|
|
|
* Enhancements: General fixes of deep DRC mode
|
|
|
|
|
Some inconsistencies with merged/raw mode have been
|
|
|
|
|
removed. Performance was enhanced in a few places.
|
|
|
|
|
Multithreaded mode now works more reliably.
|
|
|
|
|
* Enhancements/bugfixes: various LVS improvements
|
|
|
|
|
The backtracking algorithm should work more reliable
|
|
|
|
|
in cases of ambiguities and floating nets or pins.
|
|
|
|
|
Performance should be better in some cases.
|
|
|
|
|
LVS script structure is less rigid now. "cheats" to
|
|
|
|
|
forcibly ignore hierarchy interactions for some
|
|
|
|
|
cells (useful for SRAM layout for example).
|
|
|
|
|
Still there is some work to do.
|
|
|
|
|
|
2019-09-10 07:42:15 +02:00
|
|
|
0.26 (2019-09-10):
|
2018-09-11 07:36:24 +02:00
|
|
|
|
2019-09-09 19:45:20 +02:00
|
|
|
* Bugfix: %GITHUB%/issues/197
|
|
|
|
|
Python: Reimplemented methods are not getting called
|
|
|
|
|
* Bugfix: %GITHUB%/issues/236
|
|
|
|
|
Crash when using "Delete all rulers"
|
|
|
|
|
* Bugfix: %GITHUB%/issues/251
|
|
|
|
|
Register application exit handler in Ruby
|
|
|
|
|
* Bugfix: %GITHUB%/issues/264
|
|
|
|
|
Python exceptions are redirected when PCell is used
|
|
|
|
|
* Bugfix: %GITHUB%/issues/265
|
|
|
|
|
LEF file can't be read
|
|
|
|
|
* Bugfix: %GITHUB%/issues/277
|
|
|
|
|
Region#min_coherence is not recognized by Region#sized
|
|
|
|
|
* Bugfix: %GITHUB%/issues/293
|
|
|
|
|
File/Setup menu and dialog names are inconsistent
|
|
|
|
|
* Bugfix: %GITHUB%/issues/294
|
|
|
|
|
Cannot display the right icon in Ubuntu
|
|
|
|
|
* Bugfix: %GITHUB%/issues/302
|
|
|
|
|
Display issues with small cells
|
|
|
|
|
* Bugfix: %GITHUB%/issues/305
|
|
|
|
|
CIF box positions are incorrect when a rotation is specified
|
|
|
|
|
* Bugfix: %GITHUB%/issues/306
|
|
|
|
|
Round corners issue
|
|
|
|
|
* Bugfix: %GITHUB%/issues/316
|
|
|
|
|
Text capture box has zero dimension for move
|
|
|
|
|
* Bugfix: %GITHUB%/issues/318
|
|
|
|
|
Unable to disable a key binding
|
|
|
|
|
* Bugfix: %GITHUB%/issues/321
|
|
|
|
|
Something's wrong with tip windows
|
|
|
|
|
* Bugfix: %GITHUB%/issues/322
|
|
|
|
|
CIF, error when changing layer name while file open in KLayout
|
|
|
|
|
* Bugfix: %GITHUB%/issues/330
|
|
|
|
|
DXF reader stalls
|
|
|
|
|
* Bugfix: %GITHUB%/issues/337
|
|
|
|
|
Annotation: make "cross" styles available for scripts
|
|
|
|
|
* Bugfix: %GITHUB%/issues/338
|
|
|
|
|
Unreadable Assistant document: QComboBox
|
|
|
|
|
* Bugfix: Rare crash fixed with line width > 1
|
|
|
|
|
With line widths > 1, segfaults have been observed in some
|
|
|
|
|
rare cases.
|
|
|
|
|
* Enhancement: %GITHUB%/issues/287
|
|
|
|
|
Return an ObjectInstPath from the RecursiveShapeIterator
|
|
|
|
|
* Enhancement: %GITHUB%/issues/317
|
|
|
|
|
"infix move"
|
|
|
|
|
* Enhancement: %GITHUB%/issues/333
|
|
|
|
|
Ruby/Python automation of "auto measure"
|
|
|
|
|
* Enhancement: %GITHUB%/issues/342
|
|
|
|
|
Ruler properties editor: swap points and snap to object buttons
|
|
|
|
|
* Enhancement: %GITHUB%/issues/343
|
|
|
|
|
Dockable bookmark window
|
|
|
|
|
* Enhancement: Hierarchical mode for DRC ("deep" keyword)
|
|
|
|
|
DRC can be put into hierarchical mode with the "deep"
|
|
|
|
|
statement at the beginning of the file.
|
|
|
|
|
In hierarchical mode, most operations are performed
|
|
|
|
|
in a hierarchical fashion - i.e. trying to maintain
|
|
|
|
|
as much from the original hierarchy as possible.
|
|
|
|
|
* Enhancements: Antenna checks for DRC
|
|
|
|
|
DRC now got an antenna check feature. Netlist extraction
|
|
|
|
|
is the basis for this feature.
|
|
|
|
|
* Enhancement: Hierarchical mode in XOR tool and "strmxor"
|
|
|
|
|
The XOR tool and the "strmxor" buddy tool provide
|
|
|
|
|
switches to enable hierarchical mode. These options
|
|
|
|
|
are considered experimental currently as XOR between
|
|
|
|
|
two different layouts was not the implementation goal.
|
|
|
|
|
* Enhancement: Netlist extraction
|
|
|
|
|
KLayout supports extraction of netlists from a layout.
|
|
|
|
|
This is the first step towards LVS. This feature includes
|
|
|
|
|
an infrastructure providing netlist data structures
|
|
|
|
|
(with Ruby/Python bindings), Netlist readers and writers
|
|
|
|
|
(Spice format), device recognition and a netlist browser.
|
|
|
|
|
* Enhancement: LVS
|
|
|
|
|
The LVS feature is based on the netlist extraction capabilities.
|
|
|
|
|
It adds netlist vs. netlist compare and the corresponding
|
|
|
|
|
infrastructure.
|
|
|
|
|
LVS is a new script environment that is based on the DRC feature
|
|
|
|
|
and extends the DRC script language by LVS elements.
|
|
|
|
|
* Enhancement: Command line option -mn to open netlist database
|
|
|
|
|
* Enhancement: Net tracer "trace all nets"
|
|
|
|
|
Based on the netlist extraction feature, an alternative mode
|
|
|
|
|
for net tracing is provided. With "trace all nets", no a single
|
|
|
|
|
but all nets are traced at once. Probing then happens in the
|
|
|
|
|
final nets extracted rather than providing the seed shape.
|
|
|
|
|
"Trace all nets" operates in hierarchical mode and therefore
|
|
|
|
|
usually is faster and has a smaller memory footprint when
|
|
|
|
|
extracting huge nets such as power nets.
|
|
|
|
|
* Enhancement: Library browser
|
|
|
|
|
The library browser is a dockable tool window which shows
|
|
|
|
|
all libraries installed. Use drag and drop to place a library
|
|
|
|
|
cell from the library browser in edit mode.
|
2019-09-09 23:06:22 +02:00
|
|
|
* Enhancement: Layout query enhancements
|
2019-09-09 19:45:20 +02:00
|
|
|
Layout queries (aka "Search and replace") now allow specification
|
|
|
|
|
of Variables when using the script API. The performance of queries has been
|
|
|
|
|
enhanced in the case of cell tree recursion.
|
|
|
|
|
* Enhancement: Gridline colors
|
|
|
|
|
The grid lines (or dots, depending on the style) can now be given
|
|
|
|
|
different colors for axes, grid lines and the ruler inset.
|
|
|
|
|
* Enhancement: Multiple files on import
|
|
|
|
|
The "File/Import/Other files into current" feature now allows
|
|
|
|
|
importing multiple files into the current layout.
|
|
|
|
|
* Enhancement: Python standalone module
|
|
|
|
|
KLayout supports production of standalone Python modules
|
|
|
|
|
which provide the same features than the "pya" module but
|
|
|
|
|
for use without the KLayout binary. If installed properly,
|
|
|
|
|
"import klayout" will pull in all modules. "import klayout.db"
|
|
|
|
|
will pull in the database part.
|
|
|
|
|
Deployment on PyPI is supported.
|
|
|
|
|
* Enhancement: Modal help dialog from modal windows
|
|
|
|
|
When using Assistant links in the UI, the assistant now is shown
|
|
|
|
|
as a modal window when called from a modal dialog. Before, the
|
|
|
|
|
Assistant window wasn't usable in this case.
|
2018-06-24 15:42:18 +02:00
|
|
|
|
2019-09-09 19:45:20 +02:00
|
|
|
0.25.9 (2019-06-18):
|
|
|
|
|
|
|
|
|
|
* Bugfix: %GITHUB%/issues/261
|
|
|
|
|
Issue with iterating Python sequences
|
|
|
|
|
* Bugfix: %GITHUB%/issues/271
|
|
|
|
|
Chose cell coordinates on "Make Cell"
|
|
|
|
|
* Bugfix: %GITHUB%/issues/272
|
|
|
|
|
Error message if trying to run macros in unsupported languages
|
|
|
|
|
* Bugfix: %GITHUB%/issues/275
|
|
|
|
|
"Write without context" did not have an effect with OASIS
|
|
|
|
|
* Bugfix: %GITHUB%/issues/276
|
|
|
|
|
LayerPropertiesNodeRef was not working as documented
|
|
|
|
|
* Bugfix: %GITHUB%/issues/278
|
|
|
|
|
Lost reference with ObjectInstPath#shape
|
|
|
|
|
* Bugfix: %GITHUB%/issues/281
|
|
|
|
|
Width and space violations are reported now also for
|
|
|
|
|
the "kissing corners" case
|
|
|
|
|
|
|
|
|
|
0.25.8 (2019-02-23):
|
|
|
|
|
|
|
|
|
|
* Bugfix: %GITHUB%/issues/234
|
|
|
|
|
Issues with LayoutView#save_image_with_options
|
|
|
|
|
* Bugfix: %GITHUB%/issues/232
|
|
|
|
|
Crash on reading .lyp files with big stipple pattern
|
|
|
|
|
* Bugfix: %GITHUB%/issues/228
|
|
|
|
|
Bug in Region#interact and DRC's "interact" function.
|
|
|
|
|
* Bugfix: %GITHUB%/issues/225
|
|
|
|
|
Mirrored custom stipple pattern
|
|
|
|
|
|
|
|
|
|
0.25.7 (2019-01-09):
|
|
|
|
|
|
|
|
|
|
* Bugfix: %GITHUB%/issues/200
|
|
|
|
|
Safer iteration of cell instances and shapes (with
|
|
|
|
|
modifications of container during iteration) - in this
|
|
|
|
|
case while flattening instances
|
|
|
|
|
* Bugfix: %GITHUB%/issues/209
|
|
|
|
|
Reader options were grayed out in stream import feature.
|
|
|
|
|
* Bugfix: %GITHUB%/issues/207
|
|
|
|
|
Basic.TEXT PCell was rounding bias a spacing values to
|
|
|
|
|
integer multiples.
|
|
|
|
|
* Bugfix: %GITHUB%/issues/203
|
|
|
|
|
A segfault was fixed that happend on certain platforms
|
|
|
|
|
when closing the application (e.g. CentOS7).
|
|
|
|
|
* Bugfix: (RBA/pya) Technology#load was not working
|
|
|
|
|
Instead of load, the technology was saved.
|
|
|
|
|
|
|
|
|
|
0.25.6 (2018-11-23):
|
|
|
|
|
|
|
|
|
|
* Enhancement: %GITHUB%/pull/199
|
|
|
|
|
Added an option to export DXF polygons as LINE objects
|
|
|
|
|
* Bugfix: %GITHUB%/issues/198
|
|
|
|
|
Stitching of DXF contours wasn't taking nearest neighbours
|
|
|
|
|
* Bugfix: %GITHUB%/issues/191
|
|
|
|
|
MainWindow/PluginRoot classes got mixed up
|
|
|
|
|
As a side effect of this fix, layout views can now
|
|
|
|
|
be configured individually. This wasn't working
|
|
|
|
|
consistently before.
|
|
|
|
|
|
2018-09-30 23:19:37 +02:00
|
|
|
0.25.5 (2018-09-30):
|
2018-08-31 23:25:19 +02:00
|
|
|
|
2019-01-10 00:50:13 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/162
|
2018-08-31 23:25:19 +02:00
|
|
|
GDS2 LIBNAME was not maintained on "File/Save".
|
2019-01-10 00:50:13 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/166
|
2018-09-19 22:05:39 +02:00
|
|
|
Internal error when writing GDS files (breaking of polygons)
|
2019-01-10 00:50:13 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/172
|
2018-09-30 23:19:37 +02:00
|
|
|
DEF reader did not pull vias from LEF
|
2019-01-10 00:50:13 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/174
|
2018-09-30 23:19:37 +02:00
|
|
|
Performance issue with many layers with width >1
|
2019-01-10 00:50:13 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/176
|
2018-09-30 23:19:37 +02:00
|
|
|
Painting issue with texts
|
2019-01-10 00:50:13 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/185
|
2018-10-14 23:52:08 +02:00
|
|
|
Hash values available as __hash__ standard method now
|
|
|
|
|
for Python
|
2018-09-19 22:05:39 +02:00
|
|
|
* Bugfix: some potential memory corruption issues fixed
|
|
|
|
|
During the efforts for making the code base compatible
|
|
|
|
|
with MSVC, some potential candidates for memory corruption
|
|
|
|
|
have been identified and fixed.
|
|
|
|
|
These fixes are included in this release.
|
2018-08-31 23:25:19 +02:00
|
|
|
|
2018-08-25 23:13:14 +02:00
|
|
|
0.25.4 (2018-08-25):
|
2019-01-10 00:50:13 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/121
|
2018-07-11 00:40:58 +02:00
|
|
|
Issue with multiple reads of GDS2 layouts including PCells
|
2019-01-10 00:50:13 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/134
|
2018-07-11 00:40:58 +02:00
|
|
|
Error in cell.fill_region caused by big polygon with
|
|
|
|
|
spikes
|
2019-01-10 00:50:13 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/139
|
2018-07-11 00:40:58 +02:00
|
|
|
Libraries have not been reassigned when loading a GDS file
|
|
|
|
|
from command line (does not happen on File/Open)
|
2019-01-10 00:50:13 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/141
|
2018-07-12 21:33:19 +02:00
|
|
|
Issue with RBA::QHostAddress (ambiguous overload) on Qt5
|
2019-01-10 00:50:13 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/142
|
2018-07-12 21:16:14 +02:00
|
|
|
Issue with RBA::RecursiveShapeIterator#region=
|
2019-01-10 00:50:13 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/144
|
2018-07-30 21:13:54 +02:00
|
|
|
The Salt package descriptions are not shown with Motif
|
|
|
|
|
style
|
2019-01-10 00:50:13 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/148
|
2018-07-28 00:17:02 +02:00
|
|
|
Wrong font is used
|
2019-01-10 00:50:13 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/152
|
2018-08-13 20:39:38 +02:00
|
|
|
Shapes#size reported a wrong shape count in viewer mode
|
2019-01-10 00:50:13 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/153
|
2018-08-25 23:13:14 +02:00
|
|
|
Application crash when editing guiding shape properties
|
2019-01-10 00:50:13 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/155
|
2018-08-13 20:39:38 +02:00
|
|
|
Program freezes after replacing nothing by something in
|
|
|
|
|
Macro editor
|
2019-01-10 00:50:13 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/157
|
2018-08-13 20:59:04 +02:00
|
|
|
"Replace cell with ..." rejected cell names with a library
|
|
|
|
|
prefix
|
2019-01-10 00:50:13 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/158
|
2018-08-25 23:13:14 +02:00
|
|
|
Repaint issue on cell context
|
2019-01-10 00:50:13 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/159
|
2018-08-25 23:13:14 +02:00
|
|
|
Tech specific macros and DRC scripts were not shown in tech
|
|
|
|
|
manager
|
2018-07-11 00:40:58 +02:00
|
|
|
* Bugfix: 8 bit indexed GIF images can be used for package icons now
|
2018-07-12 21:58:36 +02:00
|
|
|
* Enhancement: Provide a way to specify the type of a macro
|
|
|
|
|
This feature is mainly useful for command line arguments.
|
|
|
|
|
If you run KLayout with "klayout -b -r myscript"
|
|
|
|
|
it will not be able to determine the type of macro without
|
|
|
|
|
a suffix.
|
|
|
|
|
|
|
|
|
|
You can now explicitly specify a certain type by
|
|
|
|
|
giving the suffix implicitly like: "klayout -b -r myscript[rb]"
|
|
|
|
|
This will read "myscript" but pretend it was "myscript.rb"
|
|
|
|
|
and execute it as Ruby script.
|
|
|
|
|
|
|
|
|
|
This feature is handy if you need to run a file with a
|
|
|
|
|
specific interpreter but cannot modify the file name.
|
2018-07-11 00:40:58 +02:00
|
|
|
* Enhancement: Selection now shows PCell display names
|
|
|
|
|
Before, the internal name was shown for instances
|
|
|
|
|
* Enhancement: There is an option in the View menu to show or hide markers
|
|
|
|
|
Markers may hide layout under them. With this feature you can
|
|
|
|
|
quickly disable all markers and the layout becomes visible.
|
|
|
|
|
|
2018-05-04 21:21:14 +02:00
|
|
|
0.25.3 (2018-05-03):
|
2018-04-24 21:26:21 +02:00
|
|
|
|
2018-05-02 21:47:30 +02:00
|
|
|
* Enhancement: Compile option to use libcurl instead of QtNetwork
|
|
|
|
|
This workaround enables builds on the native CentOS6
|
|
|
|
|
configuration with the package manager functional.
|
2018-04-28 10:36:13 +02:00
|
|
|
* Enhancement: Pass label (text) layers through DRC script
|
|
|
|
|
The "labels" method now allows copying labels from a layer
|
|
|
|
|
to the output.
|
2018-04-24 21:26:21 +02:00
|
|
|
* Enhancement: New "split" method for polygons
|
|
|
|
|
This method will fragment the polygons into two or more
|
|
|
|
|
smaller parts for reducing their vertex count.
|
2018-04-28 00:21:36 +02:00
|
|
|
* Enhancement: New "dtrans" method for RecursiveShapeIterator
|
|
|
|
|
This method delivers the transformation in micron unit space
|
|
|
|
|
* Enhancement: New "insert" methods for Shapes
|
|
|
|
|
Shapes can now insert from another Shapes container and
|
|
|
|
|
from a RecursiveShapeIterator. Possible applications are
|
|
|
|
|
fast flattening and fast region selection.
|
2018-04-28 09:46:42 +02:00
|
|
|
* Enhancement: New method to generate RDB items from shapes
|
|
|
|
|
RdbItem#add_value from a shape, RdbDatabase#create_items
|
|
|
|
|
from a shapes container or recursive shape iterator and
|
|
|
|
|
RdbDatabase#create_item from a shape.
|
2018-04-24 21:26:21 +02:00
|
|
|
* Enhancement: DXF and CIF "keep layer names"
|
|
|
|
|
If this option is set in the reader options, layer names
|
|
|
|
|
are not translated into GDS layer/datatype pairs.
|
|
|
|
|
Specifically a layer called "L5" for example is not
|
|
|
|
|
translated to 5/0 and to "L5D0" on output correspondingly.
|
|
|
|
|
The buddy script option is "--keep-layer-names".
|
|
|
|
|
* Enhancement: DXF contour joining accuracy
|
|
|
|
|
On the DXF reader's options, a contour joining accuracy
|
|
|
|
|
can be specified. Small gaps smaller than this accuracy
|
|
|
|
|
will be closed when forming joined contours from edges.
|
|
|
|
|
The buddy script option is --dxf-contour-accuracy=value.
|
|
|
|
|
* Bugfix: DXF display issue
|
|
|
|
|
In some cases, DXF cell instances did not trigger bounding
|
|
|
|
|
box update and the cells only got visible after save and
|
|
|
|
|
load.
|
2018-04-24 21:48:57 +02:00
|
|
|
* Bugfix: XOR progress is more realistic
|
|
|
|
|
The progress is updated after the layer has been computed,
|
|
|
|
|
not before.
|
2019-01-10 00:50:13 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/117
|
2018-04-24 21:26:21 +02:00
|
|
|
DTrans#itype was broken.
|
2019-01-10 00:50:13 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/116
|
2018-04-24 21:26:21 +02:00
|
|
|
Fixed a polygon decomposition bug when writing GDS files
|
|
|
|
|
with big polygons with many holes. As a side effect, the
|
|
|
|
|
polygons with many holes computed by a NOT operation for
|
|
|
|
|
example are less complex and spikes in the cutlines are
|
|
|
|
|
avoided.
|
2019-01-10 00:50:13 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/115
|
2018-04-24 21:26:21 +02:00
|
|
|
Reader options were not persisted.
|
2019-01-10 00:50:13 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/114
|
2018-04-24 21:26:21 +02:00
|
|
|
Custom line styles not loaded from tech's layer properties
|
|
|
|
|
file.
|
2019-01-10 00:50:13 +01:00
|
|
|
* Enhancement: %GITHUB%/issues/113
|
2018-04-29 23:02:40 +02:00
|
|
|
The XOR tool has an option now to heal result shapes which
|
|
|
|
|
cross tile boundaries. The result shape count of tiled
|
|
|
|
|
and non-tiled mode should basically be the same then.
|
2019-01-10 00:50:13 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/112
|
2018-04-24 21:26:21 +02:00
|
|
|
Salt package repository relative paths have not been working.
|
2019-01-10 00:50:13 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/109
|
2018-04-24 21:26:21 +02:00
|
|
|
Issues with Python 3 and shape properties - property
|
2019-01-10 00:50:13 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/108
|
2018-04-24 21:26:21 +02:00
|
|
|
Bugfix on Box#enlarge and Box#moved for empty boxes.
|
|
|
|
|
keys generated with Python 3 could not be written to GDS2.
|
2019-01-10 00:50:13 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/107
|
2018-04-24 21:26:21 +02:00
|
|
|
Undo not working with shapes.
|
2019-01-10 00:50:13 +01:00
|
|
|
* Enhancement: %GITHUB%/issues/106
|
2018-04-24 21:26:21 +02:00
|
|
|
Search & replace help page enhancements.
|
|
|
|
|
|
2018-03-20 09:52:34 +01:00
|
|
|
0.25.2 (2018-03-20):
|
2019-01-10 00:50:13 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/90
|
2018-03-17 20:07:06 +01:00
|
|
|
DRC: "extended" was not working as expected with "joined = true"
|
2019-01-10 00:50:13 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/89
|
2018-03-17 20:07:06 +01:00
|
|
|
Display issue on MacOS fixed
|
2019-01-10 00:50:13 +01:00
|
|
|
* Enhancement: %GITHUB%/issues/85
|
2018-03-17 20:07:06 +01:00
|
|
|
IDE debugger: files can be excluded from showing exceptions when
|
|
|
|
|
they are thrown. To exclude a file press the new "Ignore" button
|
|
|
|
|
when the debugger tells you an exception has been generated.
|
|
|
|
|
To re-able exception reporting, clear the list of the files
|
|
|
|
|
in the IDE settings ("Debugging" tab)
|
|
|
|
|
The macro IDE settings can now be edited in the File/Setup
|
|
|
|
|
dialog.
|
2019-01-10 00:50:13 +01:00
|
|
|
* Bugfix: %GITHUB%/issues/94
|
2018-03-20 09:52:34 +01:00
|
|
|
Retina displays are support to some extend on MacOS.
|
|
|
|
|
An open topic is the quality of the icons.
|
|
|
|
|
* Enhancement: build system for MacOS
|
2018-03-17 20:07:06 +01:00
|
|
|
|
2018-02-23 23:05:39 +01:00
|
|
|
0.25.1 (2018-02-23):
|
2018-02-24 18:47:46 +01:00
|
|
|
* Enhancements: build compatibility with MacOS and Qt 5.9.
|
|
|
|
|
Qt 4.6 supported now as well with one restriction:
|
2018-02-22 06:23:36 +01:00
|
|
|
the package installation feature is not working.
|
2018-02-24 18:47:46 +01:00
|
|
|
* Bugfixs: Package manager
|
2018-02-22 06:23:36 +01:00
|
|
|
- Remove button wasn't enabled if multiple packages were selected
|
|
|
|
|
- A potential crash ob removing packages was fixed
|
|
|
|
|
* Enhancement: 64 bit coordinate support enabled on Windows builds
|
|
|
|
|
* Further bugfixes: See links
|
2019-01-10 00:50:13 +01:00
|
|
|
- %GITHUB%/issues/21 (Autorun(-early) doesn't seem to run when lym files are inside a package)
|
|
|
|
|
- %GITHUB%/issues/24 (Text insert dialog bug - Ok button isn't working)
|
|
|
|
|
- %GITHUB%/issues/26 (Exceptions are reported every time they propagate up in the call chain in the ruby debugger)
|
|
|
|
|
- %GITHUB%/issues/28 (CIF format detection failed)
|
|
|
|
|
- %GITHUB%/issues/30 (Writer options dialog non-functional on a fresh configuration)
|
|
|
|
|
- %GITHUB%/issues/32 (Rounding issue with instance properties)
|
|
|
|
|
- %GITHUB%/issues/33 (Plugin factory not working when using with Python)
|
|
|
|
|
- %GITHUB%/issues/36 (Hardening against destruction of object inside event handler)
|
|
|
|
|
- %GITHUB%/issues/39 (Action cannot be reassigned)
|
|
|
|
|
- %GITHUB%/issues/40 (Crash in Python binding)
|
|
|
|
|
- %GITHUB%/issues/41 (Polygon#touches? issue)
|
|
|
|
|
- %GITHUB%/issues/42 (Headless mode support with Qt5/-zz)
|
|
|
|
|
- %GITHUB%/issues/43 (Crash when using Qt specific command line options)
|
|
|
|
|
- %GITHUB%/issues/44 (Transformation constructor with x,y not working)
|
|
|
|
|
- %GITHUB%/issues/45 (Partial selection does not capture instance)
|
|
|
|
|
- %GITHUB%/issues/48 (Cancel does not reset current tool)
|
|
|
|
|
- %GITHUB%/issues/51 (Segmentation fault on return to main window and other opportunities)
|
|
|
|
|
- %GITHUB%/issues/53 (Unreadable 'about' text)
|
|
|
|
|
- %GITHUB%/issues/62 (QXmlSimpleReader#parse cannot be called)
|
|
|
|
|
- %GITHUB%/issues/63 (Wrong output on DRC non_interacting with empty second input)
|
|
|
|
|
- %GITHUB%/issues/64 (Crash on exit)
|
|
|
|
|
- %GITHUB%/issues/68 (OASIS reader issue with degenerated shapes)
|
|
|
|
|
- %GITHUB%/issues/69 (DRC: 'inside' does not merge shapes of second input)
|
|
|
|
|
- %GITHUB%/issues/71 (Target cell argument is required)
|
|
|
|
|
- %GITHUB%/issues/72 (Edges/Region NOT issue)
|
|
|
|
|
- %GITHUB%/issues/73 (Allow 'change layers' on PCells which support a single layer parameter)
|
|
|
|
|
- %GITHUB%/issues/74 (Small-corner boolean issue)
|
|
|
|
|
- %GITHUB%/issues/75 (Python PCell issue when parameters are called 'layer')
|
|
|
|
|
- %GITHUB%/issues/79 (Replace function enabled also for read-only macros)
|
2018-02-22 06:23:36 +01:00
|
|
|
* Further enhancements: see links
|
2019-01-10 00:50:13 +01:00
|
|
|
- %GITHUB%/issues/29 (Permissive mode for OASIS writer on odd-width paths)
|
|
|
|
|
- %GITHUB%/issues/59 (Async download of package index and details)
|
|
|
|
|
- %GITHUB%/issues/66 (Authentication dialog indicates retry)
|
|
|
|
|
- %GITHUB%/issues/77 (Layout#copy_tree now works in non-editable mode too)
|
2018-02-22 06:23:36 +01:00
|
|
|
|
2017-11-05 22:21:31 +01:00
|
|
|
0.25 (2017-11-04):
|
|
|
|
|
* Enhancement: Menu customization
|
|
|
|
|
Menu items can be disabled or enabled now. The former
|
|
|
|
|
"Key Bindings" configuration page has been turned into
|
|
|
|
|
"Menu Customization". Check boxes allow enabling or
|
|
|
|
|
disabling of menu items. Disabled menu items are not
|
|
|
|
|
shown.
|
|
|
|
|
A search filter allows quick selection of menu items
|
|
|
|
|
by title or path.
|
2017-10-29 19:01:13 +01:00
|
|
|
* Enhancement: The cell tree no longer is collapsed on edits
|
2017-10-25 00:33:41 +02:00
|
|
|
or when the sorting order changes.
|
2017-10-22 23:36:39 +02:00
|
|
|
* Enhancement: Using a special menu path, macros can be
|
|
|
|
|
configured to appear in submenus now.
|
2017-10-12 22:20:40 +02:00
|
|
|
* Enhancement: KLAYOUT_HOME environment variable to
|
|
|
|
|
control the location of the application folder.
|
|
|
|
|
The application folder is the place where KLayout
|
|
|
|
|
keeps the configuration, macros, packages and
|
|
|
|
|
other things.
|
2017-09-10 19:04:31 +02:00
|
|
|
* Enhancements: Major overhaul of the build environment
|
|
|
|
|
- Qt5 supported now
|
|
|
|
|
- Employs qmake as build system
|
|
|
|
|
- Reorganisation of the sources
|
|
|
|
|
- Continuous integration enabled (unit tests
|
|
|
|
|
integrated in .pro files, JUnit output etc.)
|
|
|
|
|
- Compatible with the clang compiler
|
|
|
|
|
* Enhancements: Buddy tools: KLayout now comes with a set of
|
|
|
|
|
additional executables that provide some functionality
|
|
|
|
|
subset in a lean way. These binaries are named "strm..."
|
|
|
|
|
and are installed along with KLayout.
|
|
|
|
|
- strm2cif: converts any format to CIF
|
|
|
|
|
- strm2dxf: converts any format to DXF
|
|
|
|
|
- strm2gds: converts any format to GDS2
|
|
|
|
|
- strm2gdstxt: converts any format to GDS2/text
|
|
|
|
|
- strm2oas: converts any format to OASIS
|
|
|
|
|
- strm2txt: converts any format to plain text (internally)
|
|
|
|
|
- strmclip: creates a clip from a file
|
|
|
|
|
- strmcmp: compares two files (logically)
|
|
|
|
|
- strmxor: compares two files (geometrically)
|
|
|
|
|
For more information, use the "-h" or "--help" option.
|
|
|
|
|
* Enhancements: HTTPS support for loading files from URL's directly
|
|
|
|
|
* Enhancements: Numerous enhancements and optimizations in the RBA/pya
|
|
|
|
|
area and in the debugger.
|
|
|
|
|
* Enhancements: KLayout notifies the user when a file was changed and
|
|
|
|
|
asks whether to reload.
|
|
|
|
|
* Enhancements: "File cell or layer": type into the cell or layer list to jump to the
|
|
|
|
|
cell name typed.
|
|
|
|
|
* Enhancements: Advanced search features in the filter entry box
|
|
|
|
|
for the cell selection form: Case sensitive/insensitive,
|
|
|
|
|
glob pattern, clear button.
|
|
|
|
|
* Enhancements: Tree expansion icons have a better contrast now on Windows
|
|
|
|
|
with dark background.
|
|
|
|
|
* Enhancements: Forward and backward navigation buttons in the main window.
|
|
|
|
|
These buttons jump to the previous or next display state:
|
|
|
|
|
zoom window, hierarchy depth, etc..
|
|
|
|
|
* Enhancements: A Package manager is provided. Packages are add-ons for
|
|
|
|
|
KLayout and can include macros, script libraries, fonts
|
|
|
|
|
for the TEXT PCell, technologies, DRC scripts etc.
|
|
|
|
|
Packages can be published on GitHub or any server
|
|
|
|
|
supporting WebDAV. After registering a package, users
|
|
|
|
|
can install or update packages with a few clicks.
|
2019-01-10 00:50:13 +01:00
|
|
|
For more information see %GITHUB%/wiki
|
2017-09-10 19:04:31 +02:00
|
|
|
or "About Packages" in the "Various Topics" area of the main
|
|
|
|
|
documentation. The package manager is found in the "Tools"
|
|
|
|
|
menu under "Manage Packages".
|
|
|
|
|
* Enhancements: LEF/DEF reader:
|
|
|
|
|
- Compatibility fixes with version 5.8
|
|
|
|
|
- Regions and Groups are supported now
|
|
|
|
|
- LEF/DEF is a standare format now and
|
|
|
|
|
can be used with "File/Open" for example.
|
2017-09-26 22:30:00 +02:00
|
|
|
* Enhancement: DXR reader supports variable path widths now
|
|
|
|
|
* Enhancement: XOR provides graphical progress
|
2017-09-10 19:04:31 +02:00
|
|
|
* Enhancements: Libraries can be associated with a technology. Only libraries
|
|
|
|
|
associated with the selected technology are shown in the selection
|
|
|
|
|
dialog.
|
|
|
|
|
* Enhancements: Overlapping instances are easier to select now (instance
|
|
|
|
|
selection cycling).
|
|
|
|
|
* Enhancements: Many more methods in RBA/pya. For example:
|
|
|
|
|
- Ability to directly insert "D" types (such as DBox
|
|
|
|
|
into layouts and cells.
|
|
|
|
|
- RBA::RecursiveShapeIterator now supports complex (non-rectangular)
|
|
|
|
|
search regions
|
|
|
|
|
- A more consistent type framework (consistent complex transformation
|
|
|
|
|
types, vectors)
|
|
|
|
|
- More intuitive interface in certain objects (i.e. CellView,
|
|
|
|
|
LayerPropertiesNode, Annotation etc.). Changing an attribute
|
|
|
|
|
usually has an immediate effect on the respective property now
|
|
|
|
|
("live objects")
|
|
|
|
|
- Hash functions for certain objects - Box, Edge, Trans, Polygon,
|
|
|
|
|
and other objects can be used as dictionary keys now.
|
|
|
|
|
- New import methods for Region, EdgePairs and Edges
|
|
|
|
|
- New features for LayerMapping and CellMapping
|
|
|
|
|
- Multiple selected cells in LayoutView
|
|
|
|
|
- RBA::TextGenerator to supply the Basic.TEXT PCell's
|
|
|
|
|
functionality as static feature
|
|
|
|
|
- Receivers can be added to signals and removed from
|
|
|
|
|
signals now.
|
|
|
|
|
- Individual instance iterator for CellInstArray
|
|
|
|
|
- ...
|
|
|
|
|
* Enhancements: Enhanced layout statistics form with detailed shape
|
|
|
|
|
statistics.
|
|
|
|
|
* Enhancements: Line styles (dashed, dotted etc.) available now.
|
|
|
|
|
Works best with manhattan layouts.
|
|
|
|
|
* Enhancements: "Marked box mode": boxes are drawn with a cross.
|
|
|
|
|
* Enhancements: Arbitrary pattern size for custom fill pattern (no
|
|
|
|
|
limited to multiples of 8). Max size is 32x32.
|
|
|
|
|
Enhanced annotations:
|
|
|
|
|
- Ellipses
|
|
|
|
|
- Position markers
|
|
|
|
|
- Text alignment
|
|
|
|
|
- "Auto measure" rulers (place a ruler measuring the
|
|
|
|
|
distances between adjacent objects with a single
|
|
|
|
|
click)
|
|
|
|
|
* Enhancements: DRC enhancements:
|
|
|
|
|
- Text support
|
|
|
|
|
- "smoothed" function
|
|
|
|
|
- "layers" function delivers all layers read
|
|
|
|
|
- Polygon with edge interactions
|
|
|
|
|
- middle and extent_refs methods for center point and other
|
|
|
|
|
references
|
|
|
|
|
- "corners" function
|
|
|
|
|
- "collect...", "select" and "each" methods
|
|
|
|
|
* Enhancements: GDS2 paths can now use the MultiXY extension too.
|
|
|
|
|
* Enhancements: X2 Support for Gerber import.
|
|
|
|
|
* Enhancements: A function to reset the window state after the
|
|
|
|
|
window has been misconfigured (i.e. detaching or closing
|
|
|
|
|
the dockable windows). This feature is found in
|
|
|
|
|
View/Restore Window.
|
|
|
|
|
|
|
|
|
|
0.24.10 (2016-04-01):
|
|
|
|
|
* Enhancements: New method CellView#is_dirty?
|
|
|
|
|
This method indicates that a cell view needs saving
|
|
|
|
|
* Bugfix: DEF reader was not able to read routing
|
|
|
|
|
Routed segments with vias plus continued wiring
|
|
|
|
|
were not read. Instead an error message was shown
|
|
|
|
|
saying "Invalid orientation specification"
|
|
|
|
|
* Bugfix: Setting "technology-data" configuration property did not work
|
|
|
|
|
Reading or writing the "technology-data" configuration
|
|
|
|
|
property is the only way to access technology data from
|
|
|
|
|
a script. Hence it's important that this property can
|
|
|
|
|
be set. With this patch, "technology-data" can be set
|
|
|
|
|
to an XML string which has the same format than the
|
|
|
|
|
one stored within the configuration file.
|
|
|
|
|
* Bugfix: Reader issues with some RVE files
|
|
|
|
|
The RVE reader could not read files with cell names
|
|
|
|
|
containing hyphens (like "A-B").
|
|
|
|
|
* Bugfix: Inplace operators are now working in Python too
|
|
|
|
|
For example "r1 += r2" was not working where r1 and r2
|
|
|
|
|
were pya.Region objects.
|
|
|
|
|
|
|
|
|
|
0.24.9 (2016-11-28):
|
|
|
|
|
* Enhancements: The RBA::Region#smooth function was enhanced to
|
|
|
|
|
give somewhat better results
|
|
|
|
|
* Enhancements: DXF's circle approximation can now also specified
|
|
|
|
|
through an "accuracy" parameter: if less than the number of
|
|
|
|
|
specified points is required to achieve the given accuracy, the
|
|
|
|
|
number is reduced accordingly. This also applies to the polygon
|
|
|
|
|
interpolation of spline and arc curves.
|
|
|
|
|
* Enhancement: RBA integration now is compatible with Ruby 2.3
|
|
|
|
|
which allows building on Ubuntu 16 as well.
|
|
|
|
|
* Enhancement: OASIS files with instance angles >360 were rejected
|
|
|
|
|
before. Now, this has turned into a warning.
|
|
|
|
|
* Bugfix: DEF reader was failing to read MASK/via combinations.
|
|
|
|
|
* Bugfix: The marker browser's "show only rules with errors" option
|
|
|
|
|
was enabled again on sorting of errors.
|
|
|
|
|
* Bugfix: Using Layout objects for inputs didn't work
|
|
|
|
|
* Bugfix: Copying Hierarchy treets containing PCell's made the
|
|
|
|
|
PCell's being turned into static cells.
|
|
|
|
|
|
|
|
|
|
0.24.8 (2016-06-19):
|
|
|
|
|
* Bugfix: XOR and different or big database units:
|
|
|
|
|
With tiling, XOR between two layouts with different database
|
|
|
|
|
units was still not working correctly. Also, when the database unit
|
|
|
|
|
was larger than 1nm, the XOR feature was dropping results sometimes
|
|
|
|
|
when tiling was on.
|
|
|
|
|
* Enhancements: progress bar shown also for "-z" mode scripts:
|
|
|
|
|
The solution of 0.24.7 has been modified to avoid annoying
|
|
|
|
|
progress bar windows popping up in background-window mode:
|
|
|
|
|
Now, progress bar windows will only pop up if an active main
|
|
|
|
|
window is present. This will enable progress bars for scripts that
|
|
|
|
|
open their own main windows but still keep the application GUI-less
|
|
|
|
|
when the script does not do so.
|
|
|
|
|
* Bugfix: Crash on empty panel:
|
|
|
|
|
When "New/Panel" is used a view without a layout is created.
|
|
|
|
|
An attempt to create layout on such panels crashed the application.
|
|
|
|
|
* Bugfix: LEF reader now can read PIN statements including VIA
|
|
|
|
|
* Bugfix: Polygon smoothing was not working properly in some cases
|
|
|
|
|
Previously the smoothing function was sometimes dropping vertexes
|
|
|
|
|
from the polygons.
|
|
|
|
|
Smoothing now does also guarantee not to exceed the given
|
|
|
|
|
distance.
|
|
|
|
|
* Bugfix: Sorting cells by area now sorts cells by name as second choice
|
|
|
|
|
In the previous version, cells with identical area were
|
|
|
|
|
grouped but the order was arbitrary. Now the name is used as
|
|
|
|
|
the second-level sorting criterion which keeps such cells
|
|
|
|
|
sorted by name.
|
|
|
|
|
|
|
|
|
|
0.24.7 (2016-05-01):
|
|
|
|
|
* Bugfix: XOR and different database units:
|
|
|
|
|
With tiling, XOR between two layouts with different database
|
|
|
|
|
units was not working correctly.
|
|
|
|
|
* Enhancements: progress bar shown also for "-z" mode scripts:
|
|
|
|
|
Scripts running in KLayout with the "-z" option (don't
|
|
|
|
|
show main window) were not experiencing progress reporting
|
|
|
|
|
before. Now a small modal window is shown during long-running
|
|
|
|
|
operations that indicates the progress and provides a Cancel
|
|
|
|
|
button to abort the operation.
|
|
|
|
|
* Bugfix: Crash on using "Edit/Make cell":
|
|
|
|
|
This happened sometimes if the selected objects contained
|
|
|
|
|
instances.
|
|
|
|
|
* Bugfix: Invalid behavior of paths with reflecting segments:
|
|
|
|
|
For example a path made of the points (0, 0), (0, 1000)
|
|
|
|
|
and (0, 0) had a reflecting segment which cause some
|
|
|
|
|
computations (for example the bounding box) to return
|
|
|
|
|
invalid results.
|
|
|
|
|
|
|
|
|
|
0.24.6 (2016-03-22):
|
|
|
|
|
* Bugfix: Early delete of plugin object when returning a new object
|
|
|
|
|
from PluginFactory#create_plugin. The returned object was
|
|
|
|
|
not held, so in Ruby the GC could destroy the object. This
|
|
|
|
|
could lead to crashes in applications employing the Plugin API.
|
|
|
|
|
* Bugfix: It was possible to edit read-only macros.
|
|
|
|
|
For example, it was possible to enter new lines in macros
|
|
|
|
|
marked as read-only. However, these changes were not saved.
|
|
|
|
|
* Bugfix: Shift+Tab not working in macro editor.
|
|
|
|
|
On some platforms, Shift+Tab was not working as expected.
|
|
|
|
|
This key combinations was supposed to left-shift a selected
|
|
|
|
|
block an undo indents.
|
|
|
|
|
* Bugfix: Wrong scaling of layers when doing XOR's with layouts
|
|
|
|
|
with different database units.
|
|
|
|
|
This happened when the layouts had different layers and
|
|
|
|
|
"summarize missing layers" was disabled.
|
|
|
|
|
* Bugfix: "Search & Replace" was not working properly if named
|
|
|
|
|
layers were present. Specifically the shape search was not
|
|
|
|
|
working due to an incorrectly formed query.
|
|
|
|
|
* Bugfix: Sizing produced incorrect results in case of slowly
|
|
|
|
|
varying polygon contours. The effect was a contour with
|
|
|
|
|
spiky distortions where two "almost parallel" edges
|
|
|
|
|
connected.
|
|
|
|
|
* Bugfix: The diff tool was not reporting differences correctly when
|
|
|
|
|
layers were present in one layout while they were not present
|
|
|
|
|
in the other. This happened specficially when "Summarize
|
|
|
|
|
missing layers" was disabled.
|
|
|
|
|
* Enhancement: New context mode in marker browser: "Current or Any".
|
|
|
|
|
In this mode, the markers are displayed in the context of the
|
|
|
|
|
current cell. If that is not possible because the markers are
|
|
|
|
|
given for cells outside the cell tree of the current cell, the
|
|
|
|
|
fallback is to show the markers in the current cell as in "Any"
|
|
|
|
|
mode.
|
|
|
|
|
* Enhancement: More consistent behaviour of cell and category filters
|
|
|
|
|
in the marker browser. For example, the category filter is
|
|
|
|
|
now also applied when selecting a node for a certain cell in
|
|
|
|
|
the cell branch and if nested categories are present, the
|
|
|
|
|
category filter is applied smarter - not just on each category.
|
|
|
|
|
|
|
|
|
|
0.24.5 (2016-02-26):
|
|
|
|
|
* Bugfix: Instance browser was messing up array instances sometimes.
|
|
|
|
|
After browsing instances, in some cases array instances got
|
|
|
|
|
messed up. This specifically happened with OASIS files.
|
|
|
|
|
* Enhancement: Diff tool does not care about text alignment and
|
|
|
|
|
font properties unless in "exact" mode. Previously alignment
|
|
|
|
|
flags and font properties were compared in non-exact mode too
|
|
|
|
|
causing some confusion for example when comparing OASIS vs.
|
|
|
|
|
GDS.
|
|
|
|
|
* Enhancement: XOR on layouts with different database units.
|
|
|
|
|
Previously, the XOR tool refused to run on layouts with
|
|
|
|
|
different database units.
|
|
|
|
|
* Bugfix: The OASIS writer's S_TOP_CELL standard property now will
|
|
|
|
|
correctly use an "n-string" value in strict mode.
|
|
|
|
|
* Bugfix: The OASIS writer bailed out on 1x1 cell arrays.
|
|
|
|
|
Now these pseudo arrays are written as single instances.
|
|
|
|
|
* Bugfix: GUI type support for QVariant.
|
|
|
|
|
RBA/pya did not provide constructors for QVariant from
|
|
|
|
|
GUI types like QColor and QFont. These have been added now.
|
|
|
|
|
The corresponding conversion functions to QColor, QFont etc.
|
|
|
|
|
are provided as well.
|
|
|
|
|
* Bugfix: Problems with QVariant constructor: some feature were not
|
|
|
|
|
usable. For example, a double value could not be passed to
|
|
|
|
|
the constructor. Disambiguators have been provided to solve
|
|
|
|
|
these issues.
|
|
|
|
|
* Enhancement: Cell/Category filter for marker browser. The marker
|
|
|
|
|
browser now has a filter entry box to select specific cells
|
|
|
|
|
or categories.
|
|
|
|
|
* Enhancement: Images are cached now for faster image update.
|
|
|
|
|
Specifically the "fit" image will be cached and if "fit" is
|
|
|
|
|
selected again, the image is restored rather quickly (provided
|
|
|
|
|
the window is not resized). The cache depth can be configured
|
|
|
|
|
in "Setup/Display/Optimization".
|
|
|
|
|
* Bugfix: "Read all other layers" option in LEF/DEF reader was
|
|
|
|
|
potentially assigning GDS layers which have been defined in
|
|
|
|
|
the layer mapping. Now, layers used in the layer map for
|
|
|
|
|
targets are blocked and not used for automatic assignment.
|
|
|
|
|
* Enhancement: The database unit can be configured now in LEF/DEF
|
|
|
|
|
import options. Previously it was fixed to 1 nm.
|
|
|
|
|
* Bugfix: RBA::LayerProperties#id was not always unique as stated
|
|
|
|
|
by the documentation. Specifically not after a file was loaded.
|
|
|
|
|
|
|
|
|
|
0.24.4 (2015-12-17):
|
|
|
|
|
* Enhancement: Layer colors are iterated for named layers without
|
|
|
|
|
layer numbers as well. Such layers are created when reading
|
|
|
|
|
DXF files for example and all layers had the same color
|
|
|
|
|
initially. Now, these layers will be assigned different colors.
|
|
|
|
|
* Bugfix: RBA::TilingProcess#threads was not working properly
|
|
|
|
|
when assigning a value of 1.
|
|
|
|
|
* Bugfix: The perimeter computation now has changed to 64 bit numerics
|
|
|
|
|
reducing the risk of numerical overflow. In earlier versions,
|
|
|
|
|
the perimeter computation of integer type shapes (polygons,
|
|
|
|
|
boxes, regions) was performed with 32 bit length which is
|
|
|
|
|
not sufficient to represent total perimeters of full layouts.
|
|
|
|
|
* Bugfix: The OASIS writer's S_TOP_CELL standard property now is
|
|
|
|
|
set to the correct value when using "Save cell as".
|
|
|
|
|
* Bugfix: Some patches are provided for enhanced compatibility with
|
|
|
|
|
MacOS. One MacOS-only bug was related to a crash when re-registering
|
|
|
|
|
of PCell's while developing then.
|
|
|
|
|
* Bugfix: PCell guiding shape parts could not be selected in partial
|
|
|
|
|
editing mode using a drawn selection box.
|
|
|
|
|
* Enhancement: The color of the guiding shapes can now be configured
|
|
|
|
|
individually.
|
|
|
|
|
* Bugfix: OASIS reader was not properly associating CELLNAME properties
|
|
|
|
|
with cells as the standard requires. Instead CELLNAME properties were
|
|
|
|
|
ignored.
|
|
|
|
|
* Bugfix: Strict mode compatibility issues in OASIS writer:
|
|
|
|
|
File level PROPERTY records were not put right at the beginning of the file,
|
|
|
|
|
empty tables were not listed with 0 position, property value strings were
|
|
|
|
|
not referenced by ID and the property modal variables were referenced
|
|
|
|
|
sometimes after name records (specifically CELLNAME with standard
|
|
|
|
|
properties enabled). According to the specification, the name records
|
|
|
|
|
reset these variables so this is not correct. Other readers may report
|
|
|
|
|
errors for such files.
|
|
|
|
|
* Enhancement: OASIS writer file size reduction. Now, the OASIS writer
|
|
|
|
|
will opimize the arrangement of cell array instances so that
|
|
|
|
|
modal variables can be used for a better compaction.
|
|
|
|
|
* Enhancement: During script debugging now the Assistant window is active
|
|
|
|
|
even while the debugger is executing a script. The main window is
|
|
|
|
|
still inactive however to avoid fatal cross-interactions between
|
|
|
|
|
the debugger and the user interface.
|
|
|
|
|
* Bugfix: The Python PCell sample was broken.
|
|
|
|
|
* Bugfix: slowly bending paths have not been displayed correctly.
|
|
|
|
|
* Bugfix: coordinates might have been swapped in the box properties
|
|
|
|
|
page when switching from local to absolute coordinates and
|
|
|
|
|
back.
|
|
|
|
|
* Bugfix: certain ruler styles with independent x and y axis have not
|
|
|
|
|
been displayed properly when using a global transformation.
|
|
|
|
|
* Enhancement: the performance of "Flatten cell" is enhanced significantly
|
|
|
|
|
in cases of many instances.
|
|
|
|
|
* Bugfix: DRC output was producing new layers with an empty layer name
|
|
|
|
|
selector (no major issue, but confusing).
|
|
|
|
|
|
|
|
|
|
0.24.3 (2015-11-05):
|
|
|
|
|
* Enhancement: PYTHONPATH does not mess up the Windows installation any
|
|
|
|
|
longer. If you want to set the PYTHONPATH for KLayout, use
|
|
|
|
|
KLAYOUT_PYTHONPATH.
|
|
|
|
|
* Bugfix: The oasis_write_std_properties attribute of RBA::SaveLayoutOptions
|
|
|
|
|
did not work as described. To maintain backward compatibility and
|
|
|
|
|
enable the cell bounding box feature, a new attribute called
|
|
|
|
|
oasis_write_cell_bounding_boxes was introduced.
|
|
|
|
|
* Bugfix: "Hide all" only hides the top level layer properties, not the
|
|
|
|
|
members of layer groups.
|
|
|
|
|
* Bugfix: S_BOUNDING_BOX standard properties now appear after CELLNAME
|
|
|
|
|
records in OASIS files as required by the OASIS specification.
|
|
|
|
|
* Bugfix: The unintuitive behavior of the "Writer Options" has been changed.
|
|
|
|
|
Now, the writer options are applied to the saved layout always, not
|
|
|
|
|
just on the first save. Previously, the program remembered the options
|
|
|
|
|
and reused the previous options on following saves. This was quite
|
|
|
|
|
unintuitive since changing the properties did not necessarily affect
|
|
|
|
|
the way files were written.
|
|
|
|
|
* Enhancement: The starting directory for files dialogs is the "Documents"
|
|
|
|
|
folder on Windows now. Not the current directory which is the
|
|
|
|
|
installation directory usually.
|
|
|
|
|
* Bugfix: Signal names are property set for RBA::QListWidget and other
|
|
|
|
|
objects. This enables the use of "indexesChanged" signals and eliminates
|
|
|
|
|
Qt runtime warnings.
|
|
|
|
|
* Bugfix: Library cells were not properly loaded again after reloading
|
|
|
|
|
a layout which used libraries which itself referred to other libraries.
|
|
|
|
|
* Bugfix: The program crashed sometimes when using report databases with
|
|
|
|
|
properties.
|
|
|
|
|
* Bugfix: Layers with a single box rendered wrong results in the DRC's
|
|
|
|
|
size function with strong undersize. The boxes did not vanish as
|
|
|
|
|
expected but instead were inverted.
|
|
|
|
|
* Enhancement: The build now is compatible with Python 2.6.
|
|
|
|
|
* Bugfix: Reading OASIS files in strict mode with cell names consisting
|
|
|
|
|
of a "$" character followed by an integer number (like "$1") sometimes
|
|
|
|
|
messed up the cells.
|
|
|
|
|
* Bugfix: RBA::TilingProcessor could not be used both with tile size and
|
|
|
|
|
tile count set since setting the tile size was resetting the tile
|
|
|
|
|
count and vice versa.
|
|
|
|
|
|
|
|
|
|
0.24.2 (2015-10-02):
|
|
|
|
|
* Bugfix: Flip and Rotate function did not work as expected when the view
|
|
|
|
|
was descended into the hierarchy.
|
|
|
|
|
* Enhancement: RBA::BrowserDialog now also accepts a parent parameter
|
|
|
|
|
which are important to better integrate such dialogs into the
|
|
|
|
|
application.
|
|
|
|
|
* Bugfix/enhancement: "klayout_vo.exe" now is a pure viewer application
|
|
|
|
|
again. By calling this executable, the edit functions cannot be
|
|
|
|
|
enabled and the save functions are disabled as well. Under Linux,
|
|
|
|
|
renaming the binary to "klayout_vo" switches KLayout into this
|
|
|
|
|
mode as well.
|
|
|
|
|
* Bugfix: The zoom and selection rectangle can now be dragged outside the
|
|
|
|
|
visible area and still define the zoom or selection rectangle.
|
|
|
|
|
* Bugfix: expressions were not coercing floating-point values consistently:
|
|
|
|
|
The expression "to_i(2)+1.4" rendered 3 instead of 3.4 as expected.
|
|
|
|
|
The sum was treated as an integer sum because the first operand is
|
|
|
|
|
an integer. Now the integer is converted into a floating-point value
|
|
|
|
|
as expected.
|
|
|
|
|
|
|
|
|
|
0.24.1 (2015-08-26):
|
|
|
|
|
* Enhancement: switched to -O2 instead of -O3 to avoid issues with certain
|
|
|
|
|
gcc versions for which -O3 appears to be broken.
|
|
|
|
|
* Bugfix: fixed a backward compatibility issue in scripting. Specifically
|
|
|
|
|
"view.each_object_selected { |s| s.shape }" will work again.
|
|
|
|
|
* Bugfix: the layer matching algorithm in the .lyp file layer assignment
|
|
|
|
|
is compatible with the previous version again. This specifically applies
|
|
|
|
|
to "wildcard" specifications. In 0.24, named and unnamed layers were
|
|
|
|
|
considered different even if GDS layer and datatype numbers were identical.
|
|
|
|
|
The effect was that if a named layer was present, a .lyp file specification
|
|
|
|
|
without that name was not matching the named layer and with "add other layers"
|
|
|
|
|
the named layer was produced again.
|
|
|
|
|
* Enhancement: "Apply all" in the object properties dialog behaves somewhat
|
|
|
|
|
more intuitive now. Specifically changing the path endcap styles now
|
|
|
|
|
works as expected. For the other properties, a choice was provided
|
|
|
|
|
between applying changes in a relative or absolute way. For example,
|
|
|
|
|
when the left edge of a box is changed, the left edges of all selected
|
|
|
|
|
boxes are shifted by the same amount in relative mode. In absolute mode,
|
|
|
|
|
the left edge will be set to the specified position for all selected boxes.
|
|
|
|
|
* Bugfix: Python iterators will keep a reference to the source object now.
|
|
|
|
|
This avoids problems when fetching iterated properties (typically "each..." methods)
|
|
|
|
|
from short-living objects.
|
|
|
|
|
* Bugfix: Python's StopIteration exception does no longer appear in the debugger
|
|
|
|
|
now. This is an exception used internally to mark the end of an iteration
|
|
|
|
|
sequence.
|
|
|
|
|
* Bugfix: "Path#width=" does no longer reset the round end flag.
|
|
|
|
|
* Enhancement: the "Show All" mode of the marker browser is persisted now.
|
|
|
|
|
|
|
|
|
|
0.24 (2015-07-25):
|
|
|
|
|
* Enhancement: Python support: Scripts and PCells can now be coded in Python as well. Python and Ruby
|
|
|
|
|
scripts may coexist in the same application and they can be debugged together. The macro
|
|
|
|
|
IDE features a Python tab in which Python scripts can be managed.
|
|
|
|
|
The language features of Python and Ruby are very similar, so the features of the
|
|
|
|
|
integration are highly comparable and easy to translate. The Python module
|
|
|
|
|
name is "pya".
|
|
|
|
|
* Bugfix: When using a layer with special hierarchy level settings (i.e. #*), the ruler did not snap to that shapes.
|
|
|
|
|
* Bugfix: Qt item ownership is now transferred on some methods. For example, "QTreeWidget#insertItem" now will
|
|
|
|
|
transfer ownership of the item to the tree widget. Hence, when the variable holding the item goes out of scope,
|
|
|
|
|
the tree item will not be destroyed.
|
|
|
|
|
* Enhancement: The shape selection can now be manipulated through scripts (new LayoutView methods "object_selection=",
|
|
|
|
|
"select_object" etc.)
|
|
|
|
|
* Enhancement: New edge vs. region operations are supported (edge AND region and edge MINUS region)
|
|
|
|
|
* Enhancement: RBA/pya objects now in general feature a "_manage" and "_unmanage" method will allows releasing
|
|
|
|
|
the ownership over an object in cases where object lifetime control is important (specifically when passing
|
|
|
|
|
objects around in Qt applications).
|
|
|
|
|
* Enhancement: Many new RBA methods, i.e.
|
2017-10-12 22:20:40 +02:00
|
|
|
- Annotation#id
|
|
|
|
|
- Cell#change_pcell_parameters
|
|
|
|
|
- Cell#pcell_parameters_by_name
|
|
|
|
|
- DPolygon#assign_hull (raw argument)
|
|
|
|
|
- DPolygon#assign_hole (raw argument)
|
|
|
|
|
- DPolygon#each_edge (with contour argument)
|
|
|
|
|
- DPolygon#insert_hole (raw argument)
|
|
|
|
|
- DPolygon#transform
|
|
|
|
|
- DSimplePolygon#initialize (raw parameter)
|
|
|
|
|
- DSimplePolygon#initialize (raw parameter)
|
|
|
|
|
- DSimplePolygon#set_points
|
|
|
|
|
- DSimplePolygon#transform
|
|
|
|
|
- EdgePairs#+
|
|
|
|
|
- Edges#& (with Region)
|
|
|
|
|
- Edges#&= (with Region)
|
|
|
|
|
- Edges#- (with Region)
|
|
|
|
|
- Edges#-= (with Region)
|
|
|
|
|
- Edges#inside_part
|
|
|
|
|
- Edges#select_inside_part
|
|
|
|
|
- Edges#outside_part
|
|
|
|
|
- Edges#select_outside_part
|
|
|
|
|
- Instance#change_pcell_parameter
|
|
|
|
|
- Instance#change_pcell_parameters
|
|
|
|
|
- Instance#convert_to_static
|
|
|
|
|
- Instance#flatten
|
|
|
|
|
- Instance#is_pcell?
|
|
|
|
|
- Instance#pcell_declaration
|
|
|
|
|
- Instance#pcell_parameters
|
|
|
|
|
- Instance#pcell_parameters_by_name
|
|
|
|
|
- Layout#begin_shapes (with cell ref)
|
|
|
|
|
- Layout#begin_shapes_overlapping (with cell ref)
|
|
|
|
|
- Layout#begin_shapes_touching (with cell ref)
|
|
|
|
|
- Layout#create_cell (with PCell parameters and/or lib name)
|
|
|
|
|
- Layout#delete_property
|
|
|
|
|
- Layout#flatten_into
|
|
|
|
|
- Layout#has_prop_id?
|
|
|
|
|
- Layout#pcell_ids
|
|
|
|
|
- Layout#pcell_names
|
|
|
|
|
- Layout#prop_id
|
|
|
|
|
- Layout#prop_id=
|
|
|
|
|
- LayoutView#clear_object_selection
|
|
|
|
|
- LayoutView#object_selection
|
|
|
|
|
- LayoutView#object_selection=
|
|
|
|
|
- LayoutView#replace_annotation
|
|
|
|
|
- LayoutView#select_object
|
|
|
|
|
- LayoutView#unselect_object
|
|
|
|
|
- MainWindow#cm_close_all
|
|
|
|
|
- MainWindow#cm_save_all
|
|
|
|
|
- MainWindow#cm_sel_move_to
|
|
|
|
|
- MainWindow#instance
|
|
|
|
|
- MainWindow#manager
|
|
|
|
|
- ObjectInstPath#==
|
|
|
|
|
- ObjectInstPath#!=
|
|
|
|
|
- ObjectInstPath#<
|
|
|
|
|
- ObjectInstPath#append_path
|
|
|
|
|
- ObjectInstPath#clear_path
|
|
|
|
|
- ObjectInstPath#cv_index=
|
|
|
|
|
- ObjectInstPath#layer=
|
|
|
|
|
- ObjectInstPath#seq=
|
|
|
|
|
- ObjectInstPath#shape=
|
|
|
|
|
- ObjectInstPath#top
|
|
|
|
|
- ObjectInstPath#top=
|
|
|
|
|
- RdbItemValue#initialize (with float argument)
|
|
|
|
|
- RdbItemValue#float
|
|
|
|
|
- RdbItemValue#is_float?
|
|
|
|
|
- RdbItemValue#tag_id
|
|
|
|
|
- RdbItemValue#tag_id=
|
|
|
|
|
- SaveLayoutOptions#gds_write_file_properties
|
|
|
|
|
- SaveLayoutOptions#gds_write_file_properties=
|
|
|
|
|
- SaveLayoutOptions#oasis_write_std_properties
|
|
|
|
|
- SaveLayoutOptions#oasis_write_std_properties=
|
|
|
|
|
- Shape#each_edge (with contour argument)
|
2017-09-10 19:04:31 +02:00
|
|
|
* Enhancement: Qt API is aligned better with C++ Qt notation. Several bug fixes, new features and stability enhancements.
|
|
|
|
|
For example:
|
|
|
|
|
New: RBA::Qt::white or RBA::Qt::GlobalColor::white
|
|
|
|
|
Old: RBA::Qt_GlobalColor::white
|
|
|
|
|
* Enhancement: the debugger can now be disabled in the macro editor IDE for enhanced
|
|
|
|
|
script execution performance with IDE window open and less interactions between
|
|
|
|
|
Qt code and Macro IDE
|
|
|
|
|
* Bugfix: DRC crashed when outputting shapes to a layer that was used as an input
|
|
|
|
|
in further parts of the script but has been declared as input befor the layer
|
|
|
|
|
was output.
|
|
|
|
|
* Bugfix: ".lyp wildcard replacement" now honors transformations as well
|
|
|
|
|
* Bugfix: Gerber import issues fixed: Zero-diameter circular apertures moves are translated into lines,
|
|
|
|
|
Zero-length moves must not be clear for G1 and circular apertures.
|
|
|
|
|
* Bugfix: The technology button now applies the technology even if the technology did not change.
|
|
|
|
|
* Enhancement: Polygons with holes are better supported now (for example in partial editing). Such
|
|
|
|
|
polygons cannot be written to GDS or OASIS (they will be converted to ones without holes), but
|
|
|
|
|
they may be created in DRC scripts.
|
|
|
|
|
* Bugfix: "Reload layout" now doesn't forget the technology that was attached to a layout.
|
|
|
|
|
* Bugfix: Box side setters now behave more consistently in scripting. Before this fix, it was not possible to
|
|
|
|
|
assign the sides of a box this way: "b = Box::new; b.left = 100; b.right = 300".
|
|
|
|
|
* Bugfix: recursive library references (library referencing itself indirectly) made the application
|
|
|
|
|
crash.
|
|
|
|
|
* Bugfix: Subclass mapping sometimes failed in certain cases. This was particular annoying in Qt's event
|
|
|
|
|
handlers since "QKeyEvent" (or similar classes) only showed up "QEvent".
|
|
|
|
|
* Enhancement: "Move selection to" function available in "Edit/Selection/Move To". With this function,
|
|
|
|
|
the selection (shapes are instances) can be moved to a specific position. You can specify the
|
|
|
|
|
reference point to use. For example the center of the bounding box.
|
|
|
|
|
* Bugfix: Menu icon assignment was not working in some cases within scripts.
|
|
|
|
|
* Bugfix: Readonly (global) macros could be edited but not saved.
|
|
|
|
|
* Bugfix: Instances could be selected even if they had only invalid layers.
|
|
|
|
|
* Enhancement: The application now features a crash handler. This handler gives some debugging information
|
|
|
|
|
about the crash which you can send together with a bug report. In some cases, the crash handler will
|
|
|
|
|
allow continuing to work with the application although it's highly advisable to save and close.
|
|
|
|
|
* Bugfix: Registering plugins through the script's plugin API sometimes disabled view features.
|
|
|
|
|
* Bugfix: The macro IDE is not automatically put in the foreground any more. This sometimes interfered with
|
|
|
|
|
modal dialogs shown from a macro.
|
|
|
|
|
* Enhancement: The macro IDE now features watch expressions which are automatically evaluated when in a
|
|
|
|
|
breakpoint.
|
|
|
|
|
* Enhancements: The "Save Layout" options are now separated from the save function. That means they can
|
|
|
|
|
be configured once and the dialog will not pop up always when saving. This way, "Save All" is provided
|
|
|
|
|
which will save all open files with the current options.
|
|
|
|
|
* Enhancement: A "Close All" function to close all open layouts.
|
|
|
|
|
* Enhancement: In scripted layout loads, multiple files can be loaded into the same layout object. In that
|
|
|
|
|
case, the content of the files are merged. This worked so far with GDS. Now this also works with OASIS.
|
|
|
|
|
* Bugfix: OASIS int-typed properties now as written as such. Before, they have been written as strings.
|
|
|
|
|
* Enhancement: sizing code and path to polygon translation now will better maintain 45-degree edges.
|
|
|
|
|
* Enhancement: DRC support for edge/polygon booleans ("edges AND polygons" will select the edges inside the polygons,
|
|
|
|
|
"edges MINUS polygons" will remove the edges inside the polygons)
|
|
|
|
|
* Enhancement: Global layout properties supported as well. Layout properties can be edited by selecting
|
|
|
|
|
"User Properties" in "File/Layout Properties". They are written to OASIS. Writing to GDS2 is optional since
|
|
|
|
|
that may create compatibility issues with other tools.
|
|
|
|
|
* Enhancement: The OASIS writer will now produce some standard properties: "S_TOP_CELL", "S_BOUNDING_BOX",
|
|
|
|
|
"S_CELL_OFFSET", "S_MAX_SIGNED_INTEGER_WIDTH", "S_MAX_UNSIGNED_INTEGER_WIDTH" and "S_BOUNDING_BOXES_AVAILABLE".
|
|
|
|
|
* Enhancement: User properties of cells are available in cell context menu too: this way there can be
|
|
|
|
|
browsed in non-editable mode too.
|
|
|
|
|
* Enhancement: "Degenerated" polygons (one or two points) can be created in scripts now when using "raw" mode.
|
|
|
|
|
Such polygons are useful in the context of Minkowsky sums for example.
|
|
|
|
|
* Bugfix: The application crashed when the macro currently running was deleted.
|
|
|
|
|
* Enhancement: "Search & replace" now is available in viewer mode too, but without the ability to replace or
|
|
|
|
|
delete.
|
|
|
|
|
* Enhancement: In menu paths, appending a "+" to the path means to add something after that item.
|
|
|
|
|
* Bugfix: Guiding shapes are only selected if the PCell corresponding to them is visible.
|
|
|
|
|
* Enhancement: there is a clearer indication now that 'Show layers without fill' is on.
|
|
|
|
|
* Enhancement: a new mode is available in which PCell content can be selected too. When editing things inside
|
|
|
|
|
PCells however, PCell recomputation may revert these edits.
|
|
|
|
|
The mode is found in "File/Setup", "Application/Selection" page.
|
|
|
|
|
* Enhancement: Edge set boolean operations have been too selective with respect to almost-parallel edges.
|
|
|
|
|
Now a tolerance is applied allowing edges to deviate by ~1 dbu.
|
|
|
|
|
* Enhancement: Search & replace: texts, paths and boxes are exported into report databases.
|
|
|
|
|
Shapes and instances are shown in micron coordinates and as seen in top.
|
|
|
|
|
* Enhancement: "Apply all" in properties dialogs: with this function, a specific change is applied to
|
|
|
|
|
all shapes or instances of the same class. For example a path width change is applied to all other selected
|
|
|
|
|
paths. The change will be applied smartly (hopefully), so that the intention of the change is preserved.
|
|
|
|
|
For example a left edge shift for a box will be turned into the same shift for all other selected boxes.
|
|
|
|
|
* Enhancement: multiple categories can be selected in the marker browser now.
|
|
|
|
|
* Enhancement: the instance properties page now shows the cell dimensions (which are not editable of course).
|
|
|
|
|
* Enhancement: box property editing is less tedious - the left and right coordinates will now swap if the order
|
|
|
|
|
changes and the mode (width/center or coordinates) is maintained.
|
|
|
|
|
* Enhancement: Report databases now support "tagged values" (values with a name) which are shown in the marker
|
|
|
|
|
list. The markers can be sorted by these values, provided they are string or numerical values.
|
|
|
|
|
RVE properties are read as tagged values.
|
|
|
|
|
|
|
|
|
|
0.23.11 (2015-05-23):
|
|
|
|
|
* Bugfix: partial edit mode - a cell could be selected even if not visible
|
|
|
|
|
With the new version, the selection behavior of normal selection
|
|
|
|
|
and partial selection are somewhat more consistent.
|
|
|
|
|
* Bugfix: The CIF reader was not able to read CIF files with line breaks
|
|
|
|
|
Commands with line breaks separating arguments were not read
|
|
|
|
|
correctly.
|
|
|
|
|
* Bugfix: Printout now considers global transformation correctly
|
|
|
|
|
Previously, the global transformation was ignored on printout
|
|
|
|
|
and for screenshots.
|
|
|
|
|
* Enhancement: Partial edit mode now also supports polygons with holes
|
|
|
|
|
Polygons with holes are rare since they cannot be represented
|
|
|
|
|
in GDS or OASIS files. But they can be generated in DRC scripts.
|
|
|
|
|
Now, such polygons can be edited in partial edit mode too.
|
|
|
|
|
* Bugfix: LEF/DEF reader now correctly uses half the path width for path extension
|
|
|
|
|
Previously the default value was 0.
|
|
|
|
|
* Bugfix: Library update was not working properly for OASIS reader
|
|
|
|
|
OASIS files with library references had as issue when updating
|
|
|
|
|
the library cells: cell deleted in the library were not deleted
|
|
|
|
|
in the layout.
|
|
|
|
|
* Enhancement: Warning, when drawing on invisible layers
|
|
|
|
|
Previously there was not feedback: the shape was drawn, but not
|
|
|
|
|
visible. Now, a warning pops up when trying to draw on invisible
|
|
|
|
|
layers. This warning can be disabled.
|
|
|
|
|
|
|
|
|
|
0.23.10 (2015-03-07):
|
|
|
|
|
* Bugfix/Enhancement: CIF compatibility. The reader was not fully
|
|
|
|
|
compatible with the specification. For example, lower-case
|
|
|
|
|
characters have not been ignored as specified. This has been
|
|
|
|
|
fixed among other compatibility issues.
|
|
|
|
|
* Enhancement: The CIF writer now has an option to use blank characters
|
|
|
|
|
as x/y separator. Some tools apparently don't like comma
|
|
|
|
|
characters for separators (that is still the default).
|
|
|
|
|
* Enhancement: The CIF writer now has an option to emit dummy cell
|
|
|
|
|
calls on top level to reference the top cells. The top-level
|
|
|
|
|
entity is unnamed and does not correspond to a cell. Despite
|
|
|
|
|
that some tools require these entities not to be empty and
|
|
|
|
|
hold dummy references to the real top cells at least.
|
|
|
|
|
* Bugfix: Key bindings to default grid menu entries were not working
|
|
|
|
|
* Bugfix: When a layer was deleted and a shape on that layer was
|
|
|
|
|
selected, the application crashed
|
|
|
|
|
* Bugfix: Search and replace sometimes gave an internal error, for
|
|
|
|
|
example with the following query:
|
|
|
|
|
'with * do cell.name = "A" + cell.name'
|
|
|
|
|
* Bugfix: Search and replace was crashing when trying to delete
|
|
|
|
|
instances.
|
|
|
|
|
* Bugfix: Net tracer bug: the first selected shape was always taken as
|
|
|
|
|
a whole even if parts were disabled through boolean NOT
|
|
|
|
|
operations.
|
|
|
|
|
* Bugfix: Net tracer was using the wrong origin when working in
|
|
|
|
|
"descend" mode.
|
|
|
|
|
* Bugfix/Enhancement: The technology setup now features "read all" and
|
|
|
|
|
"add other layers" flags for the reader mapping table and
|
|
|
|
|
the layer properties. Before, the global flags were used
|
|
|
|
|
causing some confusion. With the new options the behavior
|
|
|
|
|
can be configured consistently.
|
|
|
|
|
* Enhancement: The file dialogs now remember the file type chosen.
|
|
|
|
|
* Bugfix: The application issues a error message when trying to
|
|
|
|
|
write very big images instead of crashing
|
|
|
|
|
* Enhancement: Two new Ruby methods to write image files. These new
|
|
|
|
|
methods are LayoutView#save_image_with_options and LayoutView#
|
|
|
|
|
get_image_with_options. These methods allow configuration of
|
|
|
|
|
more features for the image generation like box to draw,
|
|
|
|
|
oversampling etc.
|
|
|
|
|
* Enhancement: DXF reader now converts ATTDEF entities to texts too.
|
|
|
|
|
* Bugfix: The application crashed when the top cell was deleted.
|
|
|
|
|
|
|
|
|
|
0.23.9 (2014-12-28):
|
|
|
|
|
* Bugfix: DEF reader: E and W pin orientation was swapped.
|
|
|
|
|
* Bugfix: DEF reader: PIN definitions are read correctly even if
|
|
|
|
|
the PLACED statement comes before the LAYER statement.
|
|
|
|
|
* Enhancement: LEF reader: deprecated keyword TOPOPSTACKONLY is
|
|
|
|
|
ignored for VIA statements now instead of giving an error.
|
|
|
|
|
* Enhancement: DEF reader: the reader now is able to read BLOCKAGE
|
|
|
|
|
definitions. Currently, routing and placement blockages are
|
|
|
|
|
supported. The layers they appear on can be configured the
|
|
|
|
|
in the same fashion than for the other elements.
|
|
|
|
|
* Bugfix: Typing in the Macro Editor was slow if many macros were
|
|
|
|
|
bound to menus.
|
|
|
|
|
* Enhancement: GDS AREF's with pitches not a multiple of the database
|
|
|
|
|
unit are split into individual arrays rather than simply
|
|
|
|
|
rounding the pitch. The disadvantage of the rounding solution
|
|
|
|
|
was an accumulation of rounding errors over the array instances
|
|
|
|
|
leading to a substantial deviation from the target location.
|
|
|
|
|
* Bugfix: Paths have sometimes not been displayed properly,
|
|
|
|
|
specifically paths with a small segment length and sharp bends.
|
|
|
|
|
* Bugfix: DXF reader: bulges have not been ignored on the last vertex
|
|
|
|
|
of a non-closed POLYLINE as they should.
|
|
|
|
|
|
|
|
|
|
0.23.8 (2014-11-15):
|
|
|
|
|
* Bugfix: DRC: "inside", "not_inside", "outside" and "not_outside" were
|
|
|
|
|
broken
|
|
|
|
|
* Bugfix: LEF/DEF reader: VIA PATTERN support was broken
|
|
|
|
|
* Enhancement: LEF/DEF reader: Support for LEF/DEF Version 5.8 syntax
|
|
|
|
|
* Bugfix: The Tab order of certain dialogs was weired
|
|
|
|
|
* Bugfix: Multi-layout layer properties files in technology setups behaved
|
|
|
|
|
strangely. Now, the behavior of layout properties files (.lyp) is
|
|
|
|
|
the same in the technology context and the usual application context.
|
|
|
|
|
|
|
|
|
|
0.23.7 (2014-10-11):
|
|
|
|
|
* Bugfix: DRC was crashing on second run if it was overwriting an input file.
|
|
|
|
|
* Bugfix: RBA::InputDialog::ask_double was not accepting negative numbers.
|
|
|
|
|
* Bugfix: With a net highlighted in the net tracer, so view zoomed to show
|
|
|
|
|
the whole net if a layer was shown or hidden.
|
|
|
|
|
* Bugfix: Ruler snapping was disabled for moderately complex hierarchies.
|
|
|
|
|
The threshold has been increased. Now snapping of the ruler to objects
|
|
|
|
|
also works for denser and more complex layouts.
|
|
|
|
|
* Bugfix: Some signals were not available to Ruby (i.e. QIODevice signals).
|
|
|
|
|
* Enhancement: When using "Hide empty layers", the layer list will scroll to
|
|
|
|
|
keep the selected layer visible (unless it is empty and hidden therefore).
|
|
|
|
|
* Enhancement: A "split view" for the cell trees. When multiple layouts are
|
|
|
|
|
loaded in a panel, you can choose split view (right mouse in cell list,
|
|
|
|
|
check "Split View"). In split view, up to 5 cell trees are shown at the
|
|
|
|
|
same time.
|
|
|
|
|
|
|
|
|
|
0.23.6 (2014-08-20):
|
|
|
|
|
* Bugfix: A DRC issue was fixed. Sometimes errors were reported too many times.
|
|
|
|
|
This happened for big polygons wrapping smaller ones.
|
|
|
|
|
* Enhancement: Now, macro key bindings can be edited on the key binding page
|
|
|
|
|
of the setup dialog too if the macros are shown in the menu.
|
|
|
|
|
Before, those changes were reset when the program was closed.
|
|
|
|
|
* Enhancement: The DXF reader now also considers thin (width = 0) POLYLINES
|
|
|
|
|
as mergable edge contributions in the "merge edge" modes if the
|
|
|
|
|
POLYLINES are closed ones too.
|
|
|
|
|
* Bugfix: The float function in the OASIS writer was fixed.
|
|
|
|
|
This is a code cleanup, and did not have effect on functionality (yet).
|
|
|
|
|
|
|
|
|
|
0.23.5 (2014-07-04):
|
|
|
|
|
* Bugfix: DXF polyline mode could not be set in reader options in Ruby.
|
|
|
|
|
A value of 3 and 4 was not allowed.
|
|
|
|
|
* Enhancement: CIRCLE AND ELLIPSE objects are treated as thin lines in DXF reader's
|
|
|
|
|
"merge edges" mode. Hence they participate in region formation.
|
|
|
|
|
* Enhancement: A warning is displayed when an ambiguous keyboard shortcut is triggered
|
|
|
|
|
* Bugfix: An assertion in the boolean processor was fixed.
|
|
|
|
|
* Bugfix: The following command caused the program to crash on the Ruby console:
|
|
|
|
|
"require 'net/http'; uri = URI('xyz')".
|
|
|
|
|
* Bugfix: The "cell" function in DRC scripts was creating a new cell if is was not existing
|
|
|
|
|
yet. In general, the DRC function is not supposed to change the layout's hierarchy.
|
|
|
|
|
* Bugfix: The macro editor now can distinguish between the same file with different suffixes.
|
|
|
|
|
Before, "test.rb" and "test.lym" were not presented as different files.
|
|
|
|
|
* Enhancement: The marker browser now indicates if the number of markers exceeds the
|
|
|
|
|
specified maximum and the list is shortened.
|
|
|
|
|
* Bugfix: The "browser.rb" sample was not working any longer because of a backward
|
|
|
|
|
compatibility issue.
|
|
|
|
|
|
|
|
|
|
0.23.4 (2014-03-15):
|
|
|
|
|
* Bugfix: UTF8 encoding in XML was ignored - special characters have not been
|
|
|
|
|
read properly. This in particular caused issues in the .lym macro files
|
|
|
|
|
when UTF8 characters are employed.
|
|
|
|
|
* Bugfix: Backward compatiblity issue: layout files with PCells written with 0.23
|
|
|
|
|
could not be read with 0.22 and vice versa.
|
|
|
|
|
* Bugfix: Label text centering and right-alignment was not working propertly
|
|
|
|
|
with the default font.
|
|
|
|
|
* Bugfix: A segmentation fault occuring when rerunning a PCell macro has been
|
|
|
|
|
fixed.
|
|
|
|
|
* Bugfix: PCell layer parameters can be set to "no layer" now. This was possible
|
|
|
|
|
before, but caused some issues - i.e. creation of dead layers.
|
|
|
|
|
|
|
|
|
|
0.23.3 (2014-02-23):
|
|
|
|
|
* Bugfix: DRC bug fixed: "@x" notation was not working for layout, source and
|
|
|
|
|
target.
|
|
|
|
|
* Bugfix: A boolean processor bug was fixed that cause an internal error in
|
|
|
|
|
some rare cases with certain edge configurations.
|
|
|
|
|
* Bugfix: Image documentation was wrong about the offset meaning: it's the center,
|
|
|
|
|
not the lower left corner.
|
|
|
|
|
* Bugfix: Layer table tab names were lost when sorting or regrouping a layer
|
|
|
|
|
list.
|
|
|
|
|
* Enhancement: The net tracer now can be configured to auto-color the nets with
|
|
|
|
|
a set of predefined colors. 8 colors can be configured in the
|
|
|
|
|
configuration dialog or the net tracer setup page in the setup dialog.
|
|
|
|
|
* Enhancement: The net tracer now has a "Redo" button which will trace all
|
|
|
|
|
nets in the list again using the original start and stop (for path
|
|
|
|
|
tracing) locations.
|
|
|
|
|
|
|
|
|
|
0.23.2 (2014-01-26):
|
|
|
|
|
* Bugfix: Build issues fixed for MacOS and some Qt versions.
|
|
|
|
|
* Bugfix: DRC log to file was not working.
|
|
|
|
|
* Bugfix: Ruby script was crashing when using ruby-implemented tiling
|
|
|
|
|
processor receiver and multi-threaded tiling.
|
|
|
|
|
* Bugfix: Layout move function was using database units instead of micron.
|
|
|
|
|
* Bugfix: Search & replace markes where not shown in a reasonable context
|
|
|
|
|
for search in "All cells", instance markers are not shown
|
|
|
|
|
correctly.
|
|
|
|
|
* Bugfix: DRC now also handles the case of different database units for
|
|
|
|
|
multiple inputs. The database unit of output files is now taken
|
|
|
|
|
from the input.
|
|
|
|
|
* Enhancement: Search & replace layer selection combo boxes now show display
|
|
|
|
|
string
|
|
|
|
|
* Enhancement: Unexpected elements are ignored in XML files.
|
|
|
|
|
* Enhancement: Options are provided for making boolean operations not
|
|
|
|
|
optimize the "single empty input" case for XOR tool
|
|
|
|
|
and DRC (strict handling mode).
|
|
|
|
|
|
|
|
|
|
0.23.1 (2013-12-07):
|
|
|
|
|
* Bugfix: RBA SimplePolygon#inside? and Polygon#inside? now work as expected
|
|
|
|
|
* Bugfix: DRC output to marker browser now works as expected
|
|
|
|
|
* Bugfix: HTTP URL's now are written as such into the MRU list
|
|
|
|
|
* Bugfix: A net tracer crash was fixed
|
|
|
|
|
* Bugfix: Net tracer connectivity setup: the move buttons now work as expected
|
|
|
|
|
* Bugfix: a DRC issue was fixed when assigning the output of modifying operations (i.e.
|
|
|
|
|
"layer=layer.move(...)".
|
|
|
|
|
* Enhancement: compatibility with clang 3.3 was established as well as compatibility
|
|
|
|
|
with Ruby 2.0.
|
|
|
|
|
* Bugfix: some memory and static code analysis issues have been fixed after
|
|
|
|
|
analysis with valgrind, clang and Coverity.
|
|
|
|
|
|
|
|
|
|
0.23 (2013-11-24):
|
|
|
|
|
* Enhancement: Net tracer: Nets can now be colored individually.
|
|
|
|
|
* Enhancement: The OASIS writer now uses CBLOCK compression also for tables.
|
|
|
|
|
* Enhancement: Transparency is now supported for images (as a mask only - not a real
|
|
|
|
|
alpha channel, but close to).
|
|
|
|
|
* Enhancement: The layer/datatype assignment for purely named layers originating from
|
|
|
|
|
DXF or CIF has changed. It's now no longer done when reading DXF or CIF but when
|
|
|
|
|
writing the file. This solution is more general and allows some level of control,
|
|
|
|
|
i.e. by scripts.
|
|
|
|
|
* Enhancement: "http:..." URLs are now allowed as file names - such files are loaded
|
|
|
|
|
from the URL instead. Such URL's can be used from the command line or within scripts
|
|
|
|
|
for example. Drag and drop of HTTP URLs is also support. This allows dropping of
|
|
|
|
|
URLs from the browser into KLayout.
|
|
|
|
|
* Enhancement: Menus have been rearranged:
|
|
|
|
|
The "Tools" menu was split into "Tools" and "Macros", "Verification" menu has been
|
|
|
|
|
resolved into the "Tools" menu.
|
|
|
|
|
* Enhancement: New command line options are available:
|
|
|
|
|
"-nn" to load .lyt (technology file) on command line. "-b" for batch mode (implies some
|
|
|
|
|
batch-mode specific options), "-zz" for display-less applications.
|
|
|
|
|
* Enhancement: "Adjust cell origin" now adjusts the cell in their parents as well (optional).
|
|
|
|
|
* Enhancement: Cells can have properties now: Cells can now have user properties as well.
|
|
|
|
|
However, writing these properties to files is subject to some constraints. Cell
|
|
|
|
|
properties are fully supported on OASIS and optionally supported on GDS using
|
|
|
|
|
an extension feature.
|
|
|
|
|
* Enhancement: Transformations are now available for whole layout (applied to all cells).
|
|
|
|
|
This is specifically useful for scaling layouts.
|
|
|
|
|
* Enhancement: A function now is available to convert PCell's to normal (static) cells.
|
|
|
|
|
* Enhancement: The printout now has a header and footer.
|
|
|
|
|
* Enhancement: The XOR can now be confined to a region.
|
|
|
|
|
* Enhancement: There is an option now to hide guiding shapes for PCell instances.
|
|
|
|
|
* Enhancement: New option to pan/zoom or do nothing on paste - Option is in "Navigation/Zoom
|
|
|
|
|
and Pan" in setup dialog.
|
|
|
|
|
* Enhancement: Cells can now be copied in "shallow copy" mode without creating copies of the
|
|
|
|
|
child cells.
|
|
|
|
|
* Enhancement: A "Tap" function is provided now. The tap function selectes and changes to the
|
|
|
|
|
layer of the currently selected shape. New shapes will be put on that layer.
|
|
|
|
|
* Enhancement: There now is a function to convert instance arrays to single instances.
|
|
|
|
|
* Enhancement: The instantiation path of an object is now shown in the status bar.
|
|
|
|
|
* Enhancement: An option is now provided for configuring the replacement character for
|
|
|
|
|
OASIS and GDS. The replacement character is used instead of illegal characters.
|
|
|
|
|
* Enhancement: Some unicode support for texts in default font ("µ" now is available).
|
|
|
|
|
* Enhancement: There is a GDS2 writer option now to eliminate zero-length paths.
|
|
|
|
|
* Enhancement: There are new save options: disable or enable writing of PCell and library cell
|
|
|
|
|
contexts, drop hidden cells, keep instances even if cells are dropped.
|
|
|
|
|
* Enhancement: Layers can now be made invalid. Invalid layers don't participate in selection or
|
|
|
|
|
snapping.
|
|
|
|
|
* Enhancement: Multi-selection on 'open layout' allows to open many files at once.
|
|
|
|
|
* Enhancement: DRC functionality: a rich DRC engine was integrated in the tool. The
|
|
|
|
|
implementation is flat, so performance is limited compared to hierarchical tools. A tiling
|
|
|
|
|
approach is available to distribute tasks on multiple CPU's to somewhat mitigate that issue.
|
|
|
|
|
* Enhancement: Search and replace feature plus custom queries: the search & replace functionality
|
|
|
|
|
is just the tip of the iceberg. "custom queries" are a powerful feature to perform
|
|
|
|
|
queries and modifications using a SQL-like language.
|
|
|
|
|
* Enhancement: Some enhancements on LEF/DEF import: i.e. proper default routing rule with octagon
|
|
|
|
|
ends implementedin DEF, NONDEFAULTRULES for LEF reader
|
|
|
|
|
* Enhancement: Auto-import feature for technologies: technologies can now be imported from
|
|
|
|
|
the installation folder automatically.
|
|
|
|
|
* Enhancement: RBA enhancements: Tiling processor, fill tool bindings, regions, edge collections,
|
|
|
|
|
edge pairs and edge pair collections, numerous new methods and classes.
|
|
|
|
|
* Enhancement: More configuration options for macro IDE: stop on exception will ask whether to stop
|
|
|
|
|
in the debugger when an exception is thrown. The editor font can now be configured.
|
|
|
|
|
* Enhancement: The diff tool now has an option to disable smart cell matching and enable
|
|
|
|
|
name-only cell matching.
|
|
|
|
|
* Enhancement: cells can now be dragged and dropped from the cell list to the canvas.
|
|
|
|
|
* Bugfix: Layout diff reported texts as different which are not.
|
|
|
|
|
* Bugfix: Instance editor options problem fixed: magnification could not be edited in some cases.
|
|
|
|
|
* Bugfix: DXF reader: anisotropic scaling of block deletes subcells of that block, error messages
|
|
|
|
|
on coordinate overflow.
|
|
|
|
|
* Bugfix: OASIS output files were corrupt when edge objects were written.
|
|
|
|
|
* Bugfix: Problems with boxes having odd width are solved now.
|
|
|
|
|
* Bugfix: Close function - "Cancel" now works properly on the "which view to close" dialog.
|
|
|
|
|
* Bugfix: Closing the main window while layouts are loaded crashed the application.
|
|
|
|
|
* Bugfix: Net tracer did not work properly with OASIS in viewer mode.
|
|
|
|
|
* Bugfix: Diff tool was not matching cells propertly in some cases
|
|
|
|
|
|
|
|
|
|
0.22.9 (2013-09-19):
|
|
|
|
|
* Bugfixes: LEF/DEF reader: NONDEFAULTRULES, TAPERRULE implemented now,
|
|
|
|
|
correct octagon style for default rules for non-rectangular routing,
|
|
|
|
|
POLYGON and RECT implemented for routing.
|
|
|
|
|
* Bugfix: DXF reader crash fixed for ARC objects with identical start and end angle,
|
|
|
|
|
polygons have not been read in some cases.
|
|
|
|
|
* Bugfix: It is possible again to use "Show as new top" after "Descend/Ascend hierarchy"
|
|
|
|
|
without clicking at the cell list.
|
|
|
|
|
|
|
|
|
|
0.22.8 (2013-06-21):
|
|
|
|
|
* Enhancement: "gds2" now is recognized as extension of GDS files.
|
|
|
|
|
* Bugfix: CIF reader was broken in some cases. Layers have not been assigned properly
|
|
|
|
|
and sometimes, identical or no GDS layers were assigned.
|
|
|
|
|
* Bugfix: RecursiveShapeIterator (RBA) had an issue when iterating shape arrays.
|
|
|
|
|
This was the case when working on OASIS files in viewer mode for example.
|
|
|
|
|
* Bugfix: DEF reader had some issues (TAPER and RESISTANCE keywords have not been
|
|
|
|
|
supported properly).
|
|
|
|
|
|
|
|
|
|
0.22.7 (2013-03-22):
|
|
|
|
|
* Bugfix: The output mode in the XOR tool dialog was not shown properly. Instead of
|
|
|
|
|
"Report database", "Other layout" was shown etc.
|
|
|
|
|
* Bugfix: When creating a third layout for output of the XOR tool, the database unit
|
|
|
|
|
was not set to the input layout's database unit.
|
|
|
|
|
* Bugfix: Layout numbering was not done correctly when multiple layouts were loaded
|
|
|
|
|
with the same file name.
|
|
|
|
|
* Bugfix: In viewer mode sometimes it was not possible to move to the next selected
|
|
|
|
|
item in the shape properties dialog. A message appeared saying "Shape array members
|
|
|
|
|
cannot be modified."
|
|
|
|
|
* Enhancement: OASIS writer performance is significantly better now in cases where
|
|
|
|
|
shape compression is relevant. Also, shape arrays are maintained as such which
|
|
|
|
|
avoids repeated compression.
|
|
|
|
|
* Bugfix: A drawing bug was fixed which caused shape arrays to disappear on certain
|
|
|
|
|
zoom levels.
|
|
|
|
|
* Bugfix: "Add missing layers" now adds all existing layers, not just the ones
|
|
|
|
|
present in the currently selected cell also in viewer mode.
|
|
|
|
|
|
|
|
|
|
0.22.6 (2013-03-03):
|
|
|
|
|
* Bugfix: It was possible for example to add shapes to a PCell. This feature does
|
|
|
|
|
not make sense since PCell's are updated when required. In that case, changes
|
|
|
|
|
are lost. This feature has been disabled for PCell's.
|
|
|
|
|
* Bugfix: RBA::Application#get_config was crashing in some cases (i.e. in -zz mode)
|
|
|
|
|
* Bugfix: The "create cell variants" function was not working properly if a single
|
|
|
|
|
instance array was present for a cell.
|
|
|
|
|
* Bugfix: The radius was limited too strictly for end segments for the ROUND_PATH
|
|
|
|
|
PCell of the Basic library.
|
|
|
|
|
* Enhancement: Some additional RBA methods have been enabled which disambiguate
|
|
|
|
|
various constructors for Qt objects (i.e RBA::QVariant#new_i allows to create
|
|
|
|
|
a variant with "int" type)
|
|
|
|
|
* Bugfix: the Ruby-less build was broken.
|
|
|
|
|
* Bugfix: Copy & paste was not working for the layer list. This is an effect of the
|
|
|
|
|
modified key handling in KLayout 0.22. New menu functions are provided in the layer
|
|
|
|
|
list's context menu to resolve the ambiguities involved in that feature.
|
|
|
|
|
These menu functions allow to copy, cut and paste parts of the layer list to other
|
|
|
|
|
windows or tabs.
|
|
|
|
|
* Bugfix: PCell's are now cleared before the production method is called.
|
|
|
|
|
* Enhancement: OASIS layer names are also recognized if the LAYERNAME record
|
|
|
|
|
appears after the layout's body.
|
|
|
|
|
* Bugfix: in previous versions it could happen that the layout panels got
|
|
|
|
|
locked and it was no longer possible to switch between different tabs.
|
|
|
|
|
* Bugfix: a potential crash in the drawing engine was fixed.
|
|
|
|
|
|
|
|
|
|
0.22.5 (2013-02-02):
|
|
|
|
|
* Bugfix: Layer properties file in technology definitions can be given as relative path
|
|
|
|
|
in which case KLayout uses the base path
|
|
|
|
|
* Enhancement: Windows installer now provides a useful default installation path when
|
|
|
|
|
started as non-administrator.
|
|
|
|
|
* Bugfix: GDS reader: a false warning was issued sometimes indicating that an
|
|
|
|
|
AREF might be off-grid.
|
|
|
|
|
* Bugfix: Fixed build for MacOS and some Linux distributions.
|
|
|
|
|
* Bugfix: Fixed a crash that happened when KLayout was closed while a instance
|
|
|
|
|
property form was still open.
|
|
|
|
|
* Enhancement: PCell names are now shown in the status bar
|
|
|
|
|
* Bugfix: Fixed a crash that happened when a macro was run that was already closed.
|
|
|
|
|
* Bugfix: MRU list for macro editor's console was getting huge when the macro editor
|
|
|
|
|
was closed and opened again in the same session.
|
|
|
|
|
* RBA bugfixes: "destroyed?" was not working properly in some cases. Infinite
|
|
|
|
|
recursion happened for for PCell implementation without "get_layers".
|
|
|
|
|
* Enhancement: Better error messages for RBA including class and method names.
|
|
|
|
|
* Bugfix: PCell implementation issue. Some methods were passed a deep copy
|
|
|
|
|
of the layout object which first created a potential performance issue and
|
|
|
|
|
second made it impossible to modify the layout.
|
|
|
|
|
* Enhancement: DXF writer now provides a header which enables some tools to
|
|
|
|
|
read the generated DXF files.
|
|
|
|
|
* Bugfix: DXF reader: degenerated polygons for HATCH objects don't cause an
|
|
|
|
|
assertion now.
|
|
|
|
|
|
|
|
|
|
0.22.4 (2012-12-30):
|
|
|
|
|
* Bugfix: a drawing problem was fixed which created invalid images in certain
|
|
|
|
|
cases.
|
|
|
|
|
* Bugfix: multi-tab .lyp files could not be used correctly as default layer
|
|
|
|
|
properties files.
|
|
|
|
|
* Bugfix: the macro IDE crashed sometimes when adding a new location.
|
|
|
|
|
* Bugfix: the application crashed when the net tracer window was open and a new
|
|
|
|
|
layout was loaded into the same panel.
|
|
|
|
|
* Bugfix: a memory leak was happening when a boolean operation (in particular
|
|
|
|
|
inside the XOR tool) was cancelled.
|
|
|
|
|
* Bugfix: when inserting an instance using the lower left corner of the bounding
|
|
|
|
|
box as the reference point, rotations have not been handled correctly.
|
|
|
|
|
* Enhancement: the "detailed" view of a net's properties in the net tracer now
|
|
|
|
|
reports area and perimeter of the net's shapes (only available for nets up to
|
|
|
|
|
~2000 shapes to avoid timeouts on computation). Thanks to Peter for providing
|
|
|
|
|
the raw version of that code.
|
|
|
|
|
* DXF reader enhancements:
|
|
|
|
|
Support for "999" comment records. DIMENSION and SPLINE entities are supported
|
|
|
|
|
now to some extent. "fit" formatting of TEXT objects supported now.
|
|
|
|
|
Holes are correctly formed now from multiple POLYLINE/LINE items when combining
|
|
|
|
|
them into polygons.
|
|
|
|
|
* DXF writer: HATCH entries are written in a compatible way now. Text formatting
|
|
|
|
|
flags are fixed (top and bottom formatting was swapped).
|
|
|
|
|
|
|
|
|
|
0.22.3 (2012-11-25):
|
|
|
|
|
* Bugfix: a segmentation fault sometimes happened in the drawing engine
|
|
|
|
|
* DXF reader enhancements:
|
|
|
|
|
Anisotropic scaling of instances is supported. LWPOLYLINES with both common and
|
|
|
|
|
variable width are handled more gracefully. Closed polylines produce closed shapes
|
|
|
|
|
now, not closed paths.
|
|
|
|
|
* Selecting of instances with non-orthogonal transformations is easier now
|
|
|
|
|
* The local config files now override the global one again like this was in 0.21.x.
|
|
|
|
|
* A compile problem with older gcc's (namely gcc 4.4) was fixed.
|
|
|
|
|
* Selection of cells in the cell tree now has been fixed (before that sometimes
|
|
|
|
|
cells were selected in addition to current ones instead of being the only
|
|
|
|
|
one selected).
|
|
|
|
|
* The RVE DB reader was enhanced to read error waivers and certain new forms of the
|
|
|
|
|
RVE file.
|
|
|
|
|
* The align operation now works also if there is not a primary and secondary
|
|
|
|
|
selection (i.e. selection by box)
|
|
|
|
|
* "Layer pollution" does not happen when instantiating a PCell or library cell
|
|
|
|
|
which is instantiated in another panel
|
|
|
|
|
* PCell layer parameters now can be set to any layer which is present in the
|
|
|
|
|
layer list, not just the ones which are created already in the database
|
|
|
|
|
* The round corners function has been fixed for certain cases. In particular
|
|
|
|
|
the limitations are less strict (for example it is possible now to create
|
|
|
|
|
a donut from a square with a hole). Changing of the radius later now works
|
|
|
|
|
more reliably.
|
|
|
|
|
* "Shallow copy mode" now works again for copy & paste of instances. Previously
|
|
|
|
|
instances were always copies in deep copy mode which creates new cells.
|
|
|
|
|
* Move of partial selection now works like the move function for other objects:
|
|
|
|
|
select a subset of edges, click on them to start dragging and click again to
|
|
|
|
|
drop them.
|
|
|
|
|
* Arrow keys don't interfere with move by mouse mode any longer. Previously using
|
|
|
|
|
the arrow keys while moving objects with the mouse had strange effects.
|
|
|
|
|
|
|
|
|
|
0.22.2 (2012-11-01):
|
|
|
|
|
* Copy & and paste of PCell or library instances across layouts did not work
|
|
|
|
|
Instead, the cell was duplicated, but it's no longer a PCell or library cell.
|
|
|
|
|
* "klayout -v" was segmentation faults
|
|
|
|
|
The -v option is supposed to print the version number. After printing it,
|
|
|
|
|
the executable terminates with a segmentation fault.
|
|
|
|
|
* 'Real' unicode file names could not be used
|
|
|
|
|
Using Unicode filenames (i.e. Chinese) file names did not work properly.
|
|
|
|
|
In particular these files were not opened on Windows. Unicode file names were
|
|
|
|
|
not recorded properly in the "recently used" list.
|
|
|
|
|
In version 0.22.2, unicode files names can be used in all places on Windows
|
|
|
|
|
and Linux.
|
|
|
|
|
* Some LEF import issues solved
|
|
|
|
|
The outline layer was not always generated correctly. Pin labels were not generated
|
|
|
|
|
on pin shapes for LEF import.
|
|
|
|
|
* KLayout was crashing on exit when the clipboard contained something
|
|
|
|
|
The application issued a segmentation fault on exit (or "is not working" on Windows)
|
|
|
|
|
when the clipboard contained data.
|
|
|
|
|
* Ruby debugger crashed in some cases
|
|
|
|
|
In some cases (i.e. breakpoint in a widget callback) the debugger crashed with a
|
|
|
|
|
"Stack level too deep" message.
|
|
|
|
|
* Instances of leaf cells were always copied "flat" to another layout
|
|
|
|
|
There was no way to copy the instance plus cells before this was fixed.
|
|
|
|
|
* Sometimes PCell variants remain as top level cells
|
|
|
|
|
If the Instance function was cancelled and a PCell was active, a new top cell remained
|
|
|
|
|
which held the PCell that was about to be placed. These cells could be deleted manually,
|
|
|
|
|
but that may be annoying.
|
|
|
|
|
* Help index cache was growing large in some cases
|
|
|
|
|
When switching between versions, the help index that KLayout creates once grew larger
|
|
|
|
|
every time a new program version was used. This increased startup times of the program.
|
|
|
|
|
* An "abs" function was missing expressions
|
|
|
|
|
* Experimental support for 64bit coordinates is provided.
|
|
|
|
|
To enable 64bit coordinates, use "-with-64bit-coord" on the build script. This feature
|
|
|
|
|
requires gcc >= 4.4 and a 64bit platform. 64bit coordinate support is "experimental"
|
|
|
|
|
because of some known issues (i.e. it is possible to write corrupt GDS files with such large
|
|
|
|
|
coordinates). OASIS on the other hand supports 64bit coordinates.
|
|
|
|
|
|
|
|
|
|
0.22.1 (2012-10-09):
|
|
|
|
|
* Edit/Select/Disable All was not working
|
|
|
|
|
This function was supposed to disable all selectable items. Instead, an internal
|
|
|
|
|
error message was issued.
|
|
|
|
|
* Build problems with gcc 4.0 were solved
|
|
|
|
|
* GDS text size as based on micron instead of user units
|
|
|
|
|
Because of this the text object size were not be correct if the user unit was not micron.
|
|
|
|
|
* Arrow keys behaved differently
|
|
|
|
|
This had annoying effects if one was used to a particular behavior. The operation of the
|
|
|
|
|
arrow keys was restored in some places but still moving with the keys in move mode is
|
|
|
|
|
possible.
|
|
|
|
|
* -z option worked differently
|
|
|
|
|
"-z" is not a true "non-GUI" mode, in which no XServer connection is made on
|
|
|
|
|
Linux. The advantage of this is that KLayout can be used as a engine on display-less
|
|
|
|
|
servers. In 0.22, some user-interface related objects were not available in Ruby code.
|
|
|
|
|
Some scripts depending on MainWindow or LayoutView objects were not working
|
|
|
|
|
because these objects are no longer available. In 0.22.1 the original behavior of "-z"
|
|
|
|
|
was restored and instead, "-zz" was implemented as a different, true display-less mode
|
|
|
|
|
* KLayout was crashing when using custom key bindings on some platforms
|
|
|
|
|
On some platforms, apparently Linux and recent Qt versions, KLayout crashed when
|
|
|
|
|
custom key bindings are defined and the respective key is pressed.
|
|
|
|
|
* Some issues with the macro tree solved
|
|
|
|
|
Drag & drop was not working correctly within the macro tree on Windows. KLayout
|
|
|
|
|
crashed when trying to open a macro file that is not writable.
|
|
|
|
|
|
|
|
|
|
0.22 (2012-09-19):
|
|
|
|
|
New available features:
|
|
|
|
|
* A script (macro) development environment is now integrated into KLayout.
|
|
|
|
|
It features a simple debugger, a syntax highlighting editor. For details
|
|
|
|
|
see About Macro Development at http://www.klayout.de/doc/about/macro_editor.html.
|
|
|
|
|
* KLayout now features an integrated help system (available through the "Help/Assistant" menu entry).
|
|
|
|
|
* Support for libraries. See About Libraries for details.
|
|
|
|
|
http://www.klayout.de/doc/about/about_libraries.html
|
|
|
|
|
* KLayout now supports parametrized cells (PCells).
|
|
|
|
|
There is a cool feature called "guiding shapes". Learn more about that here:
|
|
|
|
|
About PCell's (http://www.klayout.de/doc/about/about_pcells.html).
|
|
|
|
|
* A basic library is provided adding text generation for example to KLayout.
|
|
|
|
|
See About The Basic Library for details.
|
|
|
|
|
* The net tracer now allows to use layer combinations (derived by boolean operations)
|
|
|
|
|
for the conductive and via layers. See The Net Tracing Feature for details.
|
|
|
|
|
* A technology management is integrated into Klayout.
|
2019-03-31 16:50:53 +02:00
|
|
|
That allows to switch various settings depending on the chosen technology.
|
2017-09-10 19:04:31 +02:00
|
|
|
See About Technology Management for details about this feature.
|
|
|
|
|
* The drawing can now be rotated or flipped without having to modify the layout.
|
|
|
|
|
This function can be found in the "Display" menu under "Global Transformation".
|
|
|
|
|
* The "background" combination mode allows to erase parts of existing shapes or
|
|
|
|
|
add new parts to existing shapes. The background combination mode is available
|
|
|
|
|
as a new drop-down button in the toolbar.
|
|
|
|
|
* A "cell variant" generation function simplifies hiearchical editing.
|
|
|
|
|
See Create Cell Variants for details about this feature.
|
|
|
|
|
* General performance improvement of the render.
|
|
|
|
|
This has been achieved by bitmap caching of cells and various optimisation measures.
|
|
|
|
|
* Images now can be aligned with a layout using landmark points.
|
|
|
|
|
The possible image transformations now include shear and perspective distortions.
|
|
|
|
|
See Using Landmarks To Align Images
|
|
|
|
|
* Images can now be stacked and moved to the bottom and to the top.
|
|
|
|
|
The configuration now is stored along with additional configuration data
|
|
|
|
|
(i.e. libraries) in a per-user directory in "~/.klayout" on Linux and in the application
|
|
|
|
|
data path on Windows. The configuration file now is found there and is called "klayoutrc".
|
|
|
|
|
New locations can be added using $KLAYOUT_PATH.
|
|
|
|
|
* The database unit of the layout can be changed now in the layout properties page
|
|
|
|
|
(menu: "File/Layout Properties").
|
|
|
|
|
* Most numeric input boxes now accept formulas,
|
|
|
|
|
i.e. "1254+3221" instead of a single value.
|
|
|
|
|
* By clicking a on single point multiple times you can now cycle the selection through all objects below the point.
|
|
|
|
|
* Layers can be copied (menu: "Edit/Layer/Copy Layer").
|
|
|
|
|
* The selection can be duplicated (menu: "Edit/Duplicate" or Ctrl+B).
|
|
|
|
|
* The size of the default font can now be adjusted (choose between small (current),
|
|
|
|
|
medium and large on the Display/General page of the setup dialog).
|
|
|
|
|
* The number of points used for circle interpolation can now be adjusted
|
|
|
|
|
on the Application/Circles page of the setup dialog.
|
|
|
|
|
* Some changes to make the user interface more consistent, i.e. "Synchonized views"
|
|
|
|
|
has been moved to "Display" where most users where expecting it to be.
|
|
|
|
|
* The selection now can be moved with the cursor keys in move mode.
|
|
|
|
|
* The cell selection dialog allows to specify glob pattern wildcards in the filter box now.
|
|
|
|
|
* OASIS CBLOCK compression and strict mode writing is supported now.
|
|
|
|
|
* Multiple cells now can be selected in the cell tree. Some functions operate on that set (i.e. delete, copy, hide).
|
|
|
|
|
* KLayout now has a LEF/Def import feature. See About LEF/DEF Import for details.
|
|
|
|
|
* This feature is somewhat experimental. Feedback is welcome about that feature.
|
|
|
|
|
|
|
|
|
|
Solved bugs:
|
|
|
|
|
* Edit/Select/Disable All not working
|
|
|
|
|
This function is supposed to disable all selectable items. Instead, an internal error message is issued.
|
|
|
|
|
* Build problems with gcc 4.0
|
|
|
|
|
* GDS text size is based on micron instead of user units
|
|
|
|
|
Because of this the text object size may not be correct if the user unit is not micron.
|
|
|
|
|
* Arrow keys may behave differently
|
|
|
|
|
This can be annoying effects if you are used to a particular behavior. On the other hand, moving with
|
|
|
|
|
the arrow keys now is possible in move mode.
|
|
|
|
|
* -z option works differently
|
|
|
|
|
"-z" not is a true "non-GUI" mode, in which no XServer connection is made on Linux. The advantage of this
|
|
|
|
|
is that KLayout can be used as a engine on display-less servers. But some scripts depending on MainWindow or
|
|
|
|
|
LayoutView objects will not work because these objects are no longer available. The solution will be to
|
|
|
|
|
restore the original behavior of "-z" and implement a different, true display-less mode (i.e. "-zz").
|
|
|
|
|
* Crash when using custom key bindings on some platforms
|
|
|
|
|
On some platforms, apparently Linux and recent Qt versions, KLayout crashes when custom key bindings
|
|
|
|
|
are defined and the respective key is pressed.
|
|
|
|
|
* Issues with the macro tree
|
|
|
|
|
Drag & drop does not work correctly within the macro tree on Windows. KLayout crashes when trying to
|
|
|
|
|
open a macro file that is not writable.
|
|
|
|
|
|
|
|
|
|
0.21.19 (2012-06-19):
|
|
|
|
|
* Gerber file reader enhancements: Negative contrast layers supported now
|
|
|
|
|
with an option to provide a background and 'real' inversion.
|
|
|
|
|
* Gerber reader bugfix: SR command implemented correctly now also for
|
|
|
|
|
negative contrast.
|
|
|
|
|
* Enhancement: transient selection markers are drawn over other markers
|
|
|
|
|
for better visibility.
|
|
|
|
|
* Bugfix: XOR tool can be canceled without crash.
|
|
|
|
|
* Fixed build problems with gcc 4.7.0.
|
|
|
|
|
* Fixed a layout import bug (cells have been deleted which should have been kept).
|
|
|
|
|
* OASIS writer bugfixes: don't accumulate rounding errors when writing type 0
|
|
|
|
|
or type 1 pointlists. Avoid writing invalid type 0 and 1 pointlists in certain
|
|
|
|
|
cases.
|
|
|
|
|
|
|
|
|
|
0.21.18 (2012-05-14):
|
|
|
|
|
* Gerber file reader enhancements: SR (step-and-repeat) is supported now.
|
|
|
|
|
* Gerber reader bugfix: AM macro expansion was not done correctly sometimes.
|
|
|
|
|
* Gerber reader enhancements: removed some superfluous warnings.
|
|
|
|
|
* CIF writer: convert OASIS circles correctly to "R" round flash primitives.
|
|
|
|
|
* Bugfix: copy & paste of layers in the layers tree now works and the copied
|
|
|
|
|
layers are pasted to the current position.
|
|
|
|
|
|
|
|
|
|
0.21.17 (2012-04-12):
|
|
|
|
|
* The memory footprint of 8-bit images has been reduced significantly.
|
|
|
|
|
* The "Save current cell as" bug (see here) has been fixed: this function now works as expected.
|
|
|
|
|
|
|
|
|
|
0.21.16 (2012-03-05):
|
|
|
|
|
* GDS format readers and writers now support time stamps: by default, the
|
|
|
|
|
current time is written to the files. This option can be turned off in the
|
|
|
|
|
"Save Layout Options" to simplify comparison of binary files for example.
|
|
|
|
|
In addition, the timestamp of the BGNLIB record is read and displayed in the
|
|
|
|
|
"Layout Properties" page.
|
|
|
|
|
* The GDS reader now is somewhat less strict and also accepts certain broken versions
|
|
|
|
|
(i.e. missing ENDEL records).
|
|
|
|
|
* Several bug fixes related to scripting applications: Proc objects are held by the
|
|
|
|
|
application now, Application does not abort in non-GUI mode in operations that take
|
|
|
|
|
some time and try to display a progress bar.
|
|
|
|
|
* DXF bugfix: layer names now do no longer contain blanks which made files unreadable
|
|
|
|
|
by other tools like AutoCad.
|
|
|
|
|
* Bugfix: foreground objects (i.e. rulers) are now correctly rendered in printout.
|
|
|
|
|
|
|
|
|
|
0.21.15 (2012-01-22):
|
|
|
|
|
* Bugfix: the correct initial cell now is selected. Formerly, the largest
|
|
|
|
|
cell was selected even it is was not a top cell.
|
|
|
|
|
* "Show only selected" in the layer panel does not clear the selection any longer.
|
|
|
|
|
* GDS reader now is less strict with respect to record order of STRANS, MAG and ANGLE.
|
|
|
|
|
* Excellon drill file reader is now conforming to the specification in many respects.
|
|
|
|
|
* Instances are not selected if the cell does not contain shapes in visible layers.
|
|
|
|
|
* Marker browser does now work correctly when layer view transformations are present.
|
|
|
|
|
* DXF reader enhancements: read LAYER table and assign GDS layers in that order,
|
|
|
|
|
except for layer which got a layer name through their name (i.e. L1D100).
|
|
|
|
|
Bugfix: don't suppress INSERT's if the layer is not mapped. Write TEXT and
|
|
|
|
|
MTEXT correctly (multi-line support, small chunks for MTEXT, character alignment).
|
|
|
|
|
New option: keep all cells for DXF reader. Added elliptic interpolation edge type
|
|
|
|
|
(not really tested yet). HATCH objects with bulges and various edge types are
|
|
|
|
|
implemented now. MTEXT supported now. New option: convert text to polygon for
|
|
|
|
|
unicode support.
|
|
|
|
|
* Changed default sorting of layers: always sort by layer number first, even if there
|
|
|
|
|
is a name. If there is no layer number, sort by name.
|
|
|
|
|
|
|
|
|
|
0.21.14 (2011-11-28):
|
|
|
|
|
* "Synchonized views" and "Select top level only" configuration shortcuts
|
|
|
|
|
added to the "Views" menu.
|
|
|
|
|
* Gerber reader bugfixes and enhancements: less strict parsing of aperture
|
|
|
|
|
definitions, rotation of aperture macro elements is not considered
|
|
|
|
|
correctly. Enhanced drill file reader.
|
|
|
|
|
* Disabled cell copy & paste in viewer mode (was not working correctly).
|
|
|
|
|
* Bugfix: it was possible to create an invalid configuration when removing
|
|
|
|
|
all default stipples (lead to a crash on the next KLayout start).
|
|
|
|
|
* Bugfix: an error appeared when switching the tabs in the layer panel in
|
|
|
|
|
certain configuration involving groups.
|
|
|
|
|
* Correct initialization of ruby interpreter to support Ruby 1.9.2 and
|
|
|
|
|
later.
|
|
|
|
|
* Bugfix: marker browser was only partially reporting collected markers
|
|
|
|
|
for certain categories.
|
|
|
|
|
* XOR now has an option to make use of multiple cores using a configurable
|
|
|
|
|
number of threads.
|
|
|
|
|
* Bugfix: reset of configuration required a restart.
|
|
|
|
|
* Bugfix: OASIS reader now is more robust against overflow for g-deltas.
|
|
|
|
|
* GDS reader enhancement: An invalid angle (outside the range of -360 to
|
|
|
|
|
360 degree) now is no longer an error and the angle is automatically
|
|
|
|
|
restricted to the valid range.
|
|
|
|
|
|
|
|
|
|
0.21.13 (2011-09-19):
|
|
|
|
|
* A bug in the clip function was fixed which was related to empty cells
|
|
|
|
|
(reported in the forum)
|
|
|
|
|
* By default, the first level of hierarchy is shown now if a new layout
|
|
|
|
|
is opened. That feature can be adjusted using the "Default levels of
|
|
|
|
|
hierarchy" setting on the "General" page in the setup dialog.
|
|
|
|
|
* For multiple top cells, the cell with the larges footprint is selected
|
|
|
|
|
initially.
|
|
|
|
|
* A simple print function (available in the "File" menu)
|
|
|
|
|
* Support for command 93 in CIF (AREF)
|
|
|
|
|
* Improved handling of single point paths. In particular with round ends.
|
|
|
|
|
They now render a circle in OASIS. In reverse, OASIS circles now render
|
|
|
|
|
single-point paths with round ends in GDS.
|
|
|
|
|
* Ruby scripts now work more reliably under ruby 1.9 (i.e. Windows binary).
|
|
|
|
|
Formerly, some operations failed due to improper initialization of the
|
|
|
|
|
encoding system (i.e. Dir.glob).
|
|
|
|
|
* Clean uninstaller under Windows (removes all registry entries).
|
|
|
|
|
|
|
|
|
|
0.21.12 (2011-07-29):
|
|
|
|
|
* Bugfix: GDS2Text format was not recognized correctly in some cases.
|
|
|
|
|
* Texts: strings with line breaks can be edited now (line breaks are shown
|
|
|
|
|
as \n). Text size is shown more realistic now. Alignment flags are
|
|
|
|
|
supported in GDS2 and can be edited now.
|
|
|
|
|
* Layer and datatype is shown in addition to OASIS layer names in the layer
|
|
|
|
|
list. The old behaviour can be configured by unchecking the "Always show
|
|
|
|
|
layer and datatype" checkbox on the "Layers" page in the setup dialog.
|
|
|
|
|
* For most file dialogs, the specific filter is the default now (i.e.
|
|
|
|
|
"*.lyp" is default instead of "All files" for the layer properties file
|
|
|
|
|
dialogs.)
|
|
|
|
|
* There is a "all layout files" filter for the layout file selection dialogs.
|
|
|
|
|
|
|
|
|
|
0.21.11 (2011-06-26):
|
|
|
|
|
* Bugfix: command line option -p was not working correctly.
|
|
|
|
|
* Bugfix: writing layouts with large coordinates was producing invalid OASIS
|
|
|
|
|
files in some cases.
|
|
|
|
|
* The tarkit now contains the files necessary for a build with Visual Studio
|
|
|
|
|
on Windows.
|
|
|
|
|
|
|
|
|
|
0.21.10 (2011-05-07):
|
|
|
|
|
* Bugfix: content of cell was not shown correctly when the cell was moved.
|
|
|
|
|
* Bugfix: PCB import was not working properly (Bottom mounting mode was
|
|
|
|
|
broken, top cell and dbu were not set correctly when a PCB project file
|
|
|
|
|
was imported directly).
|
|
|
|
|
* Bugfix: RVE reader was not correctly handling check names with a dot.
|
|
|
|
|
|
|
|
|
|
0.21.9 (2011-04-20):
|
|
|
|
|
* Bugfix: Loading of layer files with tabs was not working properly: the
|
|
|
|
|
first tab's name was discarded.
|
|
|
|
|
|
|
|
|
|
0.21.8 (2011-04-06):
|
|
|
|
|
* Bugfix: navigator was broken. It was not functional if KLayout was closed
|
|
|
|
|
with the navigator open.
|
|
|
|
|
|
|
|
|
|
0.21.7 (2011-03-24):
|
|
|
|
|
* DXF bugfixes (arc interpolation of polylines).
|
|
|
|
|
* Performance enhancement of "test for shapes in view" feature of layer list.
|
|
|
|
|
|
|
|
|
|
0.21.6 (2011-02-20):
|
|
|
|
|
* DXF enhancements (support for bulges for polylines).
|
|
|
|
|
* Bugfix: RBA::Edge.intersect? reports intersections correctly also if edges
|
|
|
|
|
are collinear.
|
|
|
|
|
* Performance bugfix: selection was slow for certain cases of hierarchy.
|
|
|
|
|
|
|
|
|
|
0.21.5 (2011-02-03):
|
|
|
|
|
* DXF enhancements (some polylines now have the correct width).
|
|
|
|
|
* An option to select how instances are placed (at origin or lower left
|
|
|
|
|
corner of bounding box).
|
|
|
|
|
* Bugfix: when placing an instance at the lower left bounding box corner,
|
|
|
|
|
it is guaranteed that the origin is on grid.
|
|
|
|
|
* Stable operation on UTF-8 filesystems and with non-english locales on
|
|
|
|
|
Linux (i.e. consistent use of dot as decimal point). However, UTF-8 file
|
|
|
|
|
names are not correctly displayed although the file is opened correctly.
|
|
|
|
|
This will be fixed in the next major release.
|
|
|
|
|
|
|
|
|
|
0.21.4 (2011-01-19):
|
|
|
|
|
* Correct installation of the image reader plugins for the Windows packages.
|
|
|
|
|
* Bugfix: rotate counterclockwise was clockwise and vice versa.
|
|
|
|
|
* Bugfix: "draw border instances of arrays" feature was broken.
|
|
|
|
|
* Fixed a ruby crash on some systems (related to an initial 'require' on a
|
|
|
|
|
ruby module loaded with -rm).
|
|
|
|
|
* CIF reader enhancement: "DS" statements are now accepted with a single
|
|
|
|
|
value also.
|
|
|
|
|
* The Windows installation now also includes the standard Ruby modules.
|
|
|
|
|
|
|
|
|
|
0.21.3 (2010-12-27):
|
|
|
|
|
* DXF reader and writer enhancements. The reader now allows to specify how
|
|
|
|
|
POLYLINE entities are read. In most cases, the "Automatic" mode will be
|
|
|
|
|
appropriate. The writer was enhanced by providing an option which
|
|
|
|
|
determines how to write polygons. The default method is POLYLINE. A
|
|
|
|
|
comprehensive description of the DXF format, as KLayout understands it,
|
|
|
|
|
together with a description of the modes, is given here.
|
|
|
|
|
|
|
|
|
|
0.21.2 (2010-12-19):
|
|
|
|
|
* RBA bugfix: RdbItem.each_value was not working on const references.
|
|
|
|
|
* DXF reader and writer enhancements for improved interoperability with
|
|
|
|
|
other tools.
|
|
|
|
|
* Unit option for DXF input (to specify the units of the drawing).
|
|
|
|
|
* Bugfix: layer mapping was not working correctly for DXF and CIF output.
|
|
|
|
|
|
|
|
|
|
0.21.1 (2010-12-06):
|
|
|
|
|
* Added cell margins for fill utility.
|
|
|
|
|
* A couple of bugs fixed (related to Diff tool, marker database reader,
|
|
|
|
|
Ruby scripting).
|
|
|
|
|
* Source is compatible with earlier versions of Qt now (down to 4.2.3).
|
|
|
|
|
* Bugfix: persistency of reader options was broken.
|
|
|
|
|
* Enhanced DXF and CIF reader and writer functionality with improved
|
|
|
|
|
compatibility with other systems.
|
|
|
|
|
|
|
|
|
|
0.21 (2010-11-28):
|
|
|
|
|
* Support for DXF format (reading and writing).
|
|
|
|
|
ASCII and binary format are supported. There is an open issue how to
|
|
|
|
|
represent layouts with multiple top cells. Currently, the ENTITY section
|
|
|
|
|
is always empty and all cells are put into BLOCKS sections. DXF units
|
|
|
|
|
will be micron and the database unit must be selected manually when
|
|
|
|
|
layouts are read.
|
|
|
|
|
* Support for CIF format (reading and writing).
|
|
|
|
|
There is an open issue how to deal with paths. By default, CIF states
|
|
|
|
|
that paths are supposed to have round ends. Obviously that interpretation
|
|
|
|
|
is not commonly used. Options are provided which control how path objects
|
|
|
|
|
are read and written.
|
|
|
|
|
* Tabs for the layer panel. This feature is explained here.
|
|
|
|
|
* Flat cell list and cell list sorting modes. The feature is explained here.
|
|
|
|
|
* Dockable tool boxes.
|
|
|
|
|
Layer list, cell list, layer toolbox and navigator are now dockable and
|
|
|
|
|
can be dragged to another location, torn off the main window or closed
|
|
|
|
|
with Qt's standard dockable window controls. The position and the state
|
|
|
|
|
of the dockable windows is saved in the settings and session files.
|
|
|
|
|
* A ruler embedded in the background image.
|
|
|
|
|
Now, a small ruler is embedded into the background which shows the
|
|
|
|
|
dimension scale similar to a map. It can be disabled in the setup dialog
|
|
|
|
|
on the "Display/Background" page.
|
|
|
|
|
* Image quality enhancement by oversampling. The feature is explained here.
|
|
|
|
|
* The "Diff" tool. The Diff tool produces a marker database containing a
|
|
|
|
|
description of the differences. A detailed description can be found here.
|
|
|
|
|
* Snapping to objects is provided as an option for edit mode. In this mode,
|
|
|
|
|
the mouse snaps to vertices and edges of visible objects. This mode can
|
|
|
|
|
be enabled with the "Objects" checkbox on the "Editor Options" page (F3
|
|
|
|
|
key or "Edit/Editor Options" menu).
|
|
|
|
|
* The reference point for the placement of instances now is the lower left
|
|
|
|
|
point of the placed cell's bounding box, not the origin.
|
|
|
|
|
* Dialog geometry persistent now.
|
|
|
|
|
Marker, shape and instance browsers now save their geometries and
|
|
|
|
|
splitter pane configurations when the application exits.
|
|
|
|
|
* Instance placement now uses bbox origin, not cell origin.
|
|
|
|
|
This simplifies placement of cells with their origin not aligned with
|
|
|
|
|
the content.
|
|
|
|
|
* Fill (tiling) tool. The tool is found in "Edit/Utilities/Fill Tool". A
|
|
|
|
|
detailed description can be found here.
|
|
|
|
|
* In some places, particular in the ruler display string, expressions can
|
|
|
|
|
be used. For rulers, the previous display string placeholder scheme is
|
|
|
|
|
replaced by the more powerful expression expansion scheme (see Ruler
|
|
|
|
|
properties for details).
|
|
|
|
|
* Build support for VC++ and Visual Studio 2010. The Windows 64bit build
|
|
|
|
|
now is based on that environment. Note: Visual Studio 2010 no longer
|
|
|
|
|
supports Windows 2000. To use KLayout on Windows 2000, a legacy build
|
|
|
|
|
based on MinGW is provided.
|
|
|
|
|
|
|
|
|
|
0.20.2 (2010-05-25):
|
|
|
|
|
* Bugfix: marker browser crashed when opened from menu and the maximum
|
|
|
|
|
number of markers was set differently from default.
|
|
|
|
|
|
|
|
|
|
0.20.1 (2010-05-23):
|
|
|
|
|
* Navigator now allows to drag a zoom box in the usual way.
|
|
|
|
|
* Paths with odd width (in database units) are shown correctly.
|
|
|
|
|
* Some bugfixes (for a list of fixed bugs see Known bugs in version 0.20)
|
|
|
|
|
concerning the net tracer and the Gerber import feature.
|
|
|
|
|
* Support for Ruby 1.9 (experimental).
|
|
|
|
|
* Support for 64 bit Windows (experimental).
|
|
|
|
|
|
|
|
|
|
0.20 (2010-05-01):
|
|
|
|
|
* Import option for Gerber PCB data ("File/Import" menu entry). Details
|
|
|
|
|
about this function can be found in the Importing Gerber PCB files
|
|
|
|
|
section in the advanced features manual.
|
|
|
|
|
* A function to import another stream file into the current file.
|
|
|
|
|
This avoids having to use copy & paste and provides a couple of nice
|
|
|
|
|
options. Details about this function can be found in the Importing other
|
|
|
|
|
layout files section in the advanced features manual.
|
|
|
|
|
* A simple XOR tool providing a flat XOR between two layouts. A tolerance
|
|
|
|
|
can be set to suppress small deviations. A tiling option is provided to
|
|
|
|
|
reduce memory requirements for large layouts. The flat approach probably
|
|
|
|
|
limits the application to "almost flat", small to medium sized layouts.
|
|
|
|
|
Details about this function can be found in the The XOR tool section in
|
|
|
|
|
the advanced features manual.
|
|
|
|
|
* A net tracing tool to trace single nets of conductive layers connected
|
|
|
|
|
through via shapes. The function is intended for extracting single small
|
|
|
|
|
nets and it's not performance optimized for the case of huge power nets.
|
|
|
|
|
Details about this function can be found in the The net tracing feature
|
|
|
|
|
section in the advanced features manual.
|
|
|
|
|
* A navigator window that shows current view's rectangle and allows to
|
|
|
|
|
control the rectangle by dragging or resizing it.
|
|
|
|
|
* Multi threading support for drawing increases the drawing performance on
|
|
|
|
|
multi-core CPU's by rendering different layers on different CPU's. The
|
|
|
|
|
number of threads to use can be set in the setup dialog in the "Display"
|
|
|
|
|
group under "Optimizations". By default, a single thread is used.
|
|
|
|
|
* "Make array" method ("Edit/Selection" menu) to multiply the selection
|
|
|
|
|
into an array arrangement.
|
|
|
|
|
* A function to add a layout already loaded to a view ("File/Pull In
|
|
|
|
|
Other Layout").
|
|
|
|
|
* A function to scan a layer's geometry and create a marker database from
|
|
|
|
|
that. The menu function is found in the "Tools/Verification" menu. It
|
|
|
|
|
will scan all selected layers either flat or hierarchical and create a
|
|
|
|
|
marker database containing the shapes as markers.
|
|
|
|
|
* Layer mapping on input: the reader options now allow to specify a
|
|
|
|
|
mapping together with a layer specification. In addition to specifying
|
|
|
|
|
the layers to read, a target can be given which specifies which layer
|
|
|
|
|
the shapes will be stored under (See "Reader Options" dialog found in
|
|
|
|
|
the "File" menu).
|
|
|
|
|
* A couple of new display options:
|
|
|
|
|
o Abstract mode (shows only the outer interfacing shapes of child cells.
|
|
|
|
|
o Child hierarchy level layout can be configured to be shown in different
|
|
|
|
|
brightness, hollow fill or static neutral color to differentiate top
|
|
|
|
|
level from bottom level layout.
|
|
|
|
|
o Enhancements for the hierarchy level specifications in the layer source
|
|
|
|
|
notation.
|
|
|
|
|
* A log viewer is provided to catch warning messages. The menu entry to open
|
|
|
|
|
the log viewer is found in the "File" menu.
|
|
|
|
|
* The setup dialog has been reorganized to make room for more property pages.
|
|
|
|
|
* Instances now show the cell's content when being moved instead just a
|
|
|
|
|
rectangle. This feature can be disabled.
|
|
|
|
|
* Various usability enhancements (i.e. mouse cursor now shows activity,
|
|
|
|
|
status bar shows short shape statistics etc.).
|
|
|
|
|
* An option to not write empty cells.
|
|
|
|
|
* Support for missing cells in the input layout: those cells get marked and
|
|
|
|
|
are not produced in the output unless they have received content. That
|
|
|
|
|
allows to load and save layouts with missing cells without producing empty
|
|
|
|
|
cells for those missing cells.
|
|
|
|
|
* Some new functions in the layer list context menu ("Show All", "Hide All",
|
|
|
|
|
"Show Only Selected").
|
|
|
|
|
* Various bug fixes (i.e. for clip function).
|
|
|
|
|
* A couple of new RBA methods.
|
|
|
|
|
|
|
|
|
|
0.19.3 (2009-12-17):
|
|
|
|
|
* Some bugfixes (for a list of fixed bugs see Known bugs in version 0.19.2).
|
|
|
|
|
* To specify the installation path (where the ".rbm" files are looked up),
|
|
|
|
|
a new environment variable "KLAYOUT_PATH" is provided. This variable
|
|
|
|
|
currently supports a single entry only. In that sense it's not a "path"
|
|
|
|
|
right now.
|
|
|
|
|
|
|
|
|
|
0.19.2 (2009-12-05):
|
|
|
|
|
* Some bugfixes (for a list of fixed bugs see Known bugs in version 0.19.1).
|
|
|
|
|
|
|
|
|
|
0.19.1 (2009-11-30):
|
|
|
|
|
* Some bugfixes (for a list of fixed bugs see Known bugs in version 0.19).
|
|
|
|
|
|
|
|
|
|
0.19 (2009-11-21):
|
|
|
|
|
* Images: it is possible now to load image files (JPG, GIF, TIFF etc.) and
|
|
|
|
|
display them below the drawn layout. The display of the images can be
|
|
|
|
|
adjusted in many ways, i.e. placement, scaling, rotation, mirroring,
|
|
|
|
|
color/contrast/brightness adjustments and false color mapping for gray
|
|
|
|
|
level images. Images are fully supported by RBA. The feature is described
|
|
|
|
|
in detail in Adding images.
|
|
|
|
|
* Marker browser: the marker browser is based on the report database (RDB).
|
|
|
|
|
This is a new concept that has been introduced as a container for report
|
|
|
|
|
items, in particular marker objects but also for a number of additional
|
|
|
|
|
annotations including screenshots for documentation. An import of Calibre
|
|
|
|
|
DRC databases is provided. The RDB is fully supported by RBA.
|
|
|
|
|
The feature is described in detail in The marker browser.
|
|
|
|
|
* Some enhancements for the layer views: invisible layers are now shown
|
|
|
|
|
differently in a "collapsed" way. Thus, the layer's colors and styles are
|
|
|
|
|
still recognizable. The new features are described in detail in Telling
|
|
|
|
|
used from unused layers.
|
|
|
|
|
* In the layer list, unused layers can now be hidden and layers without
|
|
|
|
|
shapes in view can be marked unused or hidden. The normal mode of marking
|
|
|
|
|
layers unused when the cell does not contain any shapes at all is still
|
|
|
|
|
available. Both modes are available as checkable items in the layer list's
|
|
|
|
|
context menu.
|
|
|
|
|
* A "View" menu has been added with fast access to certain display options,
|
|
|
|
|
i.e. turn grid on an off. A number of default grids can be defined for
|
|
|
|
|
quick selection in the "View" menu. On request, the tool bar can now be
|
|
|
|
|
hidden as well as the layer and hierarchy lists.
|
|
|
|
|
* A key binding editor is provided. This way, all menu functions can be
|
|
|
|
|
assigned arbitrary key shortcuts in a more comfortable ways.
|
|
|
|
|
* The mid mouse button can be used to pan (drag) the view window now.
|
|
|
|
|
* Various RBA enhancements, i.e. a method to compute the intersection point
|
|
|
|
|
between edges.
|
|
|
|
|
|
|
|
|
|
0.18.2 (2009-11-05):
|
|
|
|
|
* Enhancements for building with gcc 4.4.x and Qt 4.5.x.
|
|
|
|
|
* OASIS reader now also supports text objects with forward references to
|
|
|
|
|
text string definitions.
|
|
|
|
|
|
|
|
|
|
0.18.1 (2009-08-02):
|
|
|
|
|
* Some bugfixes (for a list of fixed bugs see Known bugs in version 0.18)
|
|
|
|
|
in particular for MacOS users.
|
|
|
|
|
|
|
|
|
|
0.18 (2009-07-07):
|
|
|
|
|
* Some bugfixes (for a list of fixed bugs see Known bugs in version 0.17.2).
|
|
|
|
|
* Added support for the GDS2 text format. This is a contribution by
|
|
|
|
|
Romain Gauci from Oscillated Recall Technology (http://www.or-tech.co.jp).
|
|
|
|
|
* Session persistence: sessions (files, layers, bookmarks, setup) can be
|
|
|
|
|
saved and restored. Details for this feature can be found here.
|
|
|
|
|
* Reader options can be specified in a dialog now (File menu). Some GDS2
|
|
|
|
|
specific reader options are available: allow multi XY, allow big records
|
|
|
|
|
and several box record handling modes. Details for this feature can be
|
|
|
|
|
found here.
|
|
|
|
|
* GDS2 specific writer options (max vertex option, multi XY record option,
|
|
|
|
|
max cell name length).
|
|
|
|
|
* The stipple palette now is editable. A corresponding page has been added
|
|
|
|
|
in the setup dialog.
|
|
|
|
|
* Flatten cell function. A cell can be flattened which will remove the cell
|
|
|
|
|
and all the subcells unless not specified otherwise. This function can be
|
|
|
|
|
found in the cell's context menu. Details for this feature can be found
|
|
|
|
|
here.
|
|
|
|
|
* The 'Make Cell' operation provides a nice origin now. Before, the origin
|
|
|
|
|
of the new cell was far off sometimes.
|
|
|
|
|
* Accept drag & drop of .lyb, .lys, .lyp, .rb, .rbm and layout files.
|
|
|
|
|
* Switched to standard file dialogs where this has not been the case yet.
|
|
|
|
|
In particular on the Windows platform, the application will behave somewhat
|
|
|
|
|
more consistent.
|
|
|
|
|
* Added an option to draw only border instances of arrays. This option can be
|
|
|
|
|
found on the 'Misc.' tab of the setup dialog.
|
|
|
|
|
* Added the capability to define global ruby modules using the ".rbm"
|
|
|
|
|
extension and putting them into the installation directory.
|
|
|
|
|
* Full cell copy & paste functions can now be found in hierarchy panel
|
|
|
|
|
context menu.
|
|
|
|
|
* Enhancement of grid snapping in partial mode. Before, a offgrid vertex could
|
|
|
|
|
not be brought on-grid because movement was confined to grid steps.
|
|
|
|
|
* Number of points for polygons is shown now in the polygon property dialog.
|
|
|
|
|
* Hole resolution for GDS2 and OASIS writer. Before, polygons with holes
|
|
|
|
|
(which can be produced by scripts) were rejected.
|
|
|
|
|
* Some bugfixes for clip, using booleans for clip to overcome some problems
|
|
|
|
|
with hole connectors and spikes - slow but safe..
|
|
|
|
|
* '#' character is not longer used when creating cell variants - instead '$'
|
|
|
|
|
is used to enhance the compatibility with other tools which do not allow
|
|
|
|
|
the "#" character as part of cell names.
|
|
|
|
|
* On paste, a 'fit selection' is done to show what has been pasted.
|
|
|
|
|
* Mouse wheel mode is configurable now (shift/ctrl modifier behaviour).
|
|
|
|
|
The 'alternative mode' can be found on the 'Misc.' tab in the setup dialog.
|
|
|
|
|
* Option to clear all rulers when cell is changed. This option can be found
|
|
|
|
|
on the 'Misc.' tab in the setup dialog in the 'On Cell Change' group.
|
|
|
|
|
|
|
|
|
|
RBA enhancements:
|
|
|
|
|
* A new class: ICplxTrans and related functions.
|
|
|
|
|
* A recursive shape iterator simplifies hierarchical region queries and
|
|
|
|
|
"as if flat" traversal of cells.
|
|
|
|
|
* Polygon: hull and hole can be assigned now, compress method, point accessors.
|
|
|
|
|
* The installation path now is available.
|
|
|
|
|
* Added a method which allows to display a message in the status bar.
|
|
|
|
|
* The transient selection now is available for RBA procedures.
|
|
|
|
|
* New events are generated if selection and transient selection changes.
|
|
|
|
|
* Added a generic assign method for copyable objects.
|
|
|
|
|
* Added new classes 'LayerMap' and 'LoadLayoutOptions'.
|
|
|
|
|
* Added two 'read' methods to Layout class.
|
|
|
|
|
* Added a couple of methods to 'LayerInfo' (constructors, compare, ...).
|
|
|
|
|
* Added a 'load_layout' method to LayoutView.
|
|
|
|
|
* Added more cm_* methods to MainWindow.
|
|
|
|
|
|
|
|
|
|
0.17.2 (2009-04-20):
|
|
|
|
|
* Some bugs are fixed now (for a list of fixed bugs see Known bugs in
|
|
|
|
|
version 0.17.1).
|
|
|
|
|
* The GDS2 writer now normalizes AREF records. This way compatibility with
|
|
|
|
|
other EDA systems is enhanced.
|
|
|
|
|
|
|
|
|
|
0.17.1 (2009-03-27):
|
|
|
|
|
* The display freezing bug on Windows is fixed now (i.e. see Known bugs
|
|
|
|
|
in version 0.17).
|
|
|
|
|
|
|
|
|
|
0.17 (2009-03-23):
|
|
|
|
|
* Various layer operations are now available: boolean operations (AND, XOR,
|
|
|
|
|
NOT), layer merge and sizing. For a detailed description see Layer boolean
|
|
|
|
|
operations and Layer sizing. These operations are also available in RBA
|
|
|
|
|
(see RBA::EdgeProcessor and RBA::ShapeProcessor).
|
|
|
|
|
* Boolean and sizing operations are also available Shapewise boolean
|
|
|
|
|
operations and Shapewise sizing.
|
|
|
|
|
* Objects can now be aligned. For a detailed description of the alignment
|
|
|
|
|
function see Object alignment.
|
|
|
|
|
* The cell origin can be adjusted relative to the cell's bounding box.
|
|
|
|
|
For a detailed description see Cell origin adjustment.
|
|
|
|
|
* A 'corner rounding' function has been implemented to support
|
|
|
|
|
soft-cornered layout which is common in power applications. For a detailed
|
|
|
|
|
description see Corner rounding.
|
|
|
|
|
* Various layer operations are now implemented in edit mode: clear layer,
|
|
|
|
|
delete layer and edit layer properties. For a detailed description see
|
|
|
|
|
Layer operations: clear, delete, edit specification.
|
|
|
|
|
* The selection can now be scaled (The "Scale" function is available in the
|
|
|
|
|
"Selection" submenu of the "Edit" menu).
|
|
|
|
|
* An option is available that allows to select all hierarchy levels
|
|
|
|
|
automatically when a cell is opened (found in the "Misc." tab of the setup
|
|
|
|
|
dialog: "Select all hierarchy levels" must be checked).
|
|
|
|
|
* Various bug fixes (i.e. see Known bugs in version 0.16.1).
|
|
|
|
|
|
|
|
|
|
0.16.1 (2009-01-07):
|
|
|
|
|
* Various bug fixes (i.e. see Known bugs in version 0.16).
|
|
|
|
|
|
|
|
|
|
0.16 (2008-12-27):
|
|
|
|
|
* Some new editing capabilities: flatten, make cell, clear layer and a clip
|
|
|
|
|
function.
|
|
|
|
|
* Some RBA extensions, in particular the ability to modify layout by deleting
|
|
|
|
|
shapes and instances, replacing and transforming them, changing property
|
|
|
|
|
handles etc.
|
|
|
|
|
* Support for global preset of configuration (through a file called "layviewrc"
|
|
|
|
|
beside the executable binary) and a global RBA initialisation file (a file
|
|
|
|
|
called "rbainit" beside the executable binary).
|
|
|
|
|
* Transient selection: indicates by a faint selection marker what object is
|
|
|
|
|
below the mouse (can be disabled).
|
|
|
|
|
* The layer specification (layer, datatype, name) can be now be edited which
|
|
|
|
|
allows to move a complete layer to a different one.
|
|
|
|
|
* Undo buffering can now be disabled on the command line with the '-i' option.
|
|
|
|
|
This saves the memory otherwise required for storing the replay information.
|
|
|
|
|
* Directional constraints can be modified by using the Shift and Ctrl modifiers
|
|
|
|
|
on various operations such as rulers, movement, drawing etc.
|
|
|
|
|
* Now there is a 'most recently used' list ("Open Recent" in the "File" menu)
|
|
|
|
|
which shows the last layouts opened for easy re-opening.
|
|
|
|
|
* Reduced memory requirements for particular OASIS constructs (random repetitions)
|
|
|
|
|
* The instance browser now has a "Choose cell" button where the cell can be
|
|
|
|
|
chosen whose instances will be presented.
|
|
|
|
|
* For most editing operations, the status bar will now indicate more detailed
|
2019-03-31 16:50:53 +02:00
|
|
|
information such as move distance.
|
2017-09-10 19:04:31 +02:00
|
|
|
* Pasted shapes and instances now are selected initially.
|
|
|
|
|
* Enhanced OASIS compression mode (can be chosen from the options dialog on
|
|
|
|
|
saving). Reduces file size considerably by creating regular shape arrays if
|
|
|
|
|
possible at the cost of higher memory consumption and longer writing times.
|
|
|
|
|
* Various bug fixes (i.e. see Known bugs in version 0.15).
|
|
|
|
|
|
|
|
|
|
0.15 (2008-08-16):
|
|
|
|
|
* Editing capabilities. "klayout" in it's basic form still operates as pure
|
|
|
|
|
viewer. However, a mode is available that enables editing capabilities.
|
|
|
|
|
See Editor mode quickstart manual for a more detailed description
|
|
|
|
|
* Some RBA extensions: i.e. conversion from "double" type polygons to "integer"
|
|
|
|
|
type ones.
|
|
|
|
|
* A default layer table can be configured in the "Application" tab of the
|
|
|
|
|
setup dialog. This table will be loaded whenever a layout is opened or
|
|
|
|
|
created.
|
|
|
|
|
* A installer for Windows is provided now.
|
|
|
|
|
* Properties are supported on instances now as well.
|
|
|
|
|
* Code is compatible with gcc 4.3.0 now.
|
|
|
|
|
* Enhanced compatibility with SunStudio 11 compiler (in particular in RBA).
|
|
|
|
|
* Various bug fixes (i.e. in GDS reader and OASIS writer).
|
|
|
|
|
|
|
|
|
|
0.14 (2008-04-04):
|
|
|
|
|
* Several RBA extensions: i.e. alternative methods replacing different 'new'
|
|
|
|
|
variants by one 'new'. Markers now can be filled.
|
|
|
|
|
* Fixes for the bugs mentioned in the issues list.
|
|
|
|
|
* OASIS and GDS writing capabilities. Menu functions are provided to save a
|
|
|
|
|
layout and single cells as well as RBA extensions that allow to write a
|
|
|
|
|
layout. See Saving a layout or parts of it for details.
|
|
|
|
|
* Rulers and markers are drawn with a thin halo in background color to
|
|
|
|
|
enhance their visibility. This can be switched off in the setup dialog if
|
|
|
|
|
this is not desired. The screenshots illustrate the differences.
|
|
|
|
|
|
|
|
|
|
0.13 (2008-01-16):
|
|
|
|
|
* A couple of RBA extensions: API's for shape properties, rulers and geometry
|
|
|
|
|
selections.
|
|
|
|
|
* A bugfix for the OASIS reader (sometimes crashing the reader on
|
|
|
|
|
CBLOCK-compressed input)
|
|
|
|
|
* A function to descend into a cell in the hierarchy but keeping the context,
|
|
|
|
|
which is shown in dimmed colors. This function can be found in the "Display"
|
|
|
|
|
menu and is called "Descend". To use this function, select a shape or instance
|
|
|
|
|
inside the cell into which to descend. "Descend" then enters the next cell
|
|
|
|
|
along the path that leads to the selected shape or instance.
|
|
|
|
|
* The mouse wheel can be used to zoom in and out.
|
|
|
|
|
* Shift+right mouse button pressed now allows to "drag" layout in a "Google maps" fashion.
|
|
|
|
|
* Copy & paste now is available for layers as well.
|
|
|
|
|
* A ruby console is provided where ruby commands can be executed interactively.
|
|
|
|
|
* The way how the selection is displayed can be configured now (color, line width
|
|
|
|
|
and vertex size).
|
|
|
|
|
* The interrupt signal now is enabled again even if Ruby is activated (Ctrl+C
|
|
|
|
|
now works again).
|
|
|
|
|
|
|
|
|
|
0.12 (2007-11-02):
|
|
|
|
|
* Support for arbitrary angles on cell instances.
|
|
|
|
|
* A bugfix for the OASIS reader (CTRAPEZOIDS have not been read in some
|
|
|
|
|
cases). The OASIS reader now uses shape arrays to achieve are smaller
|
|
|
|
|
memory footprint in some cases.
|
|
|
|
|
* Multiple transformations are now allowed on layer source expressions
|
|
|
|
|
(see Transforming views and property selectors for a detailed description).
|
|
|
|
|
* Rulers now are configurable to a large extent. Multiple ruler templates may
|
|
|
|
|
be defined from which a certain ruler type can be chosen. Some of the new
|
|
|
|
|
ruler styles are no longer "rulers" but rather "annotations". See Ruler
|
|
|
|
|
properties for a description of that feature.
|
|
|
|
|
* Last, but not least: KLayout now can be scripted to some extend using Ruby
|
|
|
|
|
as the scripting language. For more information about this feature, see
|
|
|
|
|
RBA introduction.
|
|
|
|
|
|
|
|
|
|
0.11 (2007-06-26):
|
|
|
|
|
* Some bugs were fixed in the OASIS implementation. CBLOCK compression now
|
|
|
|
|
is supported. Forward cell name references (numerical ID is used before
|
|
|
|
|
being associated with a string) are supported as now. File global properties
|
|
|
|
|
are now read correctly. A bug reading certain CTRAPEZOID objects was fixed.
|
|
|
|
|
(Still, forward references are not allowed for text/property strings or
|
|
|
|
|
property names).
|
|
|
|
|
* A layout properties dialog has been added that shows basic properties of
|
|
|
|
|
the layout such as top cells, layers and others.
|
|
|
|
|
* The "Select Cell" dialog has been enhanced with the capability to hide
|
|
|
|
|
and show multiple cells in the cell list.
|
|
|
|
|
* A "zoom fit" mouse gesture was implemented: moving the mouse up and right
|
|
|
|
|
with the right mouse button pressed now fits the current cell into the window.
|
|
|
|
|
Moving up and left still zooms out.
|
|
|
|
|
* A bug in the GDS2 reader, dropping polygon points in rare cases, was fixed
|
|
|
|
|
|
|
|
|
|
0.10 (2007-05):
|
|
|
|
|
* The build script has been enhanced and supports Qt installations with
|
|
|
|
|
different locations for binaries, libraries and headers. See the Build
|
|
|
|
|
section for details about this.
|
|
|
|
|
* OASIS files can be read as well now. The reader automatically determines
|
|
|
|
|
the kind of file. OASIS layer names are supported. Due to the complexity
|
|
|
|
|
of the OASIS specification, or more precisely the effort required to test
|
|
|
|
|
a reader for meeting the specification, OASIS support currently is regarded
|
|
|
|
|
to be in "beta" state.
|
|
|
|
|
* Layers can now be organized hierarchically. Layers can be grouped which
|
|
|
|
|
allows to control visibility and other properties for the group as a whole.
|
|
|
|
|
Layers can be removed from the layer view list or new layer views can be created.
|
|
|
|
|
* The layout can be transformed (rotated, shifted, mirrored) now. This
|
|
|
|
|
transformation is specified in the layer panel as a part of the layer
|
|
|
|
|
source specification. An optional transformation can be applied per layer
|
|
|
|
|
or layer group. This way for example, different layouts can be aligned
|
|
|
|
|
over each other.
|
|
|
|
|
* Shape properties now are supported. Each shape may carry optional
|
|
|
|
|
properties that are read from GDS or OASIS files. A property selector
|
|
|
|
|
can be applied per layer view, so that a layer only shows these shapes
|
|
|
|
|
that match the given property selection.
|
|
|
|
|
* As an experimental feature, the inverse layout tree can be visualised
|
|
|
|
|
by allowing the minimum hierarchy level to go into the negative range.
|
|
|
|
|
The effect of this is, that a cell is shown in the context of all of
|
|
|
|
|
it's direct parents, if the first hierarchy level is set to -1. If set
|
|
|
|
|
to -2, the cell is shown in the context of all of it's parents and
|
|
|
|
|
grandparents and so on. Since there is no particular optimization for
|
|
|
|
|
this feature, performance may be poor, if a cell must be painted in a
|
|
|
|
|
huge number of contexts. In addition, the context displayed does not
|
|
|
|
|
participate in selection or ruler snapping.
|
|
|
|
|
|
|
|
|
|
0.9 (2006-04):
|
|
|
|
|
* This was the first official release
|
|
|
|
|
|