Phidl

Latest version: v1.7.2

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

Scan your dependencies

Page 3 of 9

1.4.3

New features
- Added `open_ports` argument to `pg.outline`, which allows you to cut holes in the outline at Port locations on a Device. See the [outline reference here](https://phidl.readthedocs.io/en/latest/geometry_reference.html#Outline) (thanks to Owen Medeiros omedeiro)

![phidl example image](https://amccaugh.github.io/phidl/outline_open_port.png)

- Easier-to-read quickstart tutorial
- Added `num_squares` to `info` dictionary of `pg.optimal_step` (thanks Ekkehart Schmidt)

Bugfixes
- Fixed bug in `pp.smooth()` that forced paths to start out traveling to the right (orientation = 0 degrees) (thanks to Sebastian Pauka spauka)

1.4.2

Bugfix release

Bugfixes
- Fix for Device xmin/xmax/ymin/ymax property assignment (e.g. `D.xmin = 30`) causing incorrect movement of references and labels

1.4.1

New features
- Added font support to `pg.text()` - Now you can use built-in fonts or specify a .TTF/.OTF font, including full unicode support (thanks to Sebastian Pauka spauka). See the [geometry reference library here](https://phidl.readthedocs.io/en/latest/geometry_reference.html#Text)
- Added new `smooth()` function that allows you to construct a smooth path by defining waypoints. The corners are smoothed either with the circular `pp.arc()` function or the adiabatic straight-to-bend `pp.euler()` function. See the [path/waveguide tutorial here](https://phidl.readthedocs.io/en/latest/tutorials/waveguides.html#Waypoint-based-path-creation)

![phidl example image](https://amccaugh.github.io/phidl/feature-smooth.png)

- Added `route_turn_manhattan()` function for more flexible manhattan routing (thanks to mr-roger-a)

Changes
- Fix to start/end angles for `pp.spiral()`
- Style consistency fix for `pp.arc()` when angle negative

Bugfixes
- Fix to casting issue when moving components with labels 78 (thanks to Joaquin Matres joamatab)

1.4

- Removal of `scipy` from strict installation requirements

Bugfixes
- Minor fix to `distribute()`

1.4.0

Huge update with lots of quality-of-life improvements.

New features
- New [path / waveguide module](https://phidl.readthedocs.io/en/latest/tutorials/waveguides.html) featuring intuitive and fast path building, sub-millisecond polygon generation, and modular cross-sections (thanks to Alex Tait atait, Dylan Oh dmwo, Samuel Gyger gyger, and Florian Vogelbacher).
- Now you can easily `Group` objects for easier manipulation. See the [Group tutorial here](https://phidl.readthedocs.io/en/latest/tutorials/group.html)
- Significantly extended documentation, including new tutorials, geometry library description with images, and API / function reference. See https://phidl.readthedocs.io/
- Docstrings added for all functions
- Addition of `pg.grid()` a grid-placement function for creating 2D arrays of devices (thanks to Samuel Gyger gyger)

Changes
- `filename` argument in `write_gds()` can now accept `pathlib` or file buffer (thanks to Samuel Gyger gyger)

Bugfixes
- int-casting fix in `routing` (thanks to Samuel Gyger gyger)
- Fix for `pg.optimal_step()` if `start_width==end_width` and `symmetric==True` (thanks to Ekkehart Schmidt)
- Fix capitalization errors of color names in `Layer` (thanks to Jeff Shainline)
- Fix to `endpoints.setter`

1.3.0

New features
- Now introducing the automatic `pg.packer()` geometry-packing tool:
![phidl example image](https://amccaugh.github.io/phidl/packer.png)
- New documentation for `pg.packer()`, `align()`, and `distribute()`. See [**Geometry + function documentation**](https://phidl.readthedocs.io/)

Changes
- Configurable toplevel `cellname` argument in `write_gds()`
- Change to the arguments available in `distribute()`. See the [**Geometry + function documentation**](https://phidl.readthedocs.io/)
- Rename `reflect()` to `mirror()`. Note that `reflect()` will continue to work until May 2021 so as not to break any existing code

Bugfixes
- Int-casting compatibility fix with latest numpy (thanks gyger)
- Bugfix to `pg.basic_die()` for non-square die (thanks jonnyfountain)
- Fixed harmless but annoying warning if PyQt was not installed
- Small under-the-hood optimizations

Page 3 of 9

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.