Skip to content

CHANGELOG

Unreleased

2.1.1 - 2026-07-25

  • Migrate docs from Jupyter Book to zensical #737
  • fix(gmeep): activate generic PDK in MPI subprocess script #720
  • fix: replace dead SAX docs link in sax_01_sax notebook #726
  • build(deps): bump conda-incubator/setup-miniconda from 3 to 4 #721
  • build(deps): bump release-drafter/release-drafter from 6 to 7 #722
  • build(deps): bump tornado from 6.5.5 to 6.5.6 in the uv group across 1 directory #727
  • build(deps): bump starlette from 1.0.0 to 1.0.1 in the uv group across 1 directory #725
  • build(deps): bump conda-incubator/setup-miniconda from 3 to 4 #721
  • build(deps): bump aiohttp from 3.13.5 to 3.14.0 in the uv group across 1 directory #724
  • build(deps): bump release-drafter/release-drafter from 6 to 7 #722
  • build(deps-dev): update sax requirement from ~=0.17.0 to >=0.17,<0.19 #723
  • build(deps): bump the uv group across 1 directory with 5 updates #719
  • build(deps-dev): update pyvista requirement from <=0.48.2 to <=0.48.4 #717

2.1.0 - 2026-05-17

  • Remove meshing module #670 #670
  • Allow 2D meep simulations in X- or Y-normal direction #672 #672
  • Check mesh order in LayerLevel.info instead of LayerLevel.mesh_order in meshwell #681 #681
  • Add target_neff parameter to mode solver and track_modes to sweep_bend_mismatch #716 #716
  • Clean up get_meep_geometry_from_component #671 #671
  • Rewrite patch_netlist for flat or recursive cases #675 #675
  • Bump tidy3d to version >= 2.10 and fix meow/sax incompatibility #698 #698
  • Bump sax to ~=0.17.0 #715 #715
  • Use lossless SiO2 by default #716 #717
  • Fix gmeep caching: remove kfactory metadata from hashing #679 #679
  • Use TemporaryDirectory while hashing gds files to avoid multi-process race conditions #682 #682
  • Add mode settings to hashed parameters #683 #683
  • Fix cascaded MZI notebook #685 #685
  • Relax constraint on numpy version #686 #686
  • Fix docs build with uv sync #694 #694
  • Fix Palace CI with pinned Apptainer tag #700 #700

2.0.1 - 2026-01-30

  • fix elmer #665
  • Remove matthew from codeowners #666
  • Fix region_to_shapely_polygons #662
  • update luminescent #661
  • Fix extrusion layer handling in MEOW class by using layer tuples #668
  • update sax #669

2.0.0 - 2025-11-13

  • refactor meshwell plugin #633
  • Add minimal Copilot Setup Steps #654
  • Fix Palace availability in CI documentation builds using Apptainer containers #652
  • Fix Palace capacitance computation for new meshwell #641
  • Fix Jupyter Book logo paths in documentation configuration #650
  • Run pre-commit hooks #648
  • Fix vlsir tests for newer gdsfactory #646
  • Replace non-existent Palace Docker image with Apptainer-based CI setup #643
  • Add palace in github actions, fix palace electrostatics simulation. #631
  • better error message for gc sim #638
  • Fix region_to_shapely_polygons #662
  • Bump actions/setup-python from 5 to 6 #655
  • Bump astral-sh/setup-uv from 6 to 7 #659
  • Fix Jupyter Book logo paths in documentation configuration #650
  • Bump actions/upload-pages-artifact from 3 to 4 #636
  • Bump actions/checkout from 4 to 5 #637
  • update luminescent #661
  • refactor meshwell plugin #633
  • Fix Jupyter Book logo paths in documentation configuration #650
  • Run pre-commit hooks #648
  • Update logos #628

1.4.2 - 2025-08-13

  • fix docs #625
  • sax plot_model: better log scaling, better labelling #621
  • improve changelog #626

1.4.1 - 2025-08-09

  • better title for plot model #620
  • Improve path-length extraction notebook #611
  • improve femwell mode solver notebooks #619
  • Fixed/updated edgeports in gmsh plugin #614
  • Bump xarray from 2025.1.2 to 2025.7.1 #615
  • Bump gmsh from 4.13.0 to 4.14.0 #613
  • [pre-commit.ci] pre-commit autoupdate #599

1.4.0 - 2025-06-22

  • More Voronoi extraction tests #608
  • Add codeowners file #607
  • Improve centerline extraction plugin #602
  • Remove mypy from pre-commit #606
  • fix palace #597
  • fix_mypy #596
  • update readme #595
  • bump sax #609

1.3.8 - 2025-06-06

  • Fix lumerical extension #594

1.3.7 - 2025-05-30

  • improve meep plugin and add tests #592

1.3.6 - 2025-05-26

  • remove meshwell dep from tidy3d plugin for easier arm installation #589

1.3.5 - 2025-05-25

  • Fix meep #587
  • add padding_layers to write_sparameters_meep, meep geometry fix, get_port_layers fix in base_models #584

1.3.4 - 2025-05-14

  • Fix meep #587
  • add padding_layers to write_sparameters_meep, meep geometry fix, get_port_layers fix in base_models #584
  • simpler flow #570
  • removing gdstk dependencies anywhere other than the tidy3d module #583

1.3.3 - 2025-04-13

  • Fix tidy3d holes and update tidy3d #567
  • Fix mypy #568
  • [pre-commit.ci] pre-commit autoupdate #563
  • update meow #569

1.3.0 - 2025-02-20

  • GDSFactory 9 #549
  • remove broken code from docs #545
  • remove dagster plugin #550
  • GDSFactory 9 #549
  • Update meow-sim requirement from ~=0.11.0 to >=0.11,<0.13 #546

1.2.4 - 2025-01-11

  • Fix ruff #535
  • fix tidy3d cache #534
  • fix flatten #529
  • Fix X SPICE element parsing for Calibre-style model names #528

1.2.3 - 2024-12-25

  • fix grating couplers in tidy3d #522

1.2.2 - 2024-12-20

  • fix docstring #519
  • update to latest gdsfactory #518

1.2.1 - 2024-12-15

  • update changelog #516
  • unpin vlsir #515

1.2.0 - 2024-12-12

  • add luminescent #507
  • fix docs #511
  • fix ruff issues #506
  • Update ruff version #503
  • fix docs #511
  • use uv #509
  • [pre-commit.ci] pre-commit autoupdate #505
  • unpin vlsir #515
  • [pre-commit.ci] pre-commit autoupdate #513
  • allow numpy2 #508
  • update tidy3d and unpin numpy #501

1.1.5 - 2024-11-27

  • Update ruff version #503
  • update tidy3d and unpin numpy #501

1.1.4 - 2024-11-22

  • Update gdsfactory #495

1.1.3 - 2024-11-15

  • Fix lumerical fdtd #486
  • Fix path-length extraction of bbox-like polygons #478
  • add ruff #488
  • Update get_simulation.py (component_ref.ports correction) #476
  • Update meep_adjoint_optimization.py. component.copy() to component.dup() #475
  • process plugin version #471
  • Make 3d net layers work #469
  • Fix repeated points #470
  • Update numpy requirement from <2 to <3 #484
  • Update sax requirement from ~=0.13.1 to >=0.13.1,<0.15.0 #492
  • pin numpy #473
  • [pre-commit.ci] pre-commit autoupdate #479

1.1.2 - 2024-08-15

  • Support instances in path-length extraction from gds #468
  • update pins #466

1.1.1 - 2024-08-13

  • Improvements to path length code #461
  • pin vlsir #464
  • rename validate call #462

1.1.0 - 2024-08-05

  • Robust path length extraction #453
  • Improve path extraction from GDS #447
  • Fix sax and vlsir tests #459
  • Fix netlist extraction issue #458
  • fix notebooks #455
  • update sax notebook #454
  • fix docs #450
  • Fix klayout netlist #442
  • fixed plot_model xlabel #443
  • Fix path length #438
  • Update gdsfactory850 #435
  • Update path length analysis #436
  • fix meow #441

1.0.1 - 2024-06-20

  • fix write_drc #428

1.0.0 - 2024-06-20

  • Gdsfactory8 #413
  • Color net labels differently in imported SPICE graph #423
  • Strip brackets from model name in Calibre SPICE reader #419
  • tidy3d fixes #421

0.14.0 - 2024-06-02

  • fix notebooks #411
  • fix tests #409
  • Fix SPICE plotting example notebook #398
  • Fix Elmer tests in CI, fixes towards Palace #395
  • improve SDL interconnect docs #401
  • Sdl #393

0.13.0 - 2024-04-28

  • Add padding layer to gplugins #387
  • allow mmi imbalance #386
  • Support custom IO streams in execute_and_stream_output #385
  • tcad scripts #382
  • add gfviz #363
  • small doc fixes #380
  • improve femwell plugin #377
  • retire devsim doc #296
  • update tidy3d #378

0.12.0 - 2024-04-09

  • Better error for wrong top_cell in netlist to networkx #373
  • Improve KLayout-based SPICE handling to support Calibre LVS with generic devices #371
  • fix autolabeler #375
  • update jaxlib and flax #376
  • fix tests #372

0.11.0 - 2024-03-24

  • add more sax models #364
  • Add models #357
  • fix polygon hole not meshing #362

0.10.2 - 2024-03-06

0.10.1 - 2024-03-05

  • fix grating prefix for tidy3d plugin #351

0.10.0 - 2024-03-05

  • basic python-driven density analytics, using klayout tiling processor #339
  • Fix tidy3d grating couplers new port names and add drc samples #350
  • better pyproject #342
  • better global density estimation #340
  • Mention correct pinned pyvis version #338
  • fix xy meshing #349
  • add cellname parametrization, update pyproject for pre-commit to run #343

0.9.13 - 2024-02-07

  • pin older version of meshwell #334
  • pin latest working version of jax and jaxlib for sax to work #332

0.9.12 - 2024-02-07

  • background meshing #319
  • Mesh smoothing #320
  • Component with local layers #318
  • Update component.py #315
  • bump meow and sax #308
  • also ignore layers without thickness or zmin in geometry_layers #311
  • Switch to using a context manager for disable_print #310
  • fix sax notebook #307
  • Pyright remove unused expression #304
  • Include tqdm in project dependencies #295
  • require labels on PRs and remove stale #329

0.9.11 - 2024-01-09

  • fix path_length_analysis #293

0.9.10 - 2024-01-07

  • use notebooks for ease of use #284
  • update to work with latest gdsfactory >=7.10.1

0.9.9 - 2023-12-19

  • [pre-commit.ci] pre-commit autoupdate #282
  • Add drc counter #280
  • Bump tidy3d from 2.5.0rc3 to 2.5.0 #278
  • fix docs #276
  • [pre-commit.ci] pre-commit autoupdate #274

0.9.8 - 2023-12-11

  • Round port locations and layer centers to one picometer by default #273

0.9.7 - 2023-12-05

  • expose symmetry and other tidy3d simulation args #269
  • Update kfactory[git,ipy] requirement from <0.10,>=0.9.3 to >=0.9.3,<0.11 #267

0.9.6 - 2023-12-04

  • uping gdsfactory upper bound #266

0.9.5 - 2023-12-03

  • ask users to report version and fix kfactory pin #263

0.9.4 - 2023-12-01

  • allow complex materials and rely on tidy3d hash function #261

0.9.3 - 2023-12-01

  • Check for AbstractMedium instead of Medium in validator #260

0.9.2 - 2023-11-30

  • Fix port centers in z #258
  • fix plot center_z #257

0.9.1 - 2023-11-30

  • Add tidy3d plot epsilon #256
  • Fix mzi notebook and batch #255

0.9.0 - 2023-11-29

  • remove webapp #252
  • remove black #250
  • [pre-commit.ci] pre-commit autoupdate #241
  • fix mpb cmap #249
  • Tidy3d rework2 #239
  • Support reducing nodes in plot nets #245
  • Treating E and H as complex while plotting abs(E) #248

0.8.7 - 2023-11-21

  • Assorted changes in docs and support .spi files for plot_nets #237
  • Fix type annotation for port #235
  • fix sdl for vscode #234
  • Update vlsir requirement from <5.0.0,>=4.0.0 to >=4.0.0,<6.0.0 #230
  • Update vlsirtools requirement from <5.0.0,>=4.0.0 to >=4.0.0,<6.0.0 #229
  • add save_options argument when writing gds #228
  • [pre-commit.ci] pre-commit autoupdate #227
  • Gmeep: Multimode Simulations #222
  • fix docs #226
  • Ensure unique SPICE netlist elements with a counter #224

0.8.6 - 2023-11-08

  • [pre-commit.ci] pre-commit autoupdate #220
  • Write output to a new library so we can reuse cell names #219
  • Remove HSPICE netlist comments for plot_nets #218
  • Improve dataprep #216
  • Layer to keep dict #215
  • Support multiple top cells and SPICE netlists in plot_nets #214
  • Add flake8-debugger checks to ruff #210
  • Export raw NumPy array capacitance matrix for ElectrostaticResults #208
  • Use temporary directory factory in session scope tests #207
  • Update get_material.py #206
  • Match labels to corresponding cells in netlist #204
  • Add interactive netlist plotting #199
  • Parametrize VLSIR netlist export test and cache Package #200
  • switch to mamba #197
  • Consider the case in get_l2n when no layer connections are given in PDK #191
  • Support non-fully-connected netlists in plot_nets #194
  • Fix Elmer & Palace tests #195
  • Generate technology and support layer connectivity in get_l2n #185
  • Rename gds_ports -> ports, fix port centers and remove port size calculation from base #183
  • improve ring docs #182
  • remove database #181
  • add derived layers #180
  • fix docs with conda #178
  • Polish some things in SPICE netlist extraction #177
  • add derived layers #175
  • layernames to physical labels dict #174

0.8.5 - 2023-10-09

  • Move verification into klayout #173
  • Default sizemax #170
  • Bump actions/checkout from 3 to 4 #168
  • add get_component_with_net_layers #167

0.8.4 - 2023-09-27

  • added towncrier #164

0.8.2

  • compatible with latest gdsfactory PR

0.8.1 PR

  • consolidate meshwell plugin

0.8.0 PR

  • update to latest tidy3d 2.4 and gdsfactory
  • rename layerstack to layer_stack to be consistent with gdsfactory
  • rename portnames to port_names to be consistent with python convention
  • fixes https://github.com/gdsfactory/gplugins/issues/153

0.7.0

  • add gmsh.to_gmsh PR
  • create common folder PR

0.6.0

  • add fdtdz plugin
  • add Full-wave driven simulations with Palace
  • fix meep plugin

0.5.0

  • add vlsir plugin

0.4.0

  • port to pydantic2
  • add plugins: palace and elmer

0.3.0

  • improve meshing
  • add verification

0.2.0

  • fix serializer PR
  • add materials plugin
  • add klayout dataprep and DRC

0.1.1

  • move klayout/dataprep from gdsfactory into gplugins/klayout. Add tests.
  • improve tidy3d plugin
  • Enable sidewall angles in FDTD simulations
  • improve tidy3d mode solver and tests PR

0.1.0

  • add support for tidy3d materials PR

0.0.3

  • add path_length_analysis notebook PR
  • Add scaling factor to meshing plugin PR

0.0.2

  • first release