# Porting from Ipkiss 3.0.1 to Ipkiss 3.1¶

There are a small number of changes between IPKISS 3.0.1 (or early betas of 3.1) and the release of IPKISS 3.1 that can cause issues due to backward incompatibility.

## Luceda debug environment variables have changed¶

The environment variable IPKISS_LOG_LEVEL has been renamed to LUCEDA_LOG_LEVEL. If you have been using this variable (e.g. when prompted by Luceda support to assess a problem), you might need to rename this variable.

## PICAZZO: The Transition between WireWaveguides has an adaptive length¶

In PICAZZO 3.0.1, the default length of a WireWaveguideTransition and WireWaveguideTransitionFromPort was fixed to TECH.WG.SHORT_STRAIGHT, irrespective of the widths of both waveguide templates. Because this could easily lead to unphysically short tapers (e.g. between a 450nm wire and a 10um waveguide of a grating coupler), the length of the transition now scales with the difference between the square of the core widths. The minimum transition length is still TECH.WG.SHORT_STRAIGHT.

This can affect your code where you have transitions between 2 PICAZZO WireWaveguideTemplate instances with a large difference in core width.

## PICAZZO: The default purpose of ElectricalWireTemplate has changed¶

The PICAZZO component ElectricalWireTemplate (not the IPKISS component ElectricalWireTemplate) had a hardcoded purpose TECH.PURPOSE.DF.LINE. The component layout now has a parameter purpose, with a default value TECH.PURPOSE.DRAWING. If your code used this component, the layer will have changed, or your design could export differently to GDSII.