Meson und distutils Arbeitsweisen#

Alte Arbeitsabläufe (numpy.distutils basiert)

Die Datei runtests.py wurde in Commit 0f73f92255253ec5dff2de5ca45d8d3bdda03f92 [^1^_] entfernt.

  1. python runtests.py

  2. python setup.py build_ext -i + export PYTHONPATH=/home/username/path/to/scipy/reporoot (und dann reinen Python-Code in SciPy bearbeiten und mit python some_script.py ausführen).

  3. python setup.py develop - dies ist ähnlich zu (2), außer dass der In-Place-Build dauerhaft in der Umgebung sichtbar gemacht wird.

  4. python setup.py bdist_wheel + pip install dist/scipy*.whl - baut ein Wheel in der aktuellen Umgebung (d.h. verwendet installiertes numpy usw.) und installiert es.

  5. pip install . - baut ein Wheel in einer isolierten Build-Umgebung gegen Abhängigkeiten in pyproject.toml und installiert es. Hinweis: Seien Sie vorsichtig, dies ist normalerweise nicht der richtige Befehl für Entwicklungsinstallationen - typischerweise möchten Sie (4) oder pip install . -v --no-build-isolation verwenden.

Neue Arbeitsabläufe (Meson und meson-python basiert)

  1. python dev.py

  2. pip install -e . --no-build-isolation (siehe die meson-python Dokumentation)

  3. dasselbe wie (2)

  4. python -m build --no-isolation + pip install dist/scipy*.whl - siehe pypa/build.

  5. pip install .

[^1^_]: [Commit 0f73f92255253ec5dff2de5ca45d8d3bdda03f92 auf GitHub](scipy/scipy).