@@ -247,26 +247,35 @@ doc = { features = ["doc", "interface", "application"] }
247247# -> Add interfaced packages as well
248248lint = { features = [" lint" , " interface" ] }
249249
250- # Editable install — re-runs only when a Cython or Rust source file changes
251- [tool .pixi .tasks ._pip-install-editable ]
250+ [tool .pixi .tasks ._pip-install-rust ]
252251cmd = " python -m pip install -e ."
253- # Editable install only need to re-run when a Cython or Rust source file changes
254- inputs = [" src/**/*.pyx" , " src/**/*.pxd" , " src/**/*.rs" , " Cargo.toml" , " pyproject.toml" ]
252+ env = { BIOTITE_OMIT_CYTHON = " 1" }
253+ inputs = [" src/**/*.rs" , " Cargo.toml" , " pyproject.toml" ]
254+
255+ [tool .pixi .tasks ._pip-install-cython ]
256+ cmd = " python -m pip install -e ."
257+ env = { BIOTITE_OMIT_RUST = " 1" }
258+ inputs = [" src/**/*.pyx" , " src/**/*.pxd" , " pyproject.toml" ]
259+
260+ [tool .pixi .tasks ._pip-install ]
261+ cmd = " python -m pip install -e ."
262+ env = { BIOTITE_OMIT_CYTHON = " 1" , BIOTITE_OMIT_RUST = " 1" }
263+ depends-on = [" _pip-install-rust" , " _pip-install-cython" ]
255264
256265[tool .pixi .tasks ._current-date ]
257266# Writes the current ISO year-month into a marker file
258267cmd = " date +%Y-%m > .date"
259268
260269[tool .pixi .tasks ._setup-ccd ]
261270cmd = " python -m biotite.setup_ccd"
262- depends-on = [" _pip-install-editable " , " _current-date" ]
271+ depends-on = [" _pip-install" , " _current-date" ]
263272# Cached: only re-runs once per month
264273inputs = [" .date" ]
265274outputs = [" src/biotite/structure/info/components.bcif" ]
266275
267276[tool .pixi .tasks .install ]
268277cmd = " true"
269- depends-on = [" _pip-install-editable " , " _setup-ccd" ]
278+ depends-on = [" _pip-install" , " _setup-ccd" ]
270279description = " Install Biotite in editable mode"
271280
272281[tool .pixi .tasks ._bundle-licenses ]
@@ -296,7 +305,7 @@ description = "Run the test suite"
296305_ruff-check = { cmd = " ruff check" , default-environment = " lint" }
297306_ruff-format-check = { cmd = " ruff format --diff" , default-environment = " lint" }
298307# `pyright` complains if it does not see Biotite's extension modules
299- _pyright = { cmd = " pyright" , depends-on = [" _pip-install-editable " ], default-environment = " lint" }
308+ _pyright = { cmd = " pyright" , depends-on = [" _pip-install" ], default-environment = " lint" }
300309_numpydoc = { cmd = " numpydoc lint src/biotite/**/*.py" , default-environment = " lint" }
301310_cargo-fmt-check = { cmd = " cargo fmt --check" , default-environment = " lint" }
302311_cargo-clippy = { cmd = " cargo clippy -- -Dwarnings" , default-environment = " lint" }
0 commit comments