diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index bc76b566..8601c4a7 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -110,7 +110,7 @@ report_coverage: - coverage report -doc:build: +pages: stage: doc needs: - job: "CI image" @@ -122,7 +122,7 @@ doc:build: - . .venv/bin/activate - pip install fluidfft - pdm install -G doc -G fft -G test --no-self - - pip install . --config-settings=setup-args=-Dtransonic-backend=python + - pip install . --config-settings=setup-args=-Dtransonic-backend=python --no-deps - pdm run xvfb-run --auto-servernum sphinx-build -b html -d doc/_build/doctrees doc doc/_build/html - mkdir -p public/$CI_COMMIT_REF_NAME - rsync -rvc --delete doc/_build/html/* public/$CI_COMMIT_REF_NAME/ diff --git a/Makefile b/Makefile index 267752d4..ce6a37d8 100644 --- a/Makefile +++ b/Makefile @@ -7,7 +7,7 @@ MPI_NUM_PROCS ?= 2 develop: pdm install --no-self - pdm run pip install -e . --no-build-isolation + pdm run pip install -e . --no-build-isolation --no-deps dist: pip install build diff --git a/doc/build-from-source.md b/doc/build-from-source.md index d6bcb6f0..92cf144e 100644 --- a/doc/build-from-source.md +++ b/doc/build-from-source.md @@ -162,7 +162,7 @@ users. ##### Install PDM A first step is to install [PDM] as an external independant application. I (Pierre -Augier) usually use \[pipx\] for that but +Augier) usually use [pipx] for that but [there are other methods](https://pdm-project.org/latest/#installation). ```sh @@ -173,11 +173,19 @@ pipx install pdm -U Installing in editable mode is a bit particular with Meson, since all build dependencies have to be installed in the main virtual environment, i.e. editable installations are incompatible with isolated builds! Fortunatelly, it's not too -difficult with [PDM]: +difficult with [PDM]. From the root directory of the repository, just run: ```sh pdm install --no-self -pdm run pip install -e . --no-build-isolation +``` + +This last command creates a virtual environment and install all build and runtime +dependencies. You can then activate this environment and build/install Fluidsim +with: + +```sh +. .venv/bin/activate +pip install -e . --no-build-isolation --no-deps ``` ### Python installed with conda/mamba/conda-forge @@ -229,6 +237,7 @@ https://meson-python.readthedocs.io/en/latest/how-to-guides/editable-installs.ht [nox]: https://nox.thea.codes [pdm]: https://pdm-project.org [pip]: https://pip.pypa.io +[pipx]: https://github.com/pypa/pipx [pytest]: https://docs.pytest.org [pythran]: https://pythran.readthedocs.io [transonic]: https://transonic.readthedocs.io diff --git a/noxfile.py b/noxfile.py index 9322eb70..54a704fb 100644 --- a/noxfile.py +++ b/noxfile.py @@ -14,7 +14,7 @@ def validate_code(session): def test_without_fft_and_pythran(session): command = "pdm install -G dev -G test -G mpi -G scipy --no-self" session.run_always(*command.split(), external=True) - session.install(".", "--config-settings=setup-args=-Dtransonic-backend=python") + session.install(".", "--config-settings=setup-args=-Dtransonic-backend=python", "--no-deps") session.run( "make", "_tests_coverage", @@ -30,6 +30,6 @@ def test_with_fft_and_pythran(session): command = "pdm install -G dev -G test -G fft -G mpi -G scipy --no-self" session.run_always(*command.split(), external=True) - session.install(".") + session.install(".", "--no-deps") session.run("make", "_tests_coverage", external=True)