PyFiberModes 0.16.0__tar.gz → 0.17.0__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.
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/.github/dependabot.yml +1 -2
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/.github/workflows/deploy_anaconda.yml +3 -2
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/.github/workflows/quality.yml +4 -3
- pyfibermodes-0.17.0/.github/workflows/tests.yml +29 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/.zenodo.json +2 -2
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/CHANGELOG.md +4 -1
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PKG-INFO +8 -7
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/_version.py +2 -2
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes.egg-info/PKG-INFO +8 -7
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes.egg-info/requires.txt +5 -5
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/README.rst +1 -1
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/conda.recipe/meta.yaml +2 -2
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/pyproject.toml +11 -6
- pyfibermodes-0.16.0/.github/workflows/tests.yml +0 -28
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/.coveragerc +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/.github/workflows/deploy_PyPi.yml +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/.github/workflows/deploy_coverage.yml +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/.github/workflows/deploy_documentation.yml +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/.gitignore +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/CITATION.cff +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/CONTRIBUTING.md +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/LICENSE +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/MANIFEST.in +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/Makefile +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/__init__.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/analysis.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/coordinates.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/directories.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/exceptions.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/factory.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/fiber.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/fiber_files/1550BHP.yaml +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/fiber_files/DCF13.yaml +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/fiber_files/DCF1300S_20.yaml +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/fiber_files/DCF1300S_26.yaml +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/fiber_files/DCF1300S_33.yaml +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/fiber_files/DCF1300S_42.yaml +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/fiber_files/F2028M12.yaml +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/fiber_files/F2028M21.yaml +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/fiber_files/F2028M24.yaml +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/fiber_files/F2058G1.yaml +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/fiber_files/F2058L1.yaml +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/fiber_files/HI1060.yaml +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/fiber_files/HP630.yaml +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/fiber_files/SM1950.yaml +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/fiber_files/SMF28.yaml +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/fiber_files/fluorine_doped_1%_capillary.yaml +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/fiber_files/fluorine_doped_2%_capillary.yaml +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/fiber_files/test_fiber.yaml +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/fiber_files/test_multimode_fiber.yaml +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/field.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/fundamentals.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/loader.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/materials.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/mode.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/mode_instances.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/models.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/optimization.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/plotting.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/propagation.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/services.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/solver/__init__.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/solver/base_solver.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/solver/multilayer/__init__.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/solver/multilayer/effective_index.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/solver/protocols.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/solver/results.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/solver/three_layer/__init__.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/solver/three_layer/cutoff.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/solver/two_layer/__init__.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/solver/two_layer/cutoff.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/solver/two_layer/effective_index.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/source.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/stepindex.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes.egg-info/SOURCES.txt +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes.egg-info/dependency_links.txt +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes.egg-info/top_level.txt +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/benchmarks/README.md +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/benchmarks/test_field_performance.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/Makefile +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/README.rst +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/SMF28/README.rst +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/SMF28/plot_smf28.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/SMF28/plot_smf28_dispersion_vs_wavelength.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/SMF28/plot_smf28_group_index_vs_wavelength.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/analysis/README.rst +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/analysis/plot_coupled_mode_exchange.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/analysis/plot_guided_mode_discovery.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/analysis/plot_structured_wavelength_sweep.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/basic/README.rst +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/basic/plot_U_vs_V.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/basic/plot_comparison_solvers.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/basic/plot_dispersion.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/basic/plot_effective_index.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/basic/plot_fiber_LP_modes.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/basic/plot_group_index.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/basic/plot_mode_field.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/basic/plot_mode_field_1.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/basic/plot_mode_field_2.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/basic/plot_neff_tapered_fiber.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/benchmarks/README.rst +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/benchmarks/plot_component_batching_speedup.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/benchmarks/plot_field_grid_scaling.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/benchmarks/plot_modal_cache_speedup.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/fields/README.rst +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/fields/plot_confinement_by_radius.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/fields/plot_polarization_rotation.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/fields/plot_vector_components.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/specialty_fibers/README.rst +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/specialty_fibers/plot_refractive_index_profile.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/specialty_fibers/plot_specialty_fiber_catalog.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/specialty_fibers/plot_specialty_mode_indices.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/validation/README.rst +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/validation/plot_effective_index_bounds.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/validation/plot_field_area_convergence.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/validation/plot_normalized_effective_index.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/make.bat +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/source/_static/default.css +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/source/_static/favicon.png +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/source/_static/logo.png +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/source/_static/thumbnail.png +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/source/api_policy.rst +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/source/architecture.rst +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/source/code/analysis.rst +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/source/code/fibers.rst +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/source/code/fields.rst +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/source/code/fundamentals.rst +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/source/code.rst +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/source/conf.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/source/examples.rst +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/source/getting_started.rst +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/source/index.rst +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/source/migration_guide.rst +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/source/performance.rst +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/source/public_api_contract.rst +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/source/references.rst +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/source/theory.rst +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/source/troubleshooting.rst +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/source/user_guide/fibers.rst +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/source/user_guide/fields.rst +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/source/user_guide/index.rst +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/source/user_guide/modes.rst +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/source/user_guide/reproducibility.rst +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/source/user_guide/sweeps.rst +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/source/user_guide/units.rst +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/source/workflows.rst +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/pytest.ini +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/setup.cfg +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/tests/__init__.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/tests/api_snapshot.json +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/tests/helpers.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/tests/test_advanced_features.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/tests/test_api.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/tests/test_architecture.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/tests/test_architecture_enhancements.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/tests/test_coordinates.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/tests/test_docstrings.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/tests/test_fiber.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/tests/test_field.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/tests/test_file_loading.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/tests/test_physics_regression.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/tests/test_public_api.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/tests/test_release_tools.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/tests/test_three_layer_solver.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/tests/test_two_layer_solver.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/tests/test_validation.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/tools/check_release.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/tools/next_release_version.py +0 -0
- {pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/tools/release_tag.py +0 -0
|
@@ -21,12 +21,13 @@ jobs:
|
|
|
21
21
|
|
|
22
22
|
publish:
|
|
23
23
|
needs: validate-release
|
|
24
|
-
uses: MartinPdeS/MPSActions/.github/workflows/publish_compiled_package_to_anaconda.yml@
|
|
24
|
+
uses: MartinPdeS/MPSActions/.github/workflows/publish_compiled_package_to_anaconda.yml@v6
|
|
25
25
|
with:
|
|
26
26
|
# The recipe is ``noarch: python``. Building it in a platform/version
|
|
27
27
|
# matrix creates several artifacts with the same archive path, which
|
|
28
28
|
# collide when the reusable workflow merges them before upload.
|
|
29
|
-
|
|
29
|
+
# One noarch archive supports all declared Python versions; test it on 3.14.
|
|
30
|
+
python_versions: '["3.14"]'
|
|
30
31
|
os_list: '["ubuntu-latest"]'
|
|
31
32
|
package_name: pyfibermodes
|
|
32
33
|
recipe_path: conda.recipe
|
|
@@ -13,11 +13,12 @@ jobs:
|
|
|
13
13
|
quality:
|
|
14
14
|
runs-on: ubuntu-latest
|
|
15
15
|
steps:
|
|
16
|
-
-
|
|
17
|
-
|
|
16
|
+
- name: Set up Python and CI dependencies
|
|
17
|
+
uses: MartinPdeS/MPSActions/actions/setup-python@0f5927acf88b25b5d253421e508387897096a2cc
|
|
18
18
|
with:
|
|
19
19
|
python-version: "3.11"
|
|
20
|
-
|
|
20
|
+
install-command: >-
|
|
21
|
+
python -m pip install --upgrade pip && python -m pip install -e ".[dev]"
|
|
21
22
|
- run: python -m ruff check PyFiberModes tests tools
|
|
22
23
|
- run: python -m mypy
|
|
23
24
|
- run: python tools/check_release.py
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
name: Tests
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: [master]
|
|
6
|
+
pull_request:
|
|
7
|
+
branches: [master]
|
|
8
|
+
|
|
9
|
+
permissions:
|
|
10
|
+
contents: read
|
|
11
|
+
|
|
12
|
+
jobs:
|
|
13
|
+
tests:
|
|
14
|
+
name: Python ${{ matrix.python-version }}
|
|
15
|
+
runs-on: ubuntu-latest
|
|
16
|
+
strategy:
|
|
17
|
+
fail-fast: false
|
|
18
|
+
matrix:
|
|
19
|
+
python-version: ["3.11", "3.12", "3.13", "3.14"]
|
|
20
|
+
steps:
|
|
21
|
+
- name: Set up Python and CI dependencies
|
|
22
|
+
uses: MartinPdeS/MPSActions/actions/setup-python@0f5927acf88b25b5d253421e508387897096a2cc
|
|
23
|
+
with:
|
|
24
|
+
python-version: "${{ matrix.python-version }}"
|
|
25
|
+
install-command: >-
|
|
26
|
+
python -m pip install --upgrade pip && python -m pip install -e ".[testing]"
|
|
27
|
+
- run: python -m pytest -q
|
|
28
|
+
env:
|
|
29
|
+
MPLBACKEND: Agg
|
|
@@ -6,6 +6,8 @@ use [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
|
6
6
|
|
|
7
7
|
## [Unreleased]
|
|
8
8
|
|
|
9
|
+
## [0.17.0] - 2026-10-13
|
|
10
|
+
|
|
9
11
|
## [0.16.0] - 2026-09-23
|
|
10
12
|
|
|
11
13
|
### Fixed
|
|
@@ -149,7 +151,8 @@ use [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
|
149
151
|
|
|
150
152
|
- Established the current tagged baseline for subsequent documented releases.
|
|
151
153
|
|
|
152
|
-
[Unreleased]: https://github.com/MartinPdeS/PyFiberModes/compare/v0.
|
|
154
|
+
[Unreleased]: https://github.com/MartinPdeS/PyFiberModes/compare/v0.17.0...HEAD
|
|
155
|
+
[0.17.0]: https://github.com/MartinPdeS/PyFiberModes/releases/tag/v0.17.0
|
|
153
156
|
[0.16.0]: https://github.com/MartinPdeS/PyFiberModes/releases/tag/v0.16.0
|
|
154
157
|
[0.15.0]: https://github.com/MartinPdeS/PyFiberModes/releases/tag/v0.15.0
|
|
155
158
|
[0.14.3]: https://github.com/MartinPdeS/PyFiberModes/releases/tag/v0.14.3
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: PyFiberModes
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.17.0
|
|
4
4
|
Summary: Guided-mode analysis and design for circular optical fibers.
|
|
5
5
|
Author-email: Martin Poinsinet de Sivry-Houle <martin.poinsinet.de.sivry@gmail.com>
|
|
6
6
|
License: GNU GENERAL PUBLIC LICENSE
|
|
@@ -689,6 +689,7 @@ Classifier: Programming Language :: Python :: 3 :: Only
|
|
|
689
689
|
Classifier: Programming Language :: Python :: 3.11
|
|
690
690
|
Classifier: Programming Language :: Python :: 3.12
|
|
691
691
|
Classifier: Programming Language :: Python :: 3.13
|
|
692
|
+
Classifier: Programming Language :: Python :: 3.14
|
|
692
693
|
Classifier: Programming Language :: Python :: Implementation :: CPython
|
|
693
694
|
Classifier: Development Status :: 4 - Beta
|
|
694
695
|
Classifier: Topic :: Scientific/Engineering :: Physics
|
|
@@ -708,22 +709,22 @@ Requires-Dist: pytest-json-report~=1.5; extra == "testing"
|
|
|
708
709
|
Requires-Dist: coverage~=7.6; extra == "testing"
|
|
709
710
|
Requires-Dist: ruff<1,>=0.8; extra == "testing"
|
|
710
711
|
Requires-Dist: matplotlib>=3.8; extra == "testing"
|
|
711
|
-
Requires-Dist: mypy<
|
|
712
|
+
Requires-Dist: mypy<3,>=1.15; extra == "testing"
|
|
712
713
|
Provides-Extra: plotting
|
|
713
714
|
Requires-Dist: matplotlib>=3.8; extra == "plotting"
|
|
714
715
|
Provides-Extra: benchmarking
|
|
715
716
|
Requires-Dist: pytest-benchmark<6,>=5; extra == "benchmarking"
|
|
716
717
|
Provides-Extra: documentation
|
|
717
718
|
Requires-Dist: matplotlib>=3.8; extra == "documentation"
|
|
718
|
-
Requires-Dist: numpydoc==1.
|
|
719
|
+
Requires-Dist: numpydoc==1.11.0; extra == "documentation"
|
|
719
720
|
Requires-Dist: sphinx>=5.1.1; extra == "documentation"
|
|
720
|
-
Requires-Dist: sphinx-gallery==0.
|
|
721
|
+
Requires-Dist: sphinx-gallery==0.22.1; extra == "documentation"
|
|
721
722
|
Requires-Dist: sphinx-design<1,>=0.6; extra == "documentation"
|
|
722
723
|
Requires-Dist: sphinx-rtd-theme==3.1.0; extra == "documentation"
|
|
723
|
-
Requires-Dist: pydata-sphinx-theme==0.
|
|
724
|
+
Requires-Dist: pydata-sphinx-theme==0.22.0; extra == "documentation"
|
|
724
725
|
Provides-Extra: dev
|
|
725
726
|
Requires-Dist: ruff<1,>=0.8; extra == "dev"
|
|
726
|
-
Requires-Dist: mypy<
|
|
727
|
+
Requires-Dist: mypy<3,>=1.15; extra == "dev"
|
|
727
728
|
Dynamic: license-file
|
|
728
729
|
|
|
729
730
|
.. image:: https://raw.githubusercontent.com/MartinPdeS/PyFiberModes/master/docs/source/_static/logo.png
|
|
@@ -1049,7 +1050,7 @@ Or run the complete local check target:
|
|
|
1049
1050
|
|
|
1050
1051
|
make check
|
|
1051
1052
|
|
|
1052
|
-
Tests run on Python 3.11 through 3.
|
|
1053
|
+
Tests run on Python 3.11 through 3.14 in GitHub Actions. Bug reports and
|
|
1053
1054
|
feature proposals are welcome through the
|
|
1054
1055
|
`issue tracker <https://github.com/MartinPdeS/PyFiberModes/issues>`_.
|
|
1055
1056
|
|
|
@@ -18,7 +18,7 @@ version_tuple: tuple[int | str, ...]
|
|
|
18
18
|
commit_id: str | None
|
|
19
19
|
__commit_id__: str | None
|
|
20
20
|
|
|
21
|
-
__version__ = version = '0.
|
|
22
|
-
__version_tuple__ = version_tuple = (0,
|
|
21
|
+
__version__ = version = '0.17.0'
|
|
22
|
+
__version_tuple__ = version_tuple = (0, 17, 0)
|
|
23
23
|
|
|
24
24
|
__commit_id__ = commit_id = None
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: PyFiberModes
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.17.0
|
|
4
4
|
Summary: Guided-mode analysis and design for circular optical fibers.
|
|
5
5
|
Author-email: Martin Poinsinet de Sivry-Houle <martin.poinsinet.de.sivry@gmail.com>
|
|
6
6
|
License: GNU GENERAL PUBLIC LICENSE
|
|
@@ -689,6 +689,7 @@ Classifier: Programming Language :: Python :: 3 :: Only
|
|
|
689
689
|
Classifier: Programming Language :: Python :: 3.11
|
|
690
690
|
Classifier: Programming Language :: Python :: 3.12
|
|
691
691
|
Classifier: Programming Language :: Python :: 3.13
|
|
692
|
+
Classifier: Programming Language :: Python :: 3.14
|
|
692
693
|
Classifier: Programming Language :: Python :: Implementation :: CPython
|
|
693
694
|
Classifier: Development Status :: 4 - Beta
|
|
694
695
|
Classifier: Topic :: Scientific/Engineering :: Physics
|
|
@@ -708,22 +709,22 @@ Requires-Dist: pytest-json-report~=1.5; extra == "testing"
|
|
|
708
709
|
Requires-Dist: coverage~=7.6; extra == "testing"
|
|
709
710
|
Requires-Dist: ruff<1,>=0.8; extra == "testing"
|
|
710
711
|
Requires-Dist: matplotlib>=3.8; extra == "testing"
|
|
711
|
-
Requires-Dist: mypy<
|
|
712
|
+
Requires-Dist: mypy<3,>=1.15; extra == "testing"
|
|
712
713
|
Provides-Extra: plotting
|
|
713
714
|
Requires-Dist: matplotlib>=3.8; extra == "plotting"
|
|
714
715
|
Provides-Extra: benchmarking
|
|
715
716
|
Requires-Dist: pytest-benchmark<6,>=5; extra == "benchmarking"
|
|
716
717
|
Provides-Extra: documentation
|
|
717
718
|
Requires-Dist: matplotlib>=3.8; extra == "documentation"
|
|
718
|
-
Requires-Dist: numpydoc==1.
|
|
719
|
+
Requires-Dist: numpydoc==1.11.0; extra == "documentation"
|
|
719
720
|
Requires-Dist: sphinx>=5.1.1; extra == "documentation"
|
|
720
|
-
Requires-Dist: sphinx-gallery==0.
|
|
721
|
+
Requires-Dist: sphinx-gallery==0.22.1; extra == "documentation"
|
|
721
722
|
Requires-Dist: sphinx-design<1,>=0.6; extra == "documentation"
|
|
722
723
|
Requires-Dist: sphinx-rtd-theme==3.1.0; extra == "documentation"
|
|
723
|
-
Requires-Dist: pydata-sphinx-theme==0.
|
|
724
|
+
Requires-Dist: pydata-sphinx-theme==0.22.0; extra == "documentation"
|
|
724
725
|
Provides-Extra: dev
|
|
725
726
|
Requires-Dist: ruff<1,>=0.8; extra == "dev"
|
|
726
|
-
Requires-Dist: mypy<
|
|
727
|
+
Requires-Dist: mypy<3,>=1.15; extra == "dev"
|
|
727
728
|
Dynamic: license-file
|
|
728
729
|
|
|
729
730
|
.. image:: https://raw.githubusercontent.com/MartinPdeS/PyFiberModes/master/docs/source/_static/logo.png
|
|
@@ -1049,7 +1050,7 @@ Or run the complete local check target:
|
|
|
1049
1050
|
|
|
1050
1051
|
make check
|
|
1051
1052
|
|
|
1052
|
-
Tests run on Python 3.11 through 3.
|
|
1053
|
+
Tests run on Python 3.11 through 3.14 in GitHub Actions. Bug reports and
|
|
1053
1054
|
feature proposals are welcome through the
|
|
1054
1055
|
`issue tracker <https://github.com/MartinPdeS/PyFiberModes/issues>`_.
|
|
1055
1056
|
|
|
@@ -8,16 +8,16 @@ pytest-benchmark<6,>=5
|
|
|
8
8
|
|
|
9
9
|
[dev]
|
|
10
10
|
ruff<1,>=0.8
|
|
11
|
-
mypy<
|
|
11
|
+
mypy<3,>=1.15
|
|
12
12
|
|
|
13
13
|
[documentation]
|
|
14
14
|
matplotlib>=3.8
|
|
15
|
-
numpydoc==1.
|
|
15
|
+
numpydoc==1.11.0
|
|
16
16
|
sphinx>=5.1.1
|
|
17
|
-
sphinx-gallery==0.
|
|
17
|
+
sphinx-gallery==0.22.1
|
|
18
18
|
sphinx-design<1,>=0.6
|
|
19
19
|
sphinx-rtd-theme==3.1.0
|
|
20
|
-
pydata-sphinx-theme==0.
|
|
20
|
+
pydata-sphinx-theme==0.22.0
|
|
21
21
|
|
|
22
22
|
[plotting]
|
|
23
23
|
matplotlib>=3.8
|
|
@@ -29,4 +29,4 @@ pytest-json-report~=1.5
|
|
|
29
29
|
coverage~=7.6
|
|
30
30
|
ruff<1,>=0.8
|
|
31
31
|
matplotlib>=3.8
|
|
32
|
-
mypy<
|
|
32
|
+
mypy<3,>=1.15
|
|
@@ -321,7 +321,7 @@ Or run the complete local check target:
|
|
|
321
321
|
|
|
322
322
|
make check
|
|
323
323
|
|
|
324
|
-
Tests run on Python 3.11 through 3.
|
|
324
|
+
Tests run on Python 3.11 through 3.14 in GitHub Actions. Bug reports and
|
|
325
325
|
feature proposals are welcome through the
|
|
326
326
|
`issue tracker <https://github.com/MartinPdeS/PyFiberModes/issues>`_.
|
|
327
327
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
package:
|
|
2
2
|
name: pyfibermodes
|
|
3
|
-
version: 0.
|
|
3
|
+
version: 0.17.0
|
|
4
4
|
|
|
5
5
|
source:
|
|
6
6
|
path: ../
|
|
@@ -53,7 +53,7 @@ test:
|
|
|
53
53
|
- pytest>=0.6
|
|
54
54
|
- pytest-cov>=2.0
|
|
55
55
|
- pytest-json-report==1.5.0
|
|
56
|
-
- coverage
|
|
56
|
+
- coverage >=7.10,<8
|
|
57
57
|
commands:
|
|
58
58
|
- python -m pytest
|
|
59
59
|
source_files:
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "PyFiberModes"
|
|
7
|
-
version = "0.
|
|
7
|
+
version = "0.17.0"
|
|
8
8
|
description = "Guided-mode analysis and design for circular optical fibers."
|
|
9
9
|
license = {file = "LICENSE"}
|
|
10
10
|
readme = "README.rst"
|
|
@@ -17,6 +17,7 @@ classifiers = [
|
|
|
17
17
|
'Programming Language :: Python :: 3.11',
|
|
18
18
|
'Programming Language :: Python :: 3.12',
|
|
19
19
|
'Programming Language :: Python :: 3.13',
|
|
20
|
+
'Programming Language :: Python :: 3.14',
|
|
20
21
|
'Programming Language :: Python :: Implementation :: CPython',
|
|
21
22
|
'Development Status :: 4 - Beta',
|
|
22
23
|
'Topic :: Scientific/Engineering :: Physics',
|
|
@@ -65,7 +66,7 @@ testing = [
|
|
|
65
66
|
"coverage ~=7.6",
|
|
66
67
|
"ruff>=0.8,<1",
|
|
67
68
|
"matplotlib>=3.8",
|
|
68
|
-
"mypy>=1.15,<
|
|
69
|
+
"mypy>=1.15,<3",
|
|
69
70
|
]
|
|
70
71
|
|
|
71
72
|
plotting = [
|
|
@@ -79,17 +80,17 @@ benchmarking = [
|
|
|
79
80
|
|
|
80
81
|
documentation = [
|
|
81
82
|
"matplotlib>=3.8",
|
|
82
|
-
"numpydoc ==1.
|
|
83
|
+
"numpydoc ==1.11.0",
|
|
83
84
|
"sphinx >=5.1.1",
|
|
84
|
-
"sphinx-gallery ==0.
|
|
85
|
+
"sphinx-gallery ==0.22.1",
|
|
85
86
|
"sphinx-design >=0.6,<1",
|
|
86
87
|
"sphinx-rtd-theme ==3.1.0",
|
|
87
|
-
"pydata-sphinx-theme ==0.
|
|
88
|
+
"pydata-sphinx-theme ==0.22.0",
|
|
88
89
|
]
|
|
89
90
|
|
|
90
91
|
dev = [
|
|
91
92
|
"ruff>=0.8,<1",
|
|
92
|
-
"mypy>=1.15,<
|
|
93
|
+
"mypy>=1.15,<3",
|
|
93
94
|
]
|
|
94
95
|
|
|
95
96
|
[tool.ruff]
|
|
@@ -110,3 +111,7 @@ files = [
|
|
|
110
111
|
"PyFiberModes/solver/protocols.py",
|
|
111
112
|
"PyFiberModes/solver/results.py",
|
|
112
113
|
]
|
|
114
|
+
|
|
115
|
+
# Include runtime resources when building wheels from a source archive without Git.
|
|
116
|
+
[tool.setuptools.package-data]
|
|
117
|
+
PyFiberModes = ["fiber_files/*.yaml"]
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
name: Tests
|
|
2
|
-
|
|
3
|
-
on:
|
|
4
|
-
push:
|
|
5
|
-
branches: [master]
|
|
6
|
-
pull_request:
|
|
7
|
-
branches: [master]
|
|
8
|
-
|
|
9
|
-
permissions:
|
|
10
|
-
contents: read
|
|
11
|
-
|
|
12
|
-
jobs:
|
|
13
|
-
tests:
|
|
14
|
-
name: Python ${{ matrix.python-version }}
|
|
15
|
-
runs-on: ubuntu-latest
|
|
16
|
-
strategy:
|
|
17
|
-
fail-fast: false
|
|
18
|
-
matrix:
|
|
19
|
-
python-version: ["3.11", "3.12", "3.13"]
|
|
20
|
-
steps:
|
|
21
|
-
- uses: actions/checkout@fbc6f3992d24b796d5a048ff273f7fcc4a7b6c09
|
|
22
|
-
- uses: actions/setup-python@ece7cb06caefa5fff74198d8649806c4678c61a1
|
|
23
|
-
with:
|
|
24
|
-
python-version: ${{ matrix.python-version }}
|
|
25
|
-
- run: python -m pip install --upgrade pip && python -m pip install -e ".[testing]"
|
|
26
|
-
- run: python -m pytest -q
|
|
27
|
-
env:
|
|
28
|
-
MPLBACKEND: Agg
|
|
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
|
|
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
|
|
File without changes
|
{pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/fiber_files/test_multimode_fiber.yaml
RENAMED
|
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
|
{pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/solver/multilayer/effective_index.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/PyFiberModes/solver/two_layer/effective_index.py
RENAMED
|
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
|
{pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/analysis/plot_coupled_mode_exchange.py
RENAMED
|
File without changes
|
{pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/analysis/plot_guided_mode_discovery.py
RENAMED
|
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
|
{pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/benchmarks/plot_field_grid_scaling.py
RENAMED
|
File without changes
|
{pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/benchmarks/plot_modal_cache_speedup.py
RENAMED
|
File without changes
|
|
File without changes
|
{pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/fields/plot_confinement_by_radius.py
RENAMED
|
File without changes
|
{pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/fields/plot_polarization_rotation.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/validation/plot_effective_index_bounds.py
RENAMED
|
File without changes
|
{pyfibermodes-0.16.0 → pyfibermodes-0.17.0}/docs/examples/validation/plot_field_area_convergence.py
RENAMED
|
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
|
|
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
|
|
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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|