Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

install uses copy instead of symlink #1375

Merged
merged 9 commits into from Mar 2, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
2 changes: 1 addition & 1 deletion .bumpversion.cfg
Expand Up @@ -7,7 +7,7 @@ tag = True

[bumpversion:file:pyproject.toml]

[bumpversion:file:docs/contribution.md]
[bumpversion:file:docs/notebooks/08_pdk.py]

[bumpversion:file:gdsfactory/__init__.py]

Expand Down
3 changes: 0 additions & 3 deletions .github/workflows/pages.yml
Expand Up @@ -34,9 +34,6 @@ jobs:
run: |
sudo apt install libglu1-mesa
make gdslib plugins-debian full
make notebooks
rm docs/notebooks/*.py
rm docs/notebooks/**/*.py
make docs
- name: Upload artifact
uses: actions/upload-pages-artifact@v1
Expand Down
3 changes: 0 additions & 3 deletions .github/workflows/test_code.yml
Expand Up @@ -135,7 +135,4 @@ jobs:
run: |
mkdir -p $HOME/.tidy3d
echo ${{ secrets.TIDY3D_AUTH }} > $HOME/.tidy3d/auth.json
make notebooks
rm docs/notebooks/*.py
rm docs/notebooks/**/*.py
make docs
8 changes: 4 additions & 4 deletions README.md
Expand Up @@ -56,15 +56,15 @@ It provides you a common syntax for design (KLayout, gdstk, Ansys Lumerical, tid

![tool interfaces](https://i.imgur.com/9fNLRvJ.png)

Multiple Silicon Photonics foundries have gdsfactory PDKs available. Talk to your foundry to access their gdsfactory PDK.
Multiple Photonic foundries have gdsfactory PDKs available. Talk to your foundry to access their gdsfactory PDK.

You can also access:

- instructions on [how to build your own PDK](https://gdsfactory.github.io/gdsfactory/notebooks/08_pdk.html)
- instructions on [how to import a PDK from a library of fixed GDS cells](https://gdsfactory.github.io/gdsfactory/notebooks/09_pdk_import.html)
- open source PDKs available on GitHub
- [UBCPDK](https://gdsfactory.github.io/ubc/README.html)
- [skywater130](https://gdsfactory.github.io/skywater130/README.html)
- instructions on [how to build your own PDK](https://gdsfactory.github.io/gdsfactory/notebooks/08_pdk.html)
- instructions on [how to import a PDK from a library of fixed GDS cells](https://gdsfactory.github.io/gdsfactory/notebooks/09_pdk_import.html)

## Installation

Expand Down Expand Up @@ -140,7 +140,7 @@ Or you can install only the ones you need.
* Eigenmode Expansion (EME)
- [MEOW](https://gdsfactory.github.io/gdsfactory/notebooks/eme/01_meow.html)
* [Electromagnetic Wave Solvers using Finite Difference Time Domain (FDTD)](https://gdsfactory.github.io/gdsfactory/plugins_fdtd.html)
- [tid3d](https://gdsfactory.github.io/gdsfactory/notebooks/tidy3d/00_tidy3d.html)
- [tidy3d](https://gdsfactory.github.io/gdsfactory/notebooks/tidy3d/00_tidy3d.html)
- [MEEP](https://gdsfactory.github.io/gdsfactory/notebooks/meep/001_meep_sparameters.html)
- [Ansys Lumerical FDTD](https://gdsfactory.github.io/gdsfactory/notebooks/lumerical/1_fdtd_sparameters.html)
* [S-Parameter Circuit Solvers](https://gdsfactory.github.io/gdsfactory/plugins_circuits.html)
Expand Down
6 changes: 5 additions & 1 deletion docs/_config.yml
Expand Up @@ -10,7 +10,7 @@ logo: logo.png
execute:
# execute_notebooks: cache
timeout: 60
allow_errors: true
allow_errors: false
# timeout: -1
execute_notebooks: force
# execute_notebooks: "off"
Expand Down Expand Up @@ -74,3 +74,7 @@ sphinx:
nb_execution_show_tb: True
html_js_files:
- https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js
nb_custom_formats:
.py:
- jupytext.reads
- fmt: py
1 change: 1 addition & 0 deletions docs/_toc.yml
Expand Up @@ -24,6 +24,7 @@ chapters:
- file: notebooks/04_components_
- file: notebooks/04_components_hierarchy
- file: notebooks/08_pdk
- file: notebooks/08_pdk_examples
- file: notebooks/09_pdk_import
- file: notebooks/07_mask
- file: notebooks/04_routing
Expand Down
18 changes: 0 additions & 18 deletions docs/contribution.md
Expand Up @@ -56,24 +56,6 @@ You can run tests with `pytest`. This will run 3 types of tests:
- you can check out any changes in your library with `gf gds diff ref_layouts/bbox.gds run_layouts/bbox.gds`
- it will also store all differences in `diff_layouts` and you can combine and show them in KLayout with `make diff`

## Testing your own PDK cells

As you create your cell functions you should write tests for them. See for example the tests in the [ubc PDK](https://github.com/gdsfactory/ubc)

Pytest-regressions automatically creates the CSV and YAML files for you, as well `gdsfactory.gdsdiff` will store the reference GDS in ref_layouts and check for geometry differences using XOR.

gdsfactory is **not** backwards compatible, which means that the package will keep improving and evolving.

1. To make your work stable you should install a specific version and [pin the version](https://martin-thoma.com/python-requirements/) in your `requirements.txt` or `pyproject.toml` as `gdsfactory==6.48.3` replacing `6.48.3` by whatever version you end up using.
2. Before you upgrade gdsfactory to a newer version make sure your tests pass to make sure that things behave as expected


## Compare gds files

You can use the command line `gf gds diff gds1.gds gds2.gds` to overlay `gds1.gds` and `gds2.gds` files and show them in KLayout.

For example, if you changed the mmi1x2 and made it 5um longer by mistake, you could `gf gds diff ref_layouts/mmi1x2.gds run_layouts/mmi1x2.gds` and see the GDS differences in Klayout.


## Acks

Expand Down