PyOptik 1.9.8.4__tar.gz → 1.9.8.9__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (96) hide show
  1. pyoptik-1.9.8.9/.github/workflows/create_documentation.yml +102 -0
  2. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PKG-INFO +1 -1
  3. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/_version.py +2 -2
  4. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/material_bank.py +1 -1
  5. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik.egg-info/PKG-INFO +1 -1
  6. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik.egg-info/SOURCES.txt +1 -2
  7. pyoptik-1.9.8.4/.github/workflows/add_documentation_version.yml +0 -73
  8. pyoptik-1.9.8.4/.github/workflows/deploy_documentation.yml +0 -67
  9. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/.flake8 +0 -0
  10. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/.github/dependabot.yml +0 -0
  11. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/.github/workflows/deploy_PyPi.yml +0 -0
  12. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/.github/workflows/deploy_anaconda.yml +0 -0
  13. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/.github/workflows/deploy_coverage.yml +0 -0
  14. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/.gitignore +0 -0
  15. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/.readthedocs.yml +0 -0
  16. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/LICENSE +0 -0
  17. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/__init__.py +0 -0
  18. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/__main__.py +0 -0
  19. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/data/__init__.py +0 -0
  20. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/data/sellmeier/BAK1.yml +0 -0
  21. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/data/sellmeier/BK7.yml +0 -0
  22. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/data/sellmeier/SF5.yml +0 -0
  23. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/data/sellmeier/ZBLAN.yml +0 -0
  24. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/data/sellmeier/air.yml +0 -0
  25. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/data/sellmeier/argon.yml +0 -0
  26. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/data/sellmeier/crown.yml +0 -0
  27. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/data/sellmeier/flint.yml +0 -0
  28. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/data/sellmeier/fused_silica.yml +0 -0
  29. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/data/sellmeier/germanium.yml +0 -0
  30. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/data/sellmeier/lithium_niobate.yml +0 -0
  31. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/data/sellmeier/polystyren.yml +0 -0
  32. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/data/sellmeier/silicon.yml +0 -0
  33. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/data/sellmeier/soda_lime_glass.yml +0 -0
  34. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/data/sellmeier/water.yml +0 -0
  35. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/data/tabulated/aluminium.yml +0 -0
  36. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/data/tabulated/calcium.yml +0 -0
  37. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/data/tabulated/copper.yml +0 -0
  38. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/data/tabulated/gold.yml +0 -0
  39. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/data/tabulated/iron.yml +0 -0
  40. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/data/tabulated/nickel.yml +0 -0
  41. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/data/tabulated/silver.yml +0 -0
  42. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/data/tabulated/sodium.yml +0 -0
  43. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/data/tabulated/zinc.yml +0 -0
  44. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/directories.py +0 -0
  45. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/libraries/__init__.py +0 -0
  46. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/libraries/classics.yml +0 -0
  47. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/libraries/dielectrics.yml +0 -0
  48. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/libraries/metals.yml +0 -0
  49. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/libraries/minimal.yml +0 -0
  50. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/libraries/organics.yml +0 -0
  51. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/libraries/others.yml +0 -0
  52. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/libraries/polymers.yml +0 -0
  53. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/material/__init__.py +0 -0
  54. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/material/base_class.py +0 -0
  55. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/material/sellmeier_class.py +0 -0
  56. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/material/tabulated_class.py +0 -0
  57. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/material_type.py +0 -0
  58. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/units.py +0 -0
  59. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik/utils.py +0 -0
  60. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik.egg-info/dependency_links.txt +0 -0
  61. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik.egg-info/requires.txt +0 -0
  62. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/PyOptik.egg-info/top_level.txt +0 -0
  63. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/README.rst +0 -0
  64. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/development/dev_0.py +0 -0
  65. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/docs/Makefile +0 -0
  66. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/docs/examples/README.rst +0 -0
  67. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/docs/examples/sellmeier/README.rst +0 -0
  68. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/docs/examples/sellmeier/plot_bk7.py +0 -0
  69. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/docs/examples/sellmeier/plot_silica.py +0 -0
  70. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/docs/examples/sellmeier/plot_water.py +0 -0
  71. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/docs/examples/tabulated/README.rst +0 -0
  72. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/docs/examples/tabulated/plot_sf5.py +0 -0
  73. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/docs/examples/tabulated/plot_silver.py +0 -0
  74. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/docs/examples/utils/README.rst +0 -0
  75. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/docs/examples/utils/build_library.py +0 -0
  76. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/docs/examples/utils/create_sellmeier_file.py +0 -0
  77. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/docs/examples/utils/create_tabulated_file.py +0 -0
  78. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/docs/examples/utils/download_yml_file.py +0 -0
  79. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/docs/images/example_bk7.png +0 -0
  80. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/docs/images/logo.png +0 -0
  81. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/docs/make.bat +0 -0
  82. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/docs/source/_static/default.css +0 -0
  83. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/docs/source/_static/thumbnail.png +0 -0
  84. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/docs/source/code.rst +0 -0
  85. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/docs/source/conf.py +0 -0
  86. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/docs/source/gallery/index.rst +0 -0
  87. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/docs/source/index.rst +0 -0
  88. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/docs/source/references.rst +0 -0
  89. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/meta.yaml +0 -0
  90. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/pyproject.toml +0 -0
  91. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/setup.cfg +0 -0
  92. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/tests/__init__.py +0 -0
  93. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/tests/test_sellmeier.py +0 -0
  94. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/tests/test_tabulated.py +0 -0
  95. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/tests/test_usual_material.py +0 -0
  96. {pyoptik-1.9.8.4 → pyoptik-1.9.8.9}/tests/test_utils.py +0 -0
@@ -0,0 +1,102 @@
1
+ # .github/workflows/deploy_documentation.yml
2
+ name: Documentation
3
+
4
+ on:
5
+ push:
6
+ branches: [ "master" ]
7
+ tags:
8
+ - '*'
9
+ pull_request:
10
+ branches: [ "master" ]
11
+
12
+ jobs:
13
+ documentation:
14
+ name: Run the documentation building tools
15
+ runs-on: ubuntu-latest
16
+ permissions:
17
+ pull-requests: write
18
+ contents: write
19
+
20
+ steps:
21
+ - name: "Set-up: Python 3.11"
22
+ uses: actions/setup-python@v5
23
+ id: cp311
24
+ with:
25
+ python-version: 3.11
26
+
27
+ - name: "Install: Dependencies for headless server"
28
+ shell: bash
29
+ run: |
30
+ sudo apt-get update
31
+ sudo apt-get install -y xvfb jq
32
+
33
+ - name: "Checkout requirements and files for testing"
34
+ uses: actions/checkout@v4
35
+ with:
36
+ fetch-depth: 0
37
+ submodules: true
38
+
39
+ - name: Install everything, run the tests, produce the .coverage file
40
+ run: |
41
+ python -m pip install wheel build
42
+ python -m build --wheel
43
+ python -m pip install .[documentation]
44
+
45
+ - name: Get current tag
46
+ id: get_tag
47
+ run: |
48
+ git fetch --tags
49
+ echo "tag=$(git describe --tags --abbrev=0)" >> $GITHUB_ENV
50
+
51
+ - name: Sphinx build
52
+ run: |
53
+ sphinx-build docs/source _build
54
+ git checkout documentation_page
55
+ git branch documentation_page_temp
56
+ cd docs
57
+ git checkout master -- _build
58
+ mv _build ${{ env.tag }}"
59
+ cd ..
60
+
61
+ - name: Scan, sort versions, and update version_switcher.json
62
+ run: |
63
+ # Define the path to version_switcher.json
64
+ json_file="version_switcher.json"
65
+ docs_path="docs"
66
+ base_url="https://martinpdes.github.io/PyOptik"
67
+
68
+ # Start the JSON array
69
+ echo "[" > $json_file
70
+
71
+ # Get sorted version directories in descending order
72
+ version_dirs=$(ls -v $docs_path | sort -V -r)
73
+
74
+ # Loop over sorted versions and add to JSON file
75
+ first_entry=true
76
+ for version in $version_dirs; do
77
+ version_url="${base_url}/${docs_path}/${version}"
78
+
79
+ # Add a comma if it's not the first entry
80
+ if [ "$first_entry" = true ]; then
81
+ first_entry=false
82
+ else
83
+ echo "," >> $json_file
84
+ fi
85
+
86
+ # Append each version as a JSON entry
87
+ jq -n \
88
+ --arg name "$version" \
89
+ --arg version "$version" \
90
+ --arg url "$version_url" \
91
+ '{name: $name, version: $version, url: $url}' >> $json_file
92
+ done
93
+
94
+ # End the JSON array
95
+ echo "]" >> $json_file
96
+
97
+ - name: Merge to Trigger Pages Build
98
+ run: |
99
+ # Merge the changes from documentation_page_temp to documentation_page
100
+ git checkout documentation_page
101
+ git merge documentation_page_temp --no-ff
102
+ git push origin documentation_page
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: PyOptik
3
- Version: 1.9.8.4
3
+ Version: 1.9.8.9
4
4
  Summary: A package for refractive index values.
5
5
  Author-email: Martin Poinsinet de Sivry-Houle <martin.poinsinet.de.sivry@gmail.com>
6
6
  License: MIT License
@@ -12,5 +12,5 @@ __version__: str
12
12
  __version_tuple__: VERSION_TUPLE
13
13
  version_tuple: VERSION_TUPLE
14
14
 
15
- __version__ = version = '1.9.8.4'
16
- __version_tuple__ = version_tuple = (1, 9, 8, 4)
15
+ __version__ = version = '1.9.8.9'
16
+ __version_tuple__ = version_tuple = (1, 9, 8, 9)
@@ -24,7 +24,7 @@ class _MaterialBank():
24
24
 
25
25
  The `_MaterialBank` class provides access to a predefined list of materials used in optical simulations,
26
26
  categorized into Sellmeier and Tabulated materials. It allows users to dynamically retrieve materials
27
- based on their names without the need to instantiate the class. The material bank can be expanded
27
+ based on their names without the need to instantiate the class. The material bank can be expanded
28
28
  or modified by adding or removing materials from the bank, and it provides utilities to fetch material data
29
29
  dynamically when accessed as class attributes.
30
30
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: PyOptik
3
- Version: 1.9.8.4
3
+ Version: 1.9.8.9
4
4
  Summary: A package for refractive index values.
5
5
  Author-email: Martin Poinsinet de Sivry-Houle <martin.poinsinet.de.sivry@gmail.com>
6
6
  License: MIT License
@@ -6,11 +6,10 @@ README.rst
6
6
  meta.yaml
7
7
  pyproject.toml
8
8
  .github/dependabot.yml
9
- .github/workflows/add_documentation_version.yml
9
+ .github/workflows/create_documentation.yml
10
10
  .github/workflows/deploy_PyPi.yml
11
11
  .github/workflows/deploy_anaconda.yml
12
12
  .github/workflows/deploy_coverage.yml
13
- .github/workflows/deploy_documentation.yml
14
13
  PyOptik/__init__.py
15
14
  PyOptik/__main__.py
16
15
  PyOptik/_version.py
@@ -1,73 +0,0 @@
1
- name: Update Documentation Versions
2
-
3
- on:
4
- push:
5
- branches:
6
- - documentation_page # Run on pushes to documentation_page branch
7
- tags:
8
- - '*' # Run on all new tags
9
-
10
- jobs:
11
- update_version_switcher:
12
- name: Update version_switcher.json
13
- runs-on: ubuntu-latest
14
- permissions:
15
- contents: write
16
-
17
- steps:
18
- - name: "Checkout documentation_page branch"
19
- uses: actions/checkout@v4
20
- with:
21
- fetch-depth: 0
22
- ref: documentation_page # Directly check out the documentation_page branch
23
-
24
- - name: Install jq for JSON manipulation
25
- run: |
26
- sudo apt-get update
27
- sudo apt-get install -y jq
28
-
29
- - name: Scan for versions in docs folder and update version_switcher.json
30
- run: |
31
- # Define the path to version_switcher.json
32
- json_file="version_switcher.json"
33
- docs_path="docs"
34
- base_url="https://martinpdes.github.io/PyOptik"
35
-
36
- # Initialize an empty array for versions in JSON format
37
- versions_list=$(mktemp) # Temporary file to store the array
38
-
39
- echo "[" > $versions_list # Start of the JSON array
40
-
41
- # Scan each directory in docs and add it to the versions list
42
- first_entry=true
43
- for version_dir in ${docs_path}/*/; do
44
- version=$(basename "$version_dir")
45
- version_url="${base_url}/${docs_path}/${version}"
46
-
47
- # Add a comma if it's not the first entry
48
- if [ "$first_entry" = true ]; then
49
- first_entry=false
50
- else
51
- echo "," >> $versions_list
52
- fi
53
-
54
- # Append each version as a JSON entry
55
- jq -n \
56
- --arg name "$version" \
57
- --arg version "$version" \
58
- --arg url "$version_url" \
59
- '{name: $name, version: $version, url: $url}' >> $versions_list
60
- done
61
-
62
- echo "]" >> $versions_list # End of the JSON array
63
-
64
- # Move the temporary array file to version_switcher.json
65
- mv $versions_list $json_file
66
-
67
- - name: Commit and push the updated version_switcher.json
68
- run: |
69
- git config user.name "github-actions[bot]"
70
- git config user.email "github-actions[bot]@users.noreply.github.com"
71
- git add version_switcher.json
72
- git commit -m "Update version_switcher.json with all versions in docs folder"
73
- git push origin documentation_page
@@ -1,67 +0,0 @@
1
- # .github/workflows/deploy_documentation.yml
2
- name: Documentation
3
-
4
- on:
5
- push:
6
- branches: [ "master" ]
7
- tags:
8
- - '*'
9
- pull_request:
10
- branches: [ "master" ]
11
-
12
- jobs:
13
- documentation:
14
- name: Run the documentation building tools
15
- runs-on: ubuntu-latest
16
- permissions:
17
- pull-requests: write
18
- contents: write
19
-
20
- steps:
21
- - name: "Set-up: Python 3.11"
22
- uses: actions/setup-python@v5
23
- id: cp311
24
- with:
25
- python-version: "3.11"
26
-
27
- - name: "Install: Dependencies for headless server"
28
- shell: bash
29
- run: |
30
- sudo apt-get update
31
- sudo apt-get install xvfb
32
-
33
- - name: "Checkout requirements and files for testing"
34
- uses: actions/checkout@v4
35
- with:
36
- fetch-depth: 0
37
- submodules: true
38
-
39
- - name: Install everything, run the tests, produce the .coverage file
40
- run: |
41
- python -m pip install wheel build
42
- python -m build --wheel
43
- python -m pip install .[documentation]
44
-
45
- - name: Install dependencies
46
- run: |
47
- pip install sphinx sphinx_rtd_theme myst_parser jq
48
-
49
- - name: Get current tag
50
- id: get_tag
51
- run: |
52
- git fetch --tags
53
- echo "tag=$(git describe --tags --abbrev=0)" >> $GITHUB_ENV
54
-
55
- - name: Sphinx build
56
- run: |
57
- sphinx-build docs/source _build
58
-
59
- - name: "Deploy to documentation_page: specific version"
60
- uses: peaceiris/actions-gh-pages@v3
61
- if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags/')
62
- with:
63
- publish_branch: documentation_page
64
- github_token: ${{ secrets.GITHUB_TOKEN }}
65
- publish_dir: _build/
66
- destination_dir: "docs/${{ env.tag }}"
67
- keep_files: true
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes