- transition ports have different cross_sections - get_bundle separation is now defined from center to center waveguide - contact has 4 ports, consistent with pads - pad takes size argument instead of (width, height), which is consistent with other rectangular structures - add filecache to store in files
3.1.6
- add `Component.write_netlist_dot` to write netlist graph in dot format - add handling of separation keyword argument to get_bundle_from_waypoints (thanks to Troy tvt173)
3.1.5
- raise ValueError when moving or rotating component. This avoids modifying the state (position, rotation) of any Component after created and stored in the cell cache. - add cross_section property to ports - `gdsfactory/routing/fanout.py` passes cross_section settings from port into bend_s - fix manhattan text, avoid creating duplicated cells - fix cdsem_all
3.1.4
- remove limitation from get_bundle_from_waypoints is that it requires to have all the ports lined up.
3.1.3
- because in 3.1.1 cells can accept `*args` containers now are detected when they have `Component.component` - rename `component.settings['component']` to `component.settings['contains']` - grating couplers have port with `vertical_te` or `vertical_tm` prefix - container keep the same syntax - `add_fiber_array` allows passing `gc_port_labels` - `add_fiber_array` and `add_fiber_single` propagate any non-optical ports to the container - fix ports transitions and raise error when saving gdsfile with duplicated cell names
3.1.2
- add `make doc` to update components documentation - add `routing.get_route_electrical` with sensitive defaults for routing electrical routes `bend=wire_corner` - `components.pad_array_2d` names `e{row}_{col}` - `components.pad_array` names `e{col}`