From 3e6d0487903dc2224197360216fa3d6787b71ad4 Mon Sep 17 00:00:00 2001 From: paugier Date: Sun, 28 Jan 2024 22:22:48 +0100 Subject: [PATCH] Notes about plugins + fix CI Windows --- plugins/README.md | 11 +++++++++-- pyproject.toml | 3 +++ tests/test_2d.py | 2 +- tests/test_3d.py | 2 +- 4 files changed, 14 insertions(+), 4 deletions(-) diff --git a/plugins/README.md b/plugins/README.md index 6d95f73..9038375 100644 --- a/plugins/README.md +++ b/plugins/README.md @@ -5,10 +5,17 @@ Directory containing the plugins, i.e. Python packages declaring the We should have -- [x] fluidfft-mpi4pyfft +- [x] fluidfft-mpi4pyfft (cannot be tested because mpi4py-fft installation fails) - [ ] fluidfft-fftw - [ ] fluidfft-mpi_with_fftw - [ ] fluidfft-fftwmpi - [ ] fluidfft-p3dfft - [ ] fluidfft-pfft -- [ ] fluidfft-cuda (?) +- [ ] fluidfft-pyvkfft (https://pyvkfft.readthedocs.io) + +Currently, we have only one tested plugin (fluidfft-pyfftw), which was written to +design and test the plugin machinery. However, I (PA) think that this (pure Python) +code will have to go back in fluidfft. Pyfftw can just be an optional dependency +for fluidfft. + +TODO: When we have other plugins, move back the code using pyfftw inside fluidfft. diff --git a/pyproject.toml b/pyproject.toml index 509c5f7..aebf0ba 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -54,6 +54,9 @@ fluidfft-bench = "fluidfft.bench:run" fluidfft-bench-analysis = "fluidfft.bench_analysis:run" [project.entry-points."fluidfft.plugins"] +# TODO: uncomment when code using pyfftw is back in fluidfft +# "fft2d.with_pyfftw" = "fluidfft.fft2d.with_pyfftw" +# "fft3d.with_pyfftw" = "fluidfft.fft3d.with_pyfftw" "fft2d.with_dask" = "fluidfft.fft2d.with_dask" # should be in fluidfft-fftw diff --git a/tests/test_2d.py b/tests/test_2d.py index 0843851..10ff8e3 100644 --- a/tests/test_2d.py +++ b/tests/test_2d.py @@ -23,7 +23,7 @@ def test_get_classes(): nb_proc = mpi.nb_proc -methods_seq = ["fftw1d", "fftw2d", "cufft"] +methods_seq = ["fftw1d", "fftw2d", "cufft", "pyfftw"] methods_seq = ["fft2d.with_" + method for method in methods_seq] classes_seq = { method: import_fft_class(method, raise_import_error=False) diff --git a/tests/test_3d.py b/tests/test_3d.py index a5c0b37..fc9c81a 100644 --- a/tests/test_3d.py +++ b/tests/test_3d.py @@ -19,7 +19,7 @@ def test_get_classes(): get_classes_mpi() -methods_seq = ["fftw3d"] +methods_seq = ["fftw3d", "pyfftw"] methods_seq = ["fft3d.with_" + method for method in methods_seq] classes_seq = { method: import_fft_class(method, raise_import_error=False)