pyfes 2026.4.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.
- pyfes-2026.4.0/.clang-format +171 -0
- pyfes-2026.4.0/.github/ISSUE_TEMPLATE/bug_report.md +34 -0
- pyfes-2026.4.0/.github/ISSUE_TEMPLATE/feature_request.md +20 -0
- pyfes-2026.4.0/.github/workflows/ci.yaml +114 -0
- pyfes-2026.4.0/.github/workflows/pre-commit.yml +15 -0
- pyfes-2026.4.0/.github/workflows/pypipublish.yaml +84 -0
- pyfes-2026.4.0/.github/workflows/wheels.yml +129 -0
- pyfes-2026.4.0/.gitignore +123 -0
- pyfes-2026.4.0/.gitmodules +3 -0
- pyfes-2026.4.0/.pre-commit-config.yaml +60 -0
- pyfes-2026.4.0/AUTHORS +5 -0
- pyfes-2026.4.0/CMakeLists.txt +447 -0
- pyfes-2026.4.0/Dockerfile +157 -0
- pyfes-2026.4.0/LICENSE +29 -0
- pyfes-2026.4.0/MANIFEST.in +14 -0
- pyfes-2026.4.0/PKG-INFO +244 -0
- pyfes-2026.4.0/README.md +219 -0
- pyfes-2026.4.0/_custom_build/backend.py +145 -0
- pyfes-2026.4.0/binder/environment.yml +12 -0
- pyfes-2026.4.0/binder/postBuild +26 -0
- pyfes-2026.4.0/conda/environment.yml +23 -0
- pyfes-2026.4.0/conda/meta.yaml +55 -0
- pyfes-2026.4.0/conftest.py +158 -0
- pyfes-2026.4.0/data/fes2014/README.md +91 -0
- pyfes-2026.4.0/data/fes2014/eastward_velocity/.gitkeep +0 -0
- pyfes-2026.4.0/data/fes2014/eastward_velocity.yaml +41 -0
- pyfes-2026.4.0/data/fes2014/load_tide/.gitkeep +0 -0
- pyfes-2026.4.0/data/fes2014/load_tide.yaml +41 -0
- pyfes-2026.4.0/data/fes2014/northward_velocity/.gitkeep +0 -0
- pyfes-2026.4.0/data/fes2014/northward_velocity.yaml +41 -0
- pyfes-2026.4.0/data/fes2014/ocean_tide/.gitkeep +0 -0
- pyfes-2026.4.0/data/fes2014/ocean_tide.yaml +41 -0
- pyfes-2026.4.0/data/fes2014/ocean_tide_extrapolated/.gitkeep +0 -0
- pyfes-2026.4.0/data/fes2014/ocean_tide_extrapolated.yaml +41 -0
- pyfes-2026.4.0/data/fes2022b/README.md +77 -0
- pyfes-2026.4.0/data/fes2022b/fes2022.yaml +84 -0
- pyfes-2026.4.0/data/fes2022b/load_tide/.gitkeep +0 -0
- pyfes-2026.4.0/data/fes2022b/load_tide.yaml +41 -0
- pyfes-2026.4.0/data/fes2022b/ocean_tide/.gitkeep +0 -0
- pyfes-2026.4.0/data/fes2022b/ocean_tide.yaml +43 -0
- pyfes-2026.4.0/data/fes2022b/ocean_tide_extrapolated/.gitkeep +0 -0
- pyfes-2026.4.0/data/fes2022b/ocean_tide_extrapolated.yaml +43 -0
- pyfes-2026.4.0/docs/Doxyfile +2881 -0
- pyfes-2026.4.0/docs/Makefile +20 -0
- pyfes-2026.4.0/docs/main_page.dox +216 -0
- pyfes-2026.4.0/docs/make.bat +35 -0
- pyfes-2026.4.0/docs/source/api/astronomic_angle.rst +19 -0
- pyfes-2026.4.0/docs/source/api/configuration.rst +23 -0
- pyfes-2026.4.0/docs/source/api/engine_modules.rst +47 -0
- pyfes-2026.4.0/docs/source/api/enumerations.rst +164 -0
- pyfes-2026.4.0/docs/source/api/exceptions.rst +18 -0
- pyfes-2026.4.0/docs/source/api/index.rst +43 -0
- pyfes-2026.4.0/docs/source/api/prediction.rst +21 -0
- pyfes-2026.4.0/docs/source/api/settings.rst +38 -0
- pyfes-2026.4.0/docs/source/api/tidal_models.rst +60 -0
- pyfes-2026.4.0/docs/source/api/utilities.rst +13 -0
- pyfes-2026.4.0/docs/source/api/wave_system.rst +41 -0
- pyfes-2026.4.0/docs/source/auto_examples/cube.svg +1 -0
- pyfes-2026.4.0/docs/source/changelog.rst +513 -0
- pyfes-2026.4.0/docs/source/conf.py +263 -0
- pyfes-2026.4.0/docs/source/constituents/darwin.rst +116 -0
- pyfes-2026.4.0/docs/source/constituents/index.rst +25 -0
- pyfes-2026.4.0/docs/source/constituents/perth.rst +97 -0
- pyfes-2026.4.0/docs/source/engines.rst +180 -0
- pyfes-2026.4.0/docs/source/getting_started.rst +163 -0
- pyfes-2026.4.0/docs/source/glossary.rst +180 -0
- pyfes-2026.4.0/docs/source/index.rst +166 -0
- pyfes-2026.4.0/docs/source/theory/admittance_inference.rst +148 -0
- pyfes-2026.4.0/docs/source/theory/astronomic_angles.rst +327 -0
- pyfes-2026.4.0/docs/source/theory/compound_waves.rst +167 -0
- pyfes-2026.4.0/docs/source/theory/harmonic_analysis.rst +151 -0
- pyfes-2026.4.0/docs/source/theory/harmonic_development.rst +261 -0
- pyfes-2026.4.0/docs/source/theory/index.rst +55 -0
- pyfes-2026.4.0/docs/source/theory/nodal_corrections.rst +293 -0
- pyfes-2026.4.0/docs/source/theory/tide_generating_potential.rst +161 -0
- pyfes-2026.4.0/docs/source/user_guide.rst +417 -0
- pyfes-2026.4.0/examples/README.rst +5 -0
- pyfes-2026.4.0/examples/ex_astronomic_constants.py +714 -0
- pyfes-2026.4.0/examples/ex_constituents_prediction.py +289 -0
- pyfes-2026.4.0/examples/ex_engine_comparison.py +291 -0
- pyfes-2026.4.0/examples/ex_harmonic_analysis.py +169 -0
- pyfes-2026.4.0/examples/ex_interpolation.py +165 -0
- pyfes-2026.4.0/examples/ex_lpg_prediction.py +178 -0
- pyfes-2026.4.0/examples/ex_mapping.py +117 -0
- pyfes-2026.4.0/examples/ex_prediction.py +201 -0
- pyfes-2026.4.0/examples/fes_lpg.yml +26 -0
- pyfes-2026.4.0/examples/fes_slev.yml +31 -0
- pyfes-2026.4.0/examples/fes_slev_2014_v1.2.txt +25 -0
- pyfes-2026.4.0/examples/fes_slev_2022_v2.9.7.txt +26 -0
- pyfes-2026.4.0/examples/got5_6.yml +30 -0
- pyfes-2026.4.0/examples/mitgcm_detiding.py +269 -0
- pyfes-2026.4.0/examples/prediction.cpp +427 -0
- pyfes-2026.4.0/include/fes/angle/astronomic.hpp +719 -0
- pyfes-2026.4.0/include/fes/axis.hpp +198 -0
- pyfes-2026.4.0/include/fes/constituent.hpp +226 -0
- pyfes-2026.4.0/include/fes/darwin/constituent.hpp +60 -0
- pyfes-2026.4.0/include/fes/darwin/wave.hpp +1509 -0
- pyfes-2026.4.0/include/fes/darwin/wave_table.hpp +44 -0
- pyfes-2026.4.0/include/fes/darwin.hpp +187 -0
- pyfes-2026.4.0/include/fes/delta_time.hpp +204 -0
- pyfes-2026.4.0/include/fes/detail/angle/astronomic/frequency.hpp +66 -0
- pyfes-2026.4.0/include/fes/detail/angle/astronomic/speed.hpp +70 -0
- pyfes-2026.4.0/include/fes/detail/broadcast.hpp +73 -0
- pyfes-2026.4.0/include/fes/detail/geometry/algorithm.hpp +52 -0
- pyfes-2026.4.0/include/fes/detail/grid.hpp +89 -0
- pyfes-2026.4.0/include/fes/detail/markdown_table.hpp +79 -0
- pyfes-2026.4.0/include/fes/detail/math.hpp +422 -0
- pyfes-2026.4.0/include/fes/detail/parallel_for.hpp +77 -0
- pyfes-2026.4.0/include/fes/detail/string.hpp +26 -0
- pyfes-2026.4.0/include/fes/enum_map.hpp +289 -0
- pyfes-2026.4.0/include/fes/geometry/box.hpp +94 -0
- pyfes-2026.4.0/include/fes/geometry/ecef.hpp +152 -0
- pyfes-2026.4.0/include/fes/geometry/point.hpp +167 -0
- pyfes-2026.4.0/include/fes/geometry/triangle.hpp +248 -0
- pyfes-2026.4.0/include/fes/harmonic_analysis.hpp +67 -0
- pyfes-2026.4.0/include/fes/inference.hpp +610 -0
- pyfes-2026.4.0/include/fes/interface/inference.hpp +74 -0
- pyfes-2026.4.0/include/fes/interface/tidal_model.hpp +319 -0
- pyfes-2026.4.0/include/fes/interface/wave.hpp +238 -0
- pyfes-2026.4.0/include/fes/interface/wave_table.hpp +359 -0
- pyfes-2026.4.0/include/fes/long_period_equilibrium.hpp +66 -0
- pyfes-2026.4.0/include/fes/map.hpp +158 -0
- pyfes-2026.4.0/include/fes/mesh/index.hpp +271 -0
- pyfes-2026.4.0/include/fes/namespace.hpp +74 -0
- pyfes-2026.4.0/include/fes/numbers.hpp +168 -0
- pyfes-2026.4.0/include/fes/perth/constituent.hpp +59 -0
- pyfes-2026.4.0/include/fes/perth/doodson.hpp +81 -0
- pyfes-2026.4.0/include/fes/perth/love_numbers.hpp +55 -0
- pyfes-2026.4.0/include/fes/perth/nodal_corrections.hpp +118 -0
- pyfes-2026.4.0/include/fes/perth/wave.hpp +557 -0
- pyfes-2026.4.0/include/fes/perth/wave_table.hpp +43 -0
- pyfes-2026.4.0/include/fes/python/datemanip.hpp +116 -0
- pyfes-2026.4.0/include/fes/python/datetime64.hpp +77 -0
- pyfes-2026.4.0/include/fes/python/optional.hpp +26 -0
- pyfes-2026.4.0/include/fes/settings.hpp +167 -0
- pyfes-2026.4.0/include/fes/tidal_model/cartesian.hpp +282 -0
- pyfes-2026.4.0/include/fes/tidal_model/lgp.hpp +716 -0
- pyfes-2026.4.0/include/fes/tide.hpp +294 -0
- pyfes-2026.4.0/include/fes/types.hpp +53 -0
- pyfes-2026.4.0/include/fes/version.hpp +9 -0
- pyfes-2026.4.0/include/fes/xdo.hpp +68 -0
- pyfes-2026.4.0/pyproject.toml +169 -0
- pyfes-2026.4.0/pytest.ini +9 -0
- pyfes-2026.4.0/setup.cfg +14 -0
- pyfes-2026.4.0/setup.py +353 -0
- pyfes-2026.4.0/src/core/astronomic_angle.cpp +119 -0
- pyfes-2026.4.0/src/core/axis.cpp +87 -0
- pyfes-2026.4.0/src/core/constituents.cpp +47 -0
- pyfes-2026.4.0/src/core/darwin.cpp +90 -0
- pyfes-2026.4.0/src/core/datemanip.cpp +47 -0
- pyfes-2026.4.0/src/core/long_period_equilibrium.cpp +101 -0
- pyfes-2026.4.0/src/core/main.cpp +60 -0
- pyfes-2026.4.0/src/core/mesh_index.cpp +61 -0
- pyfes-2026.4.0/src/core/perth.cpp +89 -0
- pyfes-2026.4.0/src/core/settings.cpp +275 -0
- pyfes-2026.4.0/src/core/tidal_model_cartesian.cpp +76 -0
- pyfes-2026.4.0/src/core/tidal_model_interface.cpp +244 -0
- pyfes-2026.4.0/src/core/tidal_model_lgp.cpp +115 -0
- pyfes-2026.4.0/src/core/tide.cpp +158 -0
- pyfes-2026.4.0/src/core/wave_interface.cpp +159 -0
- pyfes-2026.4.0/src/core/wave_table_interface.cpp +404 -0
- pyfes-2026.4.0/src/library/axis.cpp +164 -0
- pyfes-2026.4.0/src/library/constituent.cpp +55 -0
- pyfes-2026.4.0/src/library/darwin/wave.cpp +485 -0
- pyfes-2026.4.0/src/library/darwin/wave_table.cpp +254 -0
- pyfes-2026.4.0/src/library/geometry/triangle.cpp +67 -0
- pyfes-2026.4.0/src/library/harmonic_analysis.cpp +42 -0
- pyfes-2026.4.0/src/library/inference.cpp +28 -0
- pyfes-2026.4.0/src/library/interface/wave.cpp +31 -0
- pyfes-2026.4.0/src/library/interface/wave_table.cpp +286 -0
- pyfes-2026.4.0/src/library/long_period_equilibrium.cpp +259 -0
- pyfes-2026.4.0/src/library/mesh/index.cpp +155 -0
- pyfes-2026.4.0/src/library/perth/nodal_corrections.cpp +520 -0
- pyfes-2026.4.0/src/library/perth/wave.cpp +337 -0
- pyfes-2026.4.0/src/library/perth/wave_table.cpp +229 -0
- pyfes-2026.4.0/src/library/settings.cpp +125 -0
- pyfes-2026.4.0/src/library/tide.cpp +99 -0
- pyfes-2026.4.0/src/library/wave_table.cpp +36 -0
- pyfes-2026.4.0/src/pyfes/__init__.py +292 -0
- pyfes-2026.4.0/src/pyfes/astronomic_angle.py +60 -0
- pyfes-2026.4.0/src/pyfes/config.py +929 -0
- pyfes-2026.4.0/src/pyfes/console_script/__init__.py +1 -0
- pyfes-2026.4.0/src/pyfes/console_script/fes_convert_mesh.py +154 -0
- pyfes-2026.4.0/src/pyfes/core/__init__.pyi +486 -0
- pyfes-2026.4.0/src/pyfes/core/darwin.pyi +24 -0
- pyfes-2026.4.0/src/pyfes/core/datemanip.pyi +4 -0
- pyfes-2026.4.0/src/pyfes/core/mesh.pyi +10 -0
- pyfes-2026.4.0/src/pyfes/core/perth.pyi +24 -0
- pyfes-2026.4.0/src/pyfes/core/tidal_model.pyi +120 -0
- pyfes-2026.4.0/src/pyfes/py.typed +0 -0
- pyfes-2026.4.0/src/pyfes/type_hints.py +110 -0
- pyfes-2026.4.0/src/pyfes/version.py +6 -0
- pyfes-2026.4.0/src/pyfes.egg-info/PKG-INFO +244 -0
- pyfes-2026.4.0/src/pyfes.egg-info/SOURCES.txt +619 -0
- pyfes-2026.4.0/src/pyfes.egg-info/dependency_links.txt +1 -0
- pyfes-2026.4.0/src/pyfes.egg-info/entry_points.txt +2 -0
- pyfes-2026.4.0/src/pyfes.egg-info/not-zip-safe +1 -0
- pyfes-2026.4.0/src/pyfes.egg-info/requires.txt +3 -0
- pyfes-2026.4.0/src/pyfes.egg-info/top_level.txt +3 -0
- pyfes-2026.4.0/tests/library/CMakeLists.txt +35 -0
- pyfes-2026.4.0/tests/library/angle/CMakeLists.txt +1 -0
- pyfes-2026.4.0/tests/library/angle/astronomic.cpp +102 -0
- pyfes-2026.4.0/tests/library/axis.cpp +193 -0
- pyfes-2026.4.0/tests/library/darwin/CMakeLists.txt +2 -0
- pyfes-2026.4.0/tests/library/darwin/darwin_table.cpp +548 -0
- pyfes-2026.4.0/tests/library/darwin/darwin_wave.cpp +549 -0
- pyfes-2026.4.0/tests/library/darwin.cpp +457 -0
- pyfes-2026.4.0/tests/library/delta_time.cpp +221 -0
- pyfes-2026.4.0/tests/library/detail/CMakeLists.txt +3 -0
- pyfes-2026.4.0/tests/library/detail/grid.cpp +47 -0
- pyfes-2026.4.0/tests/library/detail/math.cpp +183 -0
- pyfes-2026.4.0/tests/library/detail/parallel_for.cpp +38 -0
- pyfes-2026.4.0/tests/library/enum_map.cpp +0 -0
- pyfes-2026.4.0/tests/library/geometry/CMakeLists.txt +4 -0
- pyfes-2026.4.0/tests/library/geometry/box.cpp +202 -0
- pyfes-2026.4.0/tests/library/geometry/ecef.cpp +36 -0
- pyfes-2026.4.0/tests/library/geometry/point.cpp +37 -0
- pyfes-2026.4.0/tests/library/geometry/triangle.cpp +87 -0
- pyfes-2026.4.0/tests/library/inference.cpp +282 -0
- pyfes-2026.4.0/tests/library/long_period_equilibrium.cpp +96 -0
- pyfes-2026.4.0/tests/library/mesh/CMakeLists.txt +1 -0
- pyfes-2026.4.0/tests/library/mesh/index.cpp +86 -0
- pyfes-2026.4.0/tests/library/perth/CMakeLists.txt +2 -0
- pyfes-2026.4.0/tests/library/perth/doodson.cpp +54 -0
- pyfes-2026.4.0/tests/library/perth/perth_nodal_corrections.cpp +390 -0
- pyfes-2026.4.0/tests/library/tidal_model/CMakeLists.txt +3 -0
- pyfes-2026.4.0/tests/library/tidal_model/cartesian.cpp +125 -0
- pyfes-2026.4.0/tests/library/tidal_model/lgp1.cpp +88 -0
- pyfes-2026.4.0/tests/library/tidal_model/lgp2.cpp +89 -0
- pyfes-2026.4.0/tests/library/tide.cpp +159 -0
- pyfes-2026.4.0/tests/library/xdo.cpp +241 -0
- pyfes-2026.4.0/tests/python/__init__.py +0 -0
- pyfes-2026.4.0/tests/python/core/__init__.py +10 -0
- pyfes-2026.4.0/tests/python/core/darwin/__init__.py +4 -0
- pyfes-2026.4.0/tests/python/core/darwin/test_evaluate_long_period.py +38 -0
- pyfes-2026.4.0/tests/python/core/darwin/test_wave.py +201 -0
- pyfes-2026.4.0/tests/python/core/darwin/test_wave_table.py +305 -0
- pyfes-2026.4.0/tests/python/core/perth/__init__.py +4 -0
- pyfes-2026.4.0/tests/python/core/perth/test_wave.py +308 -0
- pyfes-2026.4.0/tests/python/core/perth/test_wave_table.py +145 -0
- pyfes-2026.4.0/tests/python/core/test_astronomic_angle.py +106 -0
- pyfes-2026.4.0/tests/python/core/test_axis.py +34 -0
- pyfes-2026.4.0/tests/python/core/test_evaluate_tide.py +299 -0
- pyfes-2026.4.0/tests/python/core/test_long_period_equilibrium.py +159 -0
- pyfes-2026.4.0/tests/python/core/test_tidal_model_cartesian.py +121 -0
- pyfes-2026.4.0/tests/python/test_bbox.py +133 -0
- pyfes-2026.4.0/tests/python/test_config.py +61 -0
- pyfes-2026.4.0/tests/python/test_lgp.py +58 -0
- pyfes-2026.4.0/tests/python/test_resample.py +303 -0
- pyfes-2026.4.0/third_party/pybind11/.appveyor.yml +35 -0
- pyfes-2026.4.0/third_party/pybind11/.clang-format +38 -0
- pyfes-2026.4.0/third_party/pybind11/.clang-tidy +83 -0
- pyfes-2026.4.0/third_party/pybind11/.cmake-format.yaml +73 -0
- pyfes-2026.4.0/third_party/pybind11/.codespell-ignore-lines +36 -0
- pyfes-2026.4.0/third_party/pybind11/.git +1 -0
- pyfes-2026.4.0/third_party/pybind11/.gitattributes +1 -0
- pyfes-2026.4.0/third_party/pybind11/.github/CODEOWNERS +9 -0
- pyfes-2026.4.0/third_party/pybind11/.github/CONTRIBUTING.md +349 -0
- pyfes-2026.4.0/third_party/pybind11/.github/ISSUE_TEMPLATE/bug-report.yml +61 -0
- pyfes-2026.4.0/third_party/pybind11/.github/ISSUE_TEMPLATE/config.yml +8 -0
- pyfes-2026.4.0/third_party/pybind11/.github/dependabot.yml +11 -0
- pyfes-2026.4.0/third_party/pybind11/.github/labeler.yml +13 -0
- pyfes-2026.4.0/third_party/pybind11/.github/labeler_merged.yml +8 -0
- pyfes-2026.4.0/third_party/pybind11/.github/matchers/pylint.json +32 -0
- pyfes-2026.4.0/third_party/pybind11/.github/pull_request_template.md +15 -0
- pyfes-2026.4.0/third_party/pybind11/.github/workflows/ci.yml +1369 -0
- pyfes-2026.4.0/third_party/pybind11/.github/workflows/configure.yml +85 -0
- pyfes-2026.4.0/third_party/pybind11/.github/workflows/docs-link.yml +41 -0
- pyfes-2026.4.0/third_party/pybind11/.github/workflows/format.yml +54 -0
- pyfes-2026.4.0/third_party/pybind11/.github/workflows/labeler.yml +25 -0
- pyfes-2026.4.0/third_party/pybind11/.github/workflows/nightlies.yml +59 -0
- pyfes-2026.4.0/third_party/pybind11/.github/workflows/pip.yml +118 -0
- pyfes-2026.4.0/third_party/pybind11/.github/workflows/reusable-standard.yml +98 -0
- pyfes-2026.4.0/third_party/pybind11/.github/workflows/tests-cibw.yml +77 -0
- pyfes-2026.4.0/third_party/pybind11/.github/workflows/upstream.yml +118 -0
- pyfes-2026.4.0/third_party/pybind11/.gitignore +54 -0
- pyfes-2026.4.0/third_party/pybind11/.pre-commit-config.yaml +158 -0
- pyfes-2026.4.0/third_party/pybind11/.readthedocs.yml +20 -0
- pyfes-2026.4.0/third_party/pybind11/CMakeLists.txt +425 -0
- pyfes-2026.4.0/third_party/pybind11/CMakePresets.json +93 -0
- pyfes-2026.4.0/third_party/pybind11/LICENSE +29 -0
- pyfes-2026.4.0/third_party/pybind11/README.rst +215 -0
- pyfes-2026.4.0/third_party/pybind11/SECURITY.md +13 -0
- pyfes-2026.4.0/third_party/pybind11/docs/Doxyfile +21 -0
- pyfes-2026.4.0/third_party/pybind11/docs/Makefile +192 -0
- pyfes-2026.4.0/third_party/pybind11/docs/_static/css/custom.css +3 -0
- pyfes-2026.4.0/third_party/pybind11/docs/advanced/cast/chrono.rst +81 -0
- pyfes-2026.4.0/third_party/pybind11/docs/advanced/cast/custom.rst +137 -0
- pyfes-2026.4.0/third_party/pybind11/docs/advanced/cast/eigen.rst +310 -0
- pyfes-2026.4.0/third_party/pybind11/docs/advanced/cast/functional.rst +109 -0
- pyfes-2026.4.0/third_party/pybind11/docs/advanced/cast/index.rst +43 -0
- pyfes-2026.4.0/third_party/pybind11/docs/advanced/cast/overview.rst +170 -0
- pyfes-2026.4.0/third_party/pybind11/docs/advanced/cast/stl.rst +249 -0
- pyfes-2026.4.0/third_party/pybind11/docs/advanced/cast/strings.rst +296 -0
- pyfes-2026.4.0/third_party/pybind11/docs/advanced/classes.rst +1432 -0
- pyfes-2026.4.0/third_party/pybind11/docs/advanced/deadlock.md +391 -0
- pyfes-2026.4.0/third_party/pybind11/docs/advanced/deprecated.rst +179 -0
- pyfes-2026.4.0/third_party/pybind11/docs/advanced/embedding.rst +499 -0
- pyfes-2026.4.0/third_party/pybind11/docs/advanced/exceptions.rst +422 -0
- pyfes-2026.4.0/third_party/pybind11/docs/advanced/functions.rst +616 -0
- pyfes-2026.4.0/third_party/pybind11/docs/advanced/misc.rst +615 -0
- pyfes-2026.4.0/third_party/pybind11/docs/advanced/pycpp/index.rst +13 -0
- pyfes-2026.4.0/third_party/pybind11/docs/advanced/pycpp/numpy.rst +493 -0
- pyfes-2026.4.0/third_party/pybind11/docs/advanced/pycpp/object.rst +286 -0
- pyfes-2026.4.0/third_party/pybind11/docs/advanced/pycpp/utilities.rst +155 -0
- pyfes-2026.4.0/third_party/pybind11/docs/advanced/smart_ptrs.rst +179 -0
- pyfes-2026.4.0/third_party/pybind11/docs/basics.rst +316 -0
- pyfes-2026.4.0/third_party/pybind11/docs/benchmark.py +89 -0
- pyfes-2026.4.0/third_party/pybind11/docs/benchmark.rst +95 -0
- pyfes-2026.4.0/third_party/pybind11/docs/changelog.md +3488 -0
- pyfes-2026.4.0/third_party/pybind11/docs/classes.rst +652 -0
- pyfes-2026.4.0/third_party/pybind11/docs/cmake/index.rst +8 -0
- pyfes-2026.4.0/third_party/pybind11/docs/compiling.rst +731 -0
- pyfes-2026.4.0/third_party/pybind11/docs/conf.py +369 -0
- pyfes-2026.4.0/third_party/pybind11/docs/faq.rst +351 -0
- pyfes-2026.4.0/third_party/pybind11/docs/index.rst +49 -0
- pyfes-2026.4.0/third_party/pybind11/docs/installing.rst +105 -0
- pyfes-2026.4.0/third_party/pybind11/docs/limitations.rst +68 -0
- pyfes-2026.4.0/third_party/pybind11/docs/pybind11-logo.png +0 -0
- pyfes-2026.4.0/third_party/pybind11/docs/pybind11_vs_boost_python1.png +0 -0
- pyfes-2026.4.0/third_party/pybind11/docs/pybind11_vs_boost_python1.svg +427 -0
- pyfes-2026.4.0/third_party/pybind11/docs/pybind11_vs_boost_python2.png +0 -0
- pyfes-2026.4.0/third_party/pybind11/docs/pybind11_vs_boost_python2.svg +427 -0
- pyfes-2026.4.0/third_party/pybind11/docs/reference.rst +130 -0
- pyfes-2026.4.0/third_party/pybind11/docs/release.rst +135 -0
- pyfes-2026.4.0/third_party/pybind11/docs/requirements.in +7 -0
- pyfes-2026.4.0/third_party/pybind11/docs/requirements.txt +87 -0
- pyfes-2026.4.0/third_party/pybind11/docs/upgrade.rst +748 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/attr.h +730 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/buffer_info.h +209 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/cast.h +2446 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/chrono.h +227 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/common.h +2 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/complex.h +93 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/conduit/README.txt +15 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/conduit/pybind11_conduit_v1.h +116 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/conduit/pybind11_platform_abi_id.h +87 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/conduit/wrap_include_python_h.h +72 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/critical_section.h +56 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/detail/argument_vector.h +417 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/detail/class.h +850 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/detail/common.h +1427 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/detail/cpp_conduit.h +75 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/detail/descr.h +226 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/detail/dynamic_raw_ptr_cast_if_possible.h +39 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/detail/exception_translation.h +71 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/detail/function_record_pyobject.h +192 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/detail/holder_caster_foreign_helpers.h +104 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/detail/init.h +548 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/detail/internals.h +1082 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/detail/native_enum_data.h +227 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/detail/pybind11_namespace_macros.h +82 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/detail/struct_smart_holder.h +398 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/detail/type_caster_base.h +1723 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/detail/typeid.h +65 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/detail/using_smart_holder.h +22 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/detail/value_and_holder.h +92 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/eigen/common.h +9 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/eigen/matrix.h +723 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/eigen/tensor.h +520 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/eigen.h +12 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/embed.h +320 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/eval.h +161 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/functional.h +147 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/gil.h +203 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/gil_safe_call_once.h +273 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/gil_simple.h +37 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/iostream.h +301 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/native_enum.h +76 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/numpy.h +2412 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/operators.h +202 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/options.h +92 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/pybind11.h +3962 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/pytypes.h +2736 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/stl/filesystem.h +114 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/stl.h +666 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/stl_bind.h +858 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/subinterpreter.h +291 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/trampoline_self_life_support.h +65 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/type_caster_pyobject_ptr.h +61 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/typing.h +295 -0
- pyfes-2026.4.0/third_party/pybind11/include/pybind11/warnings.h +75 -0
- pyfes-2026.4.0/third_party/pybind11/noxfile.py +151 -0
- pyfes-2026.4.0/third_party/pybind11/pybind11/__init__.py +19 -0
- pyfes-2026.4.0/third_party/pybind11/pybind11/__main__.py +97 -0
- pyfes-2026.4.0/third_party/pybind11/pybind11/_version.py +34 -0
- pyfes-2026.4.0/third_party/pybind11/pybind11/commands.py +39 -0
- pyfes-2026.4.0/third_party/pybind11/pybind11/py.typed +0 -0
- pyfes-2026.4.0/third_party/pybind11/pybind11/setup_helpers.py +500 -0
- pyfes-2026.4.0/third_party/pybind11/pyproject.toml +215 -0
- pyfes-2026.4.0/third_party/pybind11/tests/CMakeLists.txt +694 -0
- pyfes-2026.4.0/third_party/pybind11/tests/conftest.py +313 -0
- pyfes-2026.4.0/third_party/pybind11/tests/constructor_stats.h +330 -0
- pyfes-2026.4.0/third_party/pybind11/tests/cross_module_gil_utils.cpp +111 -0
- pyfes-2026.4.0/third_party/pybind11/tests/cross_module_interleaved_error_already_set.cpp +54 -0
- pyfes-2026.4.0/third_party/pybind11/tests/custom_exceptions.py +10 -0
- pyfes-2026.4.0/third_party/pybind11/tests/eigen_tensor_avoid_stl_array.cpp +16 -0
- pyfes-2026.4.0/third_party/pybind11/tests/env.py +76 -0
- pyfes-2026.4.0/third_party/pybind11/tests/exo_planet_c_api.cpp +76 -0
- pyfes-2026.4.0/third_party/pybind11/tests/exo_planet_pybind11.cpp +19 -0
- pyfes-2026.4.0/third_party/pybind11/tests/extra_python_package/pytest.ini +0 -0
- pyfes-2026.4.0/third_party/pybind11/tests/extra_python_package/test_files.py +385 -0
- pyfes-2026.4.0/third_party/pybind11/tests/extra_setuptools/pytest.ini +0 -0
- pyfes-2026.4.0/third_party/pybind11/tests/extra_setuptools/test_setuphelper.py +153 -0
- pyfes-2026.4.0/third_party/pybind11/tests/home_planet_very_lonely_traveler.cpp +13 -0
- pyfes-2026.4.0/third_party/pybind11/tests/local_bindings.h +93 -0
- pyfes-2026.4.0/third_party/pybind11/tests/mod_per_interpreter_gil.cpp +20 -0
- pyfes-2026.4.0/third_party/pybind11/tests/mod_per_interpreter_gil_with_singleton.cpp +147 -0
- pyfes-2026.4.0/third_party/pybind11/tests/mod_shared_interpreter_gil.cpp +17 -0
- pyfes-2026.4.0/third_party/pybind11/tests/object.h +205 -0
- pyfes-2026.4.0/third_party/pybind11/tests/pure_cpp/CMakeLists.txt +22 -0
- pyfes-2026.4.0/third_party/pybind11/tests/pure_cpp/smart_holder_poc.h +56 -0
- pyfes-2026.4.0/third_party/pybind11/tests/pure_cpp/smart_holder_poc_test.cpp +427 -0
- pyfes-2026.4.0/third_party/pybind11/tests/pybind11_cross_module_tests.cpp +163 -0
- pyfes-2026.4.0/third_party/pybind11/tests/pybind11_tests.cpp +141 -0
- pyfes-2026.4.0/third_party/pybind11/tests/pybind11_tests.h +119 -0
- pyfes-2026.4.0/third_party/pybind11/tests/pyproject.toml +40 -0
- pyfes-2026.4.0/third_party/pybind11/tests/pytest.ini +22 -0
- pyfes-2026.4.0/third_party/pybind11/tests/requirements.txt +20 -0
- pyfes-2026.4.0/third_party/pybind11/tests/standalone_enum_module.cpp +13 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_async.cpp +25 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_async.py +31 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_buffers.cpp +571 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_buffers.py +471 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_builtin_casters.cpp +393 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_builtin_casters.py +624 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_call_policies.cpp +113 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_call_policies.py +256 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_callbacks.cpp +302 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_callbacks.py +248 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_chrono.cpp +81 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_chrono.py +207 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_class.cpp +700 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_class.py +575 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_class_cross_module_use_after_one_module_dealloc.cpp +23 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_class_cross_module_use_after_one_module_dealloc.py +43 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_class_release_gil_before_calling_cpp_dtor.cpp +54 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_class_release_gil_before_calling_cpp_dtor.py +21 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_class_sh_basic.cpp +248 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_class_sh_basic.py +248 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_class_sh_disowning.cpp +41 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_class_sh_disowning.py +78 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_class_sh_disowning_mi.cpp +85 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_class_sh_disowning_mi.py +246 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_class_sh_factory_constructors.cpp +156 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_class_sh_factory_constructors.py +53 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_class_sh_inheritance.cpp +90 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_class_sh_inheritance.py +63 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_class_sh_mi_thunks.cpp +230 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_class_sh_mi_thunks.py +104 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_class_sh_property.cpp +129 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_class_sh_property.py +218 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_class_sh_property_non_owning.cpp +65 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_class_sh_property_non_owning.py +30 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_class_sh_shared_ptr_copy_move.cpp +103 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_class_sh_shared_ptr_copy_move.py +41 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_class_sh_trampoline_basic.cpp +57 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_class_sh_trampoline_basic.py +35 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_class_sh_trampoline_self_life_support.cpp +86 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_class_sh_trampoline_self_life_support.py +38 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_class_sh_trampoline_shared_from_this.cpp +137 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_class_sh_trampoline_shared_from_this.py +247 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_class_sh_trampoline_shared_ptr_cpp_arg.cpp +92 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_class_sh_trampoline_shared_ptr_cpp_arg.py +154 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_class_sh_trampoline_unique_ptr.cpp +63 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_class_sh_trampoline_unique_ptr.py +31 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_class_sh_unique_ptr_custom_deleter.cpp +30 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_class_sh_unique_ptr_custom_deleter.py +8 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_class_sh_unique_ptr_member.cpp +50 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_class_sh_unique_ptr_member.py +26 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_class_sh_virtual_py_cpp_mix.cpp +58 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_class_sh_virtual_py_cpp_mix.py +66 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_cmake_build/CMakeLists.txt +91 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_cmake_build/embed.cpp +23 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_cmake_build/installed_embed/CMakeLists.txt +19 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_cmake_build/installed_function/CMakeLists.txt +29 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_cmake_build/installed_target/CMakeLists.txt +37 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_cmake_build/main.cpp +6 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_cmake_build/subdirectory_embed/CMakeLists.txt +38 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_cmake_build/subdirectory_function/CMakeLists.txt +32 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_cmake_build/subdirectory_target/CMakeLists.txt +38 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_cmake_build/test.py +10 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_const_name.cpp +55 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_const_name.py +31 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_constants_and_functions.cpp +158 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_constants_and_functions.py +58 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_copy_move.cpp +546 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_copy_move.py +144 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_cpp_conduit.cpp +22 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_cpp_conduit.py +183 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_cpp_conduit_traveler_bindings.h +47 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_cpp_conduit_traveler_types.h +25 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_cross_module_rtti/CMakeLists.txt +70 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_cross_module_rtti/bindings.cpp +20 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_cross_module_rtti/catch.cpp +22 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_cross_module_rtti/lib.cpp +13 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_cross_module_rtti/lib.h +31 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_cross_module_rtti/test_cross_module_rtti.cpp +50 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_custom_type_casters.cpp +217 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_custom_type_casters.py +126 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_custom_type_setup.cpp +104 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_custom_type_setup.py +79 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_docs_advanced_cast_custom.cpp +69 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_docs_advanced_cast_custom.py +40 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_docstring_options.cpp +129 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_docstring_options.py +72 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_eigen_matrix.cpp +448 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_eigen_matrix.py +839 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_eigen_tensor.cpp +18 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_eigen_tensor.inl +338 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_eigen_tensor.py +316 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_enum.cpp +149 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_enum.py +344 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_eval.cpp +118 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_eval.py +52 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_eval_call.py +5 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_exceptions.cpp +427 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_exceptions.h +13 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_exceptions.py +439 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_factory_constructors.cpp +434 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_factory_constructors.py +531 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_gil_scoped.cpp +144 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_gil_scoped.py +294 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_iostream.cpp +162 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_iostream.py +329 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_kwargs_and_defaults.cpp +331 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_kwargs_and_defaults.py +473 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_local_bindings.cpp +131 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_local_bindings.py +291 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_methods_and_attributes.cpp +788 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_methods_and_attributes.py +715 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_modules.cpp +124 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_modules.py +146 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_multiple_inheritance.cpp +341 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_multiple_inheritance.py +500 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_multiple_interpreters.py +437 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_native_enum.cpp +262 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_native_enum.py +377 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_numpy_array.cpp +616 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_numpy_array.py +749 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_numpy_dtypes.cpp +745 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_numpy_dtypes.py +464 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_numpy_scalars.cpp +63 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_numpy_scalars.py +54 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_numpy_vectorize.cpp +137 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_numpy_vectorize.py +319 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_opaque_types.cpp +77 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_opaque_types.py +64 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_operator_overloading.cpp +281 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_operator_overloading.py +161 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_pickling.cpp +191 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_pickling.py +149 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_potentially_slicing_weak_ptr.cpp +170 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_potentially_slicing_weak_ptr.py +174 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_python_multiple_inheritance.cpp +45 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_python_multiple_inheritance.py +36 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_pytorch_shared_ptr_cast_regression.cpp +62 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_pytorch_shared_ptr_cast_regression.py +25 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_pytypes.cpp +1215 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_pytypes.py +1374 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_scoped_critical_section.cpp +274 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_scoped_critical_section.py +30 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_sequences_and_iterators.cpp +600 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_sequences_and_iterators.py +307 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_smart_ptr.cpp +627 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_smart_ptr.py +370 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_standalone_enum_module.py +18 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_stl.cpp +667 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_stl.py +735 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_stl_binders.cpp +275 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_stl_binders.py +414 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_tagbased_polymorphic.cpp +150 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_tagbased_polymorphic.py +30 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_thread.cpp +108 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_thread.py +80 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_type_caster_pyobject_ptr.cpp +168 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_type_caster_pyobject_ptr.py +125 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_type_caster_std_function_specializations.cpp +46 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_type_caster_std_function_specializations.py +15 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_union.cpp +22 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_union.py +10 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_unnamed_namespace_a.cpp +37 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_unnamed_namespace_a.py +33 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_unnamed_namespace_b.cpp +13 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_unnamed_namespace_b.py +7 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_vector_unique_ptr_member.cpp +54 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_vector_unique_ptr_member.py +16 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_virtual_functions.cpp +591 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_virtual_functions.py +468 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_warnings.cpp +46 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_warnings.py +68 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_with_catch/CMakeLists.txt +64 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_with_catch/catch.cpp +175 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_with_catch/catch_skip.h +21 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_with_catch/external_module.cpp +39 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_with_catch/test_args_convert_vector.cpp +80 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_with_catch/test_argument_vector.cpp +94 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_with_catch/test_interpreter.cpp +511 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_with_catch/test_interpreter.py +16 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_with_catch/test_subinterpreter.cpp +579 -0
- pyfes-2026.4.0/third_party/pybind11/tests/test_with_catch/test_trampoline.py +18 -0
- pyfes-2026.4.0/third_party/pybind11/tests/valgrind-numpy-scipy.supp +140 -0
- pyfes-2026.4.0/third_party/pybind11/tests/valgrind-python.supp +117 -0
- pyfes-2026.4.0/third_party/pybind11/tools/FindCatch.cmake +74 -0
- pyfes-2026.4.0/third_party/pybind11/tools/FindEigen3.cmake +86 -0
- pyfes-2026.4.0/third_party/pybind11/tools/FindPythonLibsNew.cmake +320 -0
- pyfes-2026.4.0/third_party/pybind11/tools/JoinPaths.cmake +23 -0
- pyfes-2026.4.0/third_party/pybind11/tools/check-style.sh +44 -0
- pyfes-2026.4.0/third_party/pybind11/tools/cmake_uninstall.cmake.in +23 -0
- pyfes-2026.4.0/third_party/pybind11/tools/codespell_ignore_lines_from_errors.py +40 -0
- pyfes-2026.4.0/third_party/pybind11/tools/libsize.py +38 -0
- pyfes-2026.4.0/third_party/pybind11/tools/make_changelog.py +121 -0
- pyfes-2026.4.0/third_party/pybind11/tools/make_global.py +33 -0
- pyfes-2026.4.0/third_party/pybind11/tools/pybind11.pc.in +7 -0
- pyfes-2026.4.0/third_party/pybind11/tools/pybind11Common.cmake +458 -0
- pyfes-2026.4.0/third_party/pybind11/tools/pybind11Config.cmake.in +240 -0
- pyfes-2026.4.0/third_party/pybind11/tools/pybind11GuessPythonExtSuffix.cmake +94 -0
- pyfes-2026.4.0/third_party/pybind11/tools/pybind11NewTools.cmake +339 -0
- pyfes-2026.4.0/third_party/pybind11/tools/pybind11Tools.cmake +217 -0
- pyfes-2026.4.0/third_party/pybind11/tools/test-pybind11GuessPythonExtSuffix.cmake +185 -0
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
---
|
|
2
|
+
Language: Cpp
|
|
3
|
+
# BasedOnStyle: Google
|
|
4
|
+
AccessModifierOffset: -1
|
|
5
|
+
AlignAfterOpenBracket: Align
|
|
6
|
+
AlignConsecutiveMacros: false
|
|
7
|
+
AlignConsecutiveAssignments: false
|
|
8
|
+
AlignConsecutiveDeclarations: false
|
|
9
|
+
AlignEscapedNewlines: Left
|
|
10
|
+
AlignOperands: true
|
|
11
|
+
AlignTrailingComments: true
|
|
12
|
+
AllowAllArgumentsOnNextLine: true
|
|
13
|
+
AllowAllConstructorInitializersOnNextLine: true
|
|
14
|
+
AllowAllParametersOfDeclarationOnNextLine: true
|
|
15
|
+
AllowShortBlocksOnASingleLine: Never
|
|
16
|
+
AllowShortCaseLabelsOnASingleLine: false
|
|
17
|
+
AllowShortFunctionsOnASingleLine: All
|
|
18
|
+
AllowShortLambdasOnASingleLine: All
|
|
19
|
+
AllowShortIfStatementsOnASingleLine: WithoutElse
|
|
20
|
+
AllowShortLoopsOnASingleLine: true
|
|
21
|
+
AlwaysBreakAfterDefinitionReturnType: None
|
|
22
|
+
AlwaysBreakAfterReturnType: None
|
|
23
|
+
AlwaysBreakBeforeMultilineStrings: true
|
|
24
|
+
AlwaysBreakTemplateDeclarations: Yes
|
|
25
|
+
BinPackArguments: true
|
|
26
|
+
BinPackParameters: true
|
|
27
|
+
BraceWrapping:
|
|
28
|
+
AfterCaseLabel: false
|
|
29
|
+
AfterClass: false
|
|
30
|
+
AfterControlStatement: false
|
|
31
|
+
AfterEnum: false
|
|
32
|
+
AfterFunction: false
|
|
33
|
+
AfterNamespace: false
|
|
34
|
+
AfterObjCDeclaration: false
|
|
35
|
+
AfterStruct: false
|
|
36
|
+
AfterUnion: false
|
|
37
|
+
AfterExternBlock: false
|
|
38
|
+
BeforeCatch: false
|
|
39
|
+
BeforeElse: false
|
|
40
|
+
IndentBraces: false
|
|
41
|
+
SplitEmptyFunction: true
|
|
42
|
+
SplitEmptyRecord: true
|
|
43
|
+
SplitEmptyNamespace: true
|
|
44
|
+
BreakBeforeBinaryOperators: None
|
|
45
|
+
BreakBeforeBraces: Attach
|
|
46
|
+
BreakBeforeInheritanceComma: false
|
|
47
|
+
BreakInheritanceList: BeforeColon
|
|
48
|
+
BreakBeforeTernaryOperators: true
|
|
49
|
+
BreakConstructorInitializersBeforeComma: false
|
|
50
|
+
BreakConstructorInitializers: BeforeColon
|
|
51
|
+
BreakAfterJavaFieldAnnotations: false
|
|
52
|
+
BreakStringLiterals: true
|
|
53
|
+
ColumnLimit: 80
|
|
54
|
+
CommentPragmas: '^ IWYU pragma:'
|
|
55
|
+
CompactNamespaces: false
|
|
56
|
+
ConstructorInitializerAllOnOneLineOrOnePerLine: true
|
|
57
|
+
ConstructorInitializerIndentWidth: 4
|
|
58
|
+
ContinuationIndentWidth: 4
|
|
59
|
+
Cpp11BracedListStyle: true
|
|
60
|
+
DeriveLineEnding: true
|
|
61
|
+
DerivePointerAlignment: true
|
|
62
|
+
DisableFormat: false
|
|
63
|
+
ExperimentalAutoDetectBinPacking: false
|
|
64
|
+
FixNamespaceComments: true
|
|
65
|
+
ForEachMacros:
|
|
66
|
+
- foreach
|
|
67
|
+
- Q_FOREACH
|
|
68
|
+
- BOOST_FOREACH
|
|
69
|
+
IncludeBlocks: Regroup
|
|
70
|
+
IncludeCategories:
|
|
71
|
+
- Regex: '^<ext/.*\.h>'
|
|
72
|
+
Priority: 2
|
|
73
|
+
SortPriority: 0
|
|
74
|
+
- Regex: '^<.*\.h>'
|
|
75
|
+
Priority: 1
|
|
76
|
+
SortPriority: 0
|
|
77
|
+
- Regex: '^<.*'
|
|
78
|
+
Priority: 2
|
|
79
|
+
SortPriority: 0
|
|
80
|
+
- Regex: '.*'
|
|
81
|
+
Priority: 3
|
|
82
|
+
SortPriority: 0
|
|
83
|
+
IncludeIsMainRegex: '([-_](test|unittest))?$'
|
|
84
|
+
IncludeIsMainSourceRegex: ''
|
|
85
|
+
IndentCaseLabels: true
|
|
86
|
+
IndentGotoLabels: true
|
|
87
|
+
IndentPPDirectives: None
|
|
88
|
+
IndentWidth: 2
|
|
89
|
+
IndentWrappedFunctionNames: false
|
|
90
|
+
JavaScriptQuotes: Leave
|
|
91
|
+
JavaScriptWrapImports: true
|
|
92
|
+
KeepEmptyLinesAtTheStartOfBlocks: false
|
|
93
|
+
MacroBlockBegin: ''
|
|
94
|
+
MacroBlockEnd: ''
|
|
95
|
+
MaxEmptyLinesToKeep: 1
|
|
96
|
+
NamespaceIndentation: None
|
|
97
|
+
ObjCBinPackProtocolList: Never
|
|
98
|
+
ObjCBlockIndentWidth: 2
|
|
99
|
+
ObjCSpaceAfterProperty: false
|
|
100
|
+
ObjCSpaceBeforeProtocolList: true
|
|
101
|
+
PenaltyBreakAssignment: 2
|
|
102
|
+
PenaltyBreakBeforeFirstCallParameter: 1
|
|
103
|
+
PenaltyBreakComment: 300
|
|
104
|
+
PenaltyBreakFirstLessLess: 120
|
|
105
|
+
PenaltyBreakString: 1000
|
|
106
|
+
PenaltyBreakTemplateDeclaration: 10
|
|
107
|
+
PenaltyExcessCharacter: 1000000
|
|
108
|
+
PenaltyReturnTypeOnItsOwnLine: 200
|
|
109
|
+
PointerAlignment: Left
|
|
110
|
+
RawStringFormats:
|
|
111
|
+
- Language: Cpp
|
|
112
|
+
Delimiters:
|
|
113
|
+
- cc
|
|
114
|
+
- CC
|
|
115
|
+
- cpp
|
|
116
|
+
- Cpp
|
|
117
|
+
- CPP
|
|
118
|
+
- 'c++'
|
|
119
|
+
- 'C++'
|
|
120
|
+
CanonicalDelimiter: ''
|
|
121
|
+
BasedOnStyle: google
|
|
122
|
+
- Language: TextProto
|
|
123
|
+
Delimiters:
|
|
124
|
+
- pb
|
|
125
|
+
- PB
|
|
126
|
+
- proto
|
|
127
|
+
- PROTO
|
|
128
|
+
EnclosingFunctions:
|
|
129
|
+
- EqualsProto
|
|
130
|
+
- EquivToProto
|
|
131
|
+
- PARSE_PARTIAL_TEXT_PROTO
|
|
132
|
+
- PARSE_TEST_PROTO
|
|
133
|
+
- PARSE_TEXT_PROTO
|
|
134
|
+
- ParseTextOrDie
|
|
135
|
+
- ParseTextProtoOrDie
|
|
136
|
+
CanonicalDelimiter: ''
|
|
137
|
+
BasedOnStyle: google
|
|
138
|
+
ReflowComments: true
|
|
139
|
+
SortIncludes: true
|
|
140
|
+
SortUsingDeclarations: true
|
|
141
|
+
SpaceAfterCStyleCast: false
|
|
142
|
+
SpaceAfterLogicalNot: false
|
|
143
|
+
SpaceAfterTemplateKeyword: true
|
|
144
|
+
SpaceBeforeAssignmentOperators: true
|
|
145
|
+
SpaceBeforeCpp11BracedList: false
|
|
146
|
+
SpaceBeforeCtorInitializerColon: true
|
|
147
|
+
SpaceBeforeInheritanceColon: true
|
|
148
|
+
SpaceBeforeParens: ControlStatements
|
|
149
|
+
SpaceBeforeRangeBasedForLoopColon: true
|
|
150
|
+
SpaceInEmptyBlock: false
|
|
151
|
+
SpaceInEmptyParentheses: false
|
|
152
|
+
SpacesBeforeTrailingComments: 2
|
|
153
|
+
SpacesInAngles: false
|
|
154
|
+
SpacesInConditionalStatement: false
|
|
155
|
+
SpacesInContainerLiterals: true
|
|
156
|
+
SpacesInCStyleCastParentheses: false
|
|
157
|
+
SpacesInParentheses: false
|
|
158
|
+
SpacesInSquareBrackets: false
|
|
159
|
+
SpaceBeforeSquareBrackets: false
|
|
160
|
+
Standard: Auto
|
|
161
|
+
StatementMacros:
|
|
162
|
+
- Q_UNUSED
|
|
163
|
+
- QT_REQUIRE_VERSION
|
|
164
|
+
TabWidth: 8
|
|
165
|
+
UseCRLF: false
|
|
166
|
+
UseTab: Never
|
|
167
|
+
---
|
|
168
|
+
Language: Json
|
|
169
|
+
BasedOnStyle: llvm
|
|
170
|
+
IndentWidth: 4
|
|
171
|
+
...
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Bug report
|
|
3
|
+
about: Create a report to help us improve
|
|
4
|
+
title: ''
|
|
5
|
+
labels: ''
|
|
6
|
+
assignees: ''
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
**Describe the bug**
|
|
11
|
+
A clear and concise description of what the bug is.
|
|
12
|
+
|
|
13
|
+
**To Reproduce**
|
|
14
|
+
A short code example that reproduces the problem/missing feature. It should be
|
|
15
|
+
self-contained, i.e., possible to run as-is via `python myproblem.py`
|
|
16
|
+
|
|
17
|
+
```python
|
|
18
|
+
import pyfes
|
|
19
|
+
<< your code here >>
|
|
20
|
+
```
|
|
21
|
+
**Expected behavior**
|
|
22
|
+
A clear and concise description of what you expected to happen.
|
|
23
|
+
|
|
24
|
+
**pyfes/Numpy/Python version information**
|
|
25
|
+
Output from
|
|
26
|
+
```python
|
|
27
|
+
import sys, numpy, pyfes.version
|
|
28
|
+
print(pyfes.__version__)
|
|
29
|
+
print(numpy.__version__)
|
|
30
|
+
print(sys.version)
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
**Additional context**
|
|
34
|
+
Add any other context about the problem here.
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Feature request
|
|
3
|
+
about: Suggest an idea for this project
|
|
4
|
+
title: ''
|
|
5
|
+
labels: ''
|
|
6
|
+
assignees: ''
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
**Is your feature request related to a problem? Please describe.**
|
|
11
|
+
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
|
|
12
|
+
|
|
13
|
+
**Describe the solution you'd like**
|
|
14
|
+
A clear and concise description of what you want to happen.
|
|
15
|
+
|
|
16
|
+
**Describe alternatives you've considered**
|
|
17
|
+
A clear and concise description of any alternative solutions or features you've considered.
|
|
18
|
+
|
|
19
|
+
**Additional context**
|
|
20
|
+
Add any other context or screenshots about the feature request here.
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
name: CI
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: "*"
|
|
6
|
+
pull_request:
|
|
7
|
+
branches: main
|
|
8
|
+
|
|
9
|
+
permissions:
|
|
10
|
+
contents: read
|
|
11
|
+
pages: write
|
|
12
|
+
id-token: write
|
|
13
|
+
|
|
14
|
+
concurrency:
|
|
15
|
+
group: "pages"
|
|
16
|
+
cancel-in-progress: false
|
|
17
|
+
|
|
18
|
+
jobs:
|
|
19
|
+
linux:
|
|
20
|
+
name: ${{ matrix.python-version }}-posix
|
|
21
|
+
runs-on: ubuntu-latest
|
|
22
|
+
timeout-minutes: 15
|
|
23
|
+
strategy:
|
|
24
|
+
fail-fast: false
|
|
25
|
+
max-parallel: 5
|
|
26
|
+
matrix:
|
|
27
|
+
python-version: ['3.11']
|
|
28
|
+
steps:
|
|
29
|
+
- name: Checkout
|
|
30
|
+
uses: actions/checkout@v4
|
|
31
|
+
with:
|
|
32
|
+
submodules: recursive
|
|
33
|
+
lfs: true
|
|
34
|
+
fetch-depth: 0
|
|
35
|
+
fetch-tags: true
|
|
36
|
+
|
|
37
|
+
- name: Setup Miniconda
|
|
38
|
+
uses: mamba-org/setup-micromamba@v1
|
|
39
|
+
with:
|
|
40
|
+
cache-downloads: true
|
|
41
|
+
condarc: |
|
|
42
|
+
channels:
|
|
43
|
+
- conda-forge
|
|
44
|
+
create-args: |
|
|
45
|
+
python=${{ matrix.python-version }}
|
|
46
|
+
environment-name: FES
|
|
47
|
+
environment-file: conda/environment.yml
|
|
48
|
+
|
|
49
|
+
- name: Compile and Testing Python Package
|
|
50
|
+
shell: bash -l {0}
|
|
51
|
+
run: |
|
|
52
|
+
python setup.py build
|
|
53
|
+
pytest -q -ra
|
|
54
|
+
|
|
55
|
+
- name: Generate Documentation
|
|
56
|
+
shell: bash -l {0}
|
|
57
|
+
run: |
|
|
58
|
+
sphinx-build -b html docs/source docs/build
|
|
59
|
+
|
|
60
|
+
- name: Setup Pages
|
|
61
|
+
uses: actions/configure-pages@v5
|
|
62
|
+
|
|
63
|
+
- name: Upload artifact
|
|
64
|
+
uses: actions/upload-pages-artifact@v3
|
|
65
|
+
with:
|
|
66
|
+
path: docs/build
|
|
67
|
+
|
|
68
|
+
- name: Deploy to GitHub Pages
|
|
69
|
+
id: deployment
|
|
70
|
+
uses: actions/deploy-pages@v4
|
|
71
|
+
|
|
72
|
+
- name: Build C++ Library and Testing
|
|
73
|
+
shell: bash -l {0}
|
|
74
|
+
run: |
|
|
75
|
+
mkdir build
|
|
76
|
+
cd build
|
|
77
|
+
cmake .. -DFES_ENABLE_TEST=ON
|
|
78
|
+
make -j 2
|
|
79
|
+
ctest
|
|
80
|
+
|
|
81
|
+
win:
|
|
82
|
+
name: win
|
|
83
|
+
runs-on: windows-2022
|
|
84
|
+
|
|
85
|
+
steps:
|
|
86
|
+
- name: Checkout
|
|
87
|
+
uses: actions/checkout@v4
|
|
88
|
+
with:
|
|
89
|
+
submodules: recursive
|
|
90
|
+
lfs: true
|
|
91
|
+
|
|
92
|
+
- name: Setup Miniconda
|
|
93
|
+
uses: mamba-org/setup-micromamba@v1
|
|
94
|
+
with:
|
|
95
|
+
cache-downloads: true
|
|
96
|
+
condarc: |
|
|
97
|
+
channels:
|
|
98
|
+
- conda-forge
|
|
99
|
+
create-args: |
|
|
100
|
+
python=3.11
|
|
101
|
+
environment-name: FES
|
|
102
|
+
environment-file: conda/environment.yml
|
|
103
|
+
|
|
104
|
+
# - name: Test pip install from GitHub
|
|
105
|
+
# shell: bash -l {0}
|
|
106
|
+
# run: |
|
|
107
|
+
# pip install --force-reinstall "git+https://github.com/CNES/aviso-fes.git"
|
|
108
|
+
|
|
109
|
+
- name: Building Testing Python Package
|
|
110
|
+
shell: bash -l {0}
|
|
111
|
+
run: |
|
|
112
|
+
python setup.py build_ext --generator="Visual Studio 17 2022"
|
|
113
|
+
python setup.py build
|
|
114
|
+
pytest -q -ra
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
name: Publish sdist to PyPI
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
tags:
|
|
6
|
+
- '[0-9]*'
|
|
7
|
+
workflow_dispatch:
|
|
8
|
+
|
|
9
|
+
jobs:
|
|
10
|
+
build_sdist:
|
|
11
|
+
name: Build source distribution
|
|
12
|
+
runs-on: ubuntu-latest
|
|
13
|
+
steps:
|
|
14
|
+
- uses: actions/checkout@v4
|
|
15
|
+
with:
|
|
16
|
+
submodules: recursive
|
|
17
|
+
fetch-depth: 0
|
|
18
|
+
fetch-tags: true
|
|
19
|
+
|
|
20
|
+
- name: Set up Python
|
|
21
|
+
uses: actions/setup-python@v5
|
|
22
|
+
with:
|
|
23
|
+
python-version: "3.x"
|
|
24
|
+
|
|
25
|
+
- name: Build sdist
|
|
26
|
+
run: pipx run build --sdist
|
|
27
|
+
|
|
28
|
+
- uses: actions/upload-artifact@v4
|
|
29
|
+
with:
|
|
30
|
+
name: sdist
|
|
31
|
+
path: dist/*.tar.gz
|
|
32
|
+
|
|
33
|
+
detect-target:
|
|
34
|
+
name: Detect publish target
|
|
35
|
+
needs: build_sdist
|
|
36
|
+
if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags/')
|
|
37
|
+
runs-on: ubuntu-latest
|
|
38
|
+
outputs:
|
|
39
|
+
prerelease: ${{ steps.check.outputs.prerelease }}
|
|
40
|
+
steps:
|
|
41
|
+
- id: check
|
|
42
|
+
shell: bash
|
|
43
|
+
run: |
|
|
44
|
+
if [[ "${GITHUB_REF_NAME}" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
|
|
45
|
+
echo "prerelease=false" >> "$GITHUB_OUTPUT"
|
|
46
|
+
else
|
|
47
|
+
echo "prerelease=true" >> "$GITHUB_OUTPUT"
|
|
48
|
+
fi
|
|
49
|
+
|
|
50
|
+
publish-testpypi:
|
|
51
|
+
name: Publish sdist to TestPyPI
|
|
52
|
+
needs: detect-target
|
|
53
|
+
if: needs.detect-target.outputs.prerelease == 'true'
|
|
54
|
+
runs-on: ubuntu-latest
|
|
55
|
+
environment:
|
|
56
|
+
name: testpypi
|
|
57
|
+
url: https://test.pypi.org/p/pyfes
|
|
58
|
+
permissions:
|
|
59
|
+
id-token: write
|
|
60
|
+
steps:
|
|
61
|
+
- uses: actions/download-artifact@v4
|
|
62
|
+
with:
|
|
63
|
+
name: sdist
|
|
64
|
+
path: dist
|
|
65
|
+
- uses: pypa/gh-action-pypi-publish@release/v1
|
|
66
|
+
with:
|
|
67
|
+
repository-url: https://test.pypi.org/legacy/
|
|
68
|
+
|
|
69
|
+
publish-pypi:
|
|
70
|
+
name: Publish sdist to PyPI
|
|
71
|
+
needs: detect-target
|
|
72
|
+
if: needs.detect-target.outputs.prerelease == 'false'
|
|
73
|
+
runs-on: ubuntu-latest
|
|
74
|
+
environment:
|
|
75
|
+
name: pypi
|
|
76
|
+
url: https://pypi.org/p/pyfes
|
|
77
|
+
permissions:
|
|
78
|
+
id-token: write # OIDC Trusted Publishing
|
|
79
|
+
steps:
|
|
80
|
+
- uses: actions/download-artifact@v4
|
|
81
|
+
with:
|
|
82
|
+
name: sdist
|
|
83
|
+
path: dist
|
|
84
|
+
- uses: pypa/gh-action-pypi-publish@release/v1
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
name: Build and publish wheels
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
tags:
|
|
6
|
+
- '[0-9]*'
|
|
7
|
+
workflow_dispatch:
|
|
8
|
+
|
|
9
|
+
jobs:
|
|
10
|
+
build_wheels:
|
|
11
|
+
name: Wheels on ${{ matrix.os }}
|
|
12
|
+
runs-on: ${{ matrix.os }}
|
|
13
|
+
strategy:
|
|
14
|
+
fail-fast: false
|
|
15
|
+
matrix:
|
|
16
|
+
include:
|
|
17
|
+
- os: ubuntu-latest # Linux x86_64 (manylinux_2_28)
|
|
18
|
+
- os: ubuntu-24.04-arm # Linux aarch64 (manylinux_2_28)
|
|
19
|
+
- os: macos-latest # macOS arm64
|
|
20
|
+
cibw_archs_macos: "arm64"
|
|
21
|
+
- os: windows-2025 # Windows x86_64
|
|
22
|
+
|
|
23
|
+
steps:
|
|
24
|
+
- uses: actions/checkout@v4
|
|
25
|
+
with:
|
|
26
|
+
submodules: recursive
|
|
27
|
+
fetch-depth: 0
|
|
28
|
+
fetch-tags: true
|
|
29
|
+
|
|
30
|
+
# Boost (≥ 1.79) and Eigen (≥ 3.4) are required on all platforms.
|
|
31
|
+
# Linux: handled inside the manylinux container via before-all (pyproject.toml).
|
|
32
|
+
# macOS: handled via brew in before-all (pyproject.toml).
|
|
33
|
+
# Windows: micromamba is set up here so the conda prefix is available
|
|
34
|
+
# before cibuildwheel runs.
|
|
35
|
+
- name: Install Boost and Eigen headers (Windows)
|
|
36
|
+
if: runner.os == 'Windows'
|
|
37
|
+
uses: mamba-org/setup-micromamba@v1
|
|
38
|
+
with:
|
|
39
|
+
cache-downloads: true
|
|
40
|
+
condarc: |
|
|
41
|
+
channels:
|
|
42
|
+
- conda-forge
|
|
43
|
+
create-args: "libboost-headers eigen"
|
|
44
|
+
environment-name: build-deps
|
|
45
|
+
generate-run-shell: false
|
|
46
|
+
init-shell: none
|
|
47
|
+
|
|
48
|
+
- name: Export build prefix to GITHUB_ENV (Windows)
|
|
49
|
+
if: runner.os == 'Windows'
|
|
50
|
+
shell: bash
|
|
51
|
+
run: |
|
|
52
|
+
# Use forward slashes: cibuildwheel runs CIBW_ENVIRONMENT_WINDOWS
|
|
53
|
+
# through shlex, which would eat Windows backslashes.
|
|
54
|
+
prefix="${MAMBA_ROOT_PREFIX//\\//}/envs/build-deps/Library"
|
|
55
|
+
echo "BUILD_PREFIX=${prefix}" >> "$GITHUB_ENV"
|
|
56
|
+
|
|
57
|
+
- name: Build wheels
|
|
58
|
+
uses: pypa/cibuildwheel@v3.0
|
|
59
|
+
env:
|
|
60
|
+
# Windows: point CMake at the conda-forge Boost and Eigen headers.
|
|
61
|
+
CIBW_ENVIRONMENT_WINDOWS: >-
|
|
62
|
+
CMAKE_PREFIX_PATH="${{ env.BUILD_PREFIX }}"
|
|
63
|
+
# macOS: arm64 only (free Intel runners are deprecated).
|
|
64
|
+
CIBW_ARCHS_MACOS: ${{ matrix.cibw_archs_macos }}
|
|
65
|
+
# Sanity-check every built wheel imports and exposes its version.
|
|
66
|
+
CIBW_TEST_COMMAND: >-
|
|
67
|
+
python -c "import pyfes; print(pyfes.__version__)"
|
|
68
|
+
|
|
69
|
+
- uses: actions/upload-artifact@v4
|
|
70
|
+
with:
|
|
71
|
+
name: cibw-wheels-${{ matrix.os }}
|
|
72
|
+
path: ./wheelhouse/*.whl
|
|
73
|
+
|
|
74
|
+
# Pre-release tags (e.g. 2026.4.0rc1, 2026.4.0.dev1) go to TestPyPI;
|
|
75
|
+
# plain stable tags (X.Y.Z) go to real PyPI.
|
|
76
|
+
detect-target:
|
|
77
|
+
name: Detect publish target
|
|
78
|
+
needs: build_wheels
|
|
79
|
+
if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags/')
|
|
80
|
+
runs-on: ubuntu-latest
|
|
81
|
+
outputs:
|
|
82
|
+
prerelease: ${{ steps.check.outputs.prerelease }}
|
|
83
|
+
steps:
|
|
84
|
+
- id: check
|
|
85
|
+
shell: bash
|
|
86
|
+
run: |
|
|
87
|
+
if [[ "${GITHUB_REF_NAME}" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
|
|
88
|
+
echo "prerelease=false" >> "$GITHUB_OUTPUT"
|
|
89
|
+
else
|
|
90
|
+
echo "prerelease=true" >> "$GITHUB_OUTPUT"
|
|
91
|
+
fi
|
|
92
|
+
|
|
93
|
+
publish-testpypi:
|
|
94
|
+
name: Publish wheels to TestPyPI
|
|
95
|
+
needs: detect-target
|
|
96
|
+
if: needs.detect-target.outputs.prerelease == 'true'
|
|
97
|
+
runs-on: ubuntu-latest
|
|
98
|
+
environment:
|
|
99
|
+
name: testpypi
|
|
100
|
+
url: https://test.pypi.org/p/pyfes
|
|
101
|
+
permissions:
|
|
102
|
+
id-token: write
|
|
103
|
+
steps:
|
|
104
|
+
- uses: actions/download-artifact@v4
|
|
105
|
+
with:
|
|
106
|
+
pattern: cibw-wheels-*
|
|
107
|
+
path: dist
|
|
108
|
+
merge-multiple: true
|
|
109
|
+
- uses: pypa/gh-action-pypi-publish@release/v1
|
|
110
|
+
with:
|
|
111
|
+
repository-url: https://test.pypi.org/legacy/
|
|
112
|
+
|
|
113
|
+
publish-pypi:
|
|
114
|
+
name: Publish wheels to PyPI
|
|
115
|
+
needs: detect-target
|
|
116
|
+
if: needs.detect-target.outputs.prerelease == 'false'
|
|
117
|
+
runs-on: ubuntu-latest
|
|
118
|
+
environment:
|
|
119
|
+
name: pypi
|
|
120
|
+
url: https://pypi.org/p/pyfes
|
|
121
|
+
permissions:
|
|
122
|
+
id-token: write # required for OIDC Trusted Publishing
|
|
123
|
+
steps:
|
|
124
|
+
- uses: actions/download-artifact@v4
|
|
125
|
+
with:
|
|
126
|
+
pattern: cibw-wheels-*
|
|
127
|
+
path: dist
|
|
128
|
+
merge-multiple: true
|
|
129
|
+
- uses: pypa/gh-action-pypi-publish@release/v1
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
# Byte-compiled / optimized / DLL files
|
|
2
|
+
__pycache__/
|
|
3
|
+
*.py[cod]
|
|
4
|
+
*$py.class
|
|
5
|
+
|
|
6
|
+
# C extensions
|
|
7
|
+
*.so
|
|
8
|
+
|
|
9
|
+
# Distribution / packaging
|
|
10
|
+
.Python
|
|
11
|
+
build/
|
|
12
|
+
develop-eggs/
|
|
13
|
+
dist/
|
|
14
|
+
downloads/
|
|
15
|
+
eggs/
|
|
16
|
+
.eggs/
|
|
17
|
+
lib/
|
|
18
|
+
lib64/
|
|
19
|
+
parts/
|
|
20
|
+
sdist/
|
|
21
|
+
var/
|
|
22
|
+
wheels/
|
|
23
|
+
*.egg-info/
|
|
24
|
+
.installed.cfg
|
|
25
|
+
*.egg
|
|
26
|
+
MANIFEST
|
|
27
|
+
|
|
28
|
+
# PyInstaller
|
|
29
|
+
# Usually these files are written by a python script from a template
|
|
30
|
+
# before PyInstaller builds the exe, so as to inject date/other infos into it.
|
|
31
|
+
*.manifest
|
|
32
|
+
*.spec
|
|
33
|
+
|
|
34
|
+
# Installer logs
|
|
35
|
+
pip-log.txt
|
|
36
|
+
pip-delete-this-directory.txt
|
|
37
|
+
|
|
38
|
+
# Unit test / coverage reports
|
|
39
|
+
htmlcov/
|
|
40
|
+
junit/
|
|
41
|
+
.tox/
|
|
42
|
+
.coverage
|
|
43
|
+
.coverage.*
|
|
44
|
+
.cache
|
|
45
|
+
nosetests.xml
|
|
46
|
+
coverage.xml
|
|
47
|
+
*.cover
|
|
48
|
+
.hypothesis/
|
|
49
|
+
.pytest_cache/
|
|
50
|
+
|
|
51
|
+
# Translations
|
|
52
|
+
*.mo
|
|
53
|
+
*.pot
|
|
54
|
+
|
|
55
|
+
# Django stuff:
|
|
56
|
+
*.log
|
|
57
|
+
local_settings.py
|
|
58
|
+
db.sqlite3
|
|
59
|
+
|
|
60
|
+
# Flask stuff:
|
|
61
|
+
instance/
|
|
62
|
+
.webassets-cache
|
|
63
|
+
|
|
64
|
+
# Scrapy stuff:
|
|
65
|
+
.scrapy
|
|
66
|
+
|
|
67
|
+
# Sphinx documentation
|
|
68
|
+
docs/source/_build/
|
|
69
|
+
docs/source/generated/
|
|
70
|
+
|
|
71
|
+
# PyBuilder
|
|
72
|
+
target/
|
|
73
|
+
|
|
74
|
+
# Jupyter Notebook
|
|
75
|
+
.ipynb_checkpoints
|
|
76
|
+
|
|
77
|
+
# pyenv
|
|
78
|
+
.python-version
|
|
79
|
+
|
|
80
|
+
# celery beat schedule file
|
|
81
|
+
celerybeat-schedule
|
|
82
|
+
|
|
83
|
+
# SageMath parsed files
|
|
84
|
+
*.sage.py
|
|
85
|
+
|
|
86
|
+
# Environments
|
|
87
|
+
.env
|
|
88
|
+
.venv
|
|
89
|
+
env/
|
|
90
|
+
venv/
|
|
91
|
+
ENV/
|
|
92
|
+
env.bak/
|
|
93
|
+
venv.bak/
|
|
94
|
+
|
|
95
|
+
# Spyder project settings
|
|
96
|
+
.spyderproject
|
|
97
|
+
.spyproject
|
|
98
|
+
|
|
99
|
+
# Rope project settings
|
|
100
|
+
.ropeproject
|
|
101
|
+
|
|
102
|
+
# mkdocs documentation
|
|
103
|
+
/site
|
|
104
|
+
|
|
105
|
+
# mypy
|
|
106
|
+
.mypy_cache/
|
|
107
|
+
|
|
108
|
+
# VSCode stuff:
|
|
109
|
+
.vscode/
|
|
110
|
+
|
|
111
|
+
# Generated files
|
|
112
|
+
src/pyfes/version.py
|
|
113
|
+
include/fes/version.hpp
|
|
114
|
+
docs/source/auto_examples
|
|
115
|
+
docs/source/sg_execution_times.rst
|
|
116
|
+
|
|
117
|
+
# macOS creates .DS_Store files in directories to store custom attributes of a
|
|
118
|
+
# folder. These files are not needed in the repository and can be ignored.
|
|
119
|
+
# More info: https://support.apple.com/en-us/HT201236
|
|
120
|
+
.DS_Store
|
|
121
|
+
|
|
122
|
+
# Test dataset directory downloaded from osf.io
|
|
123
|
+
tests/python/dataset
|