Skip to content

Commit

Permalink
Merge pull request #1976 from kif/drop_setup.py
Browse files Browse the repository at this point in the history
Drop setup.py
  • Loading branch information
kif authored Oct 11, 2023
2 parents 7efc43f + a89ec1d commit 97b8941
Show file tree
Hide file tree
Showing 523 changed files with 270 additions and 1,953 deletions.
12 changes: 8 additions & 4 deletions doc/source/changelog.rst
Original file line number Diff line number Diff line change
@@ -1,14 +1,18 @@
:Author: Jérôme Kieffer
:Date: 29/09/2023
:Date: 10/10/2023
:Keywords: changelog

Change-log of versions
======================

2023.XX
--------
2023.10 XX/10/2023
------------------
- Possibility to integrate in 2D any second dimension, offers the qx/qy integration among many others
- Support for Detris Pilatus4 detector both with Si and CdTe sensors (thanks to Max Burian)
- Several new units have been added
- Drop of `setup.py` the build system based on distutils/numpy.distutils/setuptools. Use meson-python.
- Support for Python 3.7-3.12
- Move the sources of the code into `src` directory

2023.09 08/09/2023
------------------
Expand All @@ -22,7 +26,7 @@ Change-log of versions
- Updated notebook (addresses API changes)

2023.08 30/08/2023 BUGGY, DO NOT USE !!!
------------------
----------------------------------------
- Minor release, mostly bug-fixes. 87 commits.
- fix mal-formed headers in 1D ASCII export
- Debian packaging without setup.py (at all)
Expand Down
66 changes: 28 additions & 38 deletions doc/source/coverage.rst
Original file line number Diff line number Diff line change
@@ -1,33 +1,33 @@
Test coverage report for pyFAI
==============================

Measured on *pyFAI* version 2023.9.0, 08/09/2023
Measured on *pyFAI* version 2023.10.0-dev0, 10/10/2023

.. csv-table:: Test suite coverage
:header: "Name", "Stmts", "Exec", "Cover"
:widths: 35, 8, 8, 8

"__init__.py", "44", "27", "61.4 %"
"_version.py", "63", "47", "74.6 %"
"__init__.py", "40", "26", "65.0 %"
"_version.py", "63", "52", "82.5 %"
"average.py", "495", "356", "71.9 %"
"azimuthalIntegrator.py", "1737", "1156", "66.6 %"
"azimuthalIntegrator.py", "1753", "1166", "66.5 %"
"blob_detection.py", "506", "191", "37.7 %"
"calibrant.py", "462", "369", "79.9 %"
"containers.py", "444", "404", "91.0 %"
"containers.py", "465", "423", "91.0 %"
"control_points.py", "360", "136", "37.8 %"
"diffmap.py", "420", "57", "13.6 %"
"directories.py", "21", "16", "76.2 %"
"distortion.py", "605", "387", "64.0 %"
"geometryRefinement.py", "572", "291", "50.9 %"
"goniometer.py", "566", "340", "60.1 %"
"grid.py", "36", "15", "41.7 %"
"load_integrators.py", "162", "117", "72.2 %"
"load_integrators.py", "164", "119", "72.6 %"
"massif.py", "239", "196", "82.0 %"
"method_registry.py", "247", "213", "86.2 %"
"multi_geometry.py", "162", "133", "82.1 %"
"parallax.py", "249", "211", "84.7 %"
"spline.py", "427", "252", "59.0 %"
"units.py", "111", "104", "93.7 %"
"units.py", "130", "125", "96.2 %"
"worker.py", "484", "289", "59.7 %"
"app/__init__.py", "7", "7", "100.0 %"
"app/average.py", "176", "35", "19.9 %"
Expand All @@ -51,7 +51,7 @@ Measured on *pyFAI* version 2023.9.0, 08/09/2023
"detectors/__init__.py", "24", "24", "100.0 %"
"detectors/_adsc.py", "77", "77", "100.0 %"
"detectors/_common.py", "775", "552", "71.2 %"
"detectors/_dectris.py", "353", "242", "68.6 %"
"detectors/_dectris.py", "398", "286", "71.9 %"
"detectors/_esrf.py", "96", "80", "83.3 %"
"detectors/_hexagonal.py", "72", "69", "95.8 %"
"detectors/_imxpad.py", "388", "252", "64.9 %"
Expand All @@ -60,14 +60,14 @@ Measured on *pyFAI* version 2023.9.0, 08/09/2023
"detectors/_psi.py", "187", "110", "58.8 %"
"detectors/_rayonix.py", "260", "225", "86.5 %"
"detectors/_xspectrum.py", "51", "48", "94.1 %"
"engines/CSC_engine.py", "205", "133", "64.9 %"
"engines/CSR_engine.py", "198", "192", "97.0 %"
"engines/CSC_engine.py", "207", "139", "67.1 %"
"engines/CSR_engine.py", "200", "194", "97.0 %"
"engines/__init__.py", "19", "19", "100.0 %"
"engines/histogram_engine.py", "92", "86", "93.5 %"
"engines/preproc.py", "109", "78", "71.6 %"
"engines/histogram_engine.py", "94", "87", "92.6 %"
"engines/preproc.py", "109", "92", "84.4 %"
"ext/__init__.py", "3", "3", "100.0 %"
"geometry/__init__.py", "9", "9", "100.0 %"
"geometry/core.py", "1240", "1018", "82.1 %"
"geometry/core.py", "1270", "1049", "82.6 %"
"geometry/cxi.py", "1", "1", "100.0 %"
"geometry/fit2d.py", "114", "103", "90.4 %"
"gui/ApplicationContext.py", "107", "52", "48.6 %"
Expand All @@ -77,7 +77,7 @@ Measured on *pyFAI* version 2023.9.0, 08/09/2023
"gui/__init__.py", "4", "4", "100.0 %"
"gui/cli_calibration.py", "1579", "104", "6.6 %"
"gui/diffmap_widget.py", "371", "63", "17.0 %"
"gui/matplotlib.py", "33", "26", "78.8 %"
"gui/matplotlib.py", "33", "25", "75.8 %"
"gui/mpl_calib.py", "241", "40", "16.6 %"
"gui/mpl_calib_qt.py", "49", "21", "42.9 %"
"gui/peak_picker.py", "300", "108", "36.0 %"
Expand All @@ -98,7 +98,7 @@ Measured on *pyFAI* version 2023.9.0, 08/09/2023
"gui/helper/__init__.py", "4", "4", "100.0 %"
"gui/helper/model_transform.py", "113", "16", "14.2 %"
"gui/jupyter/__init__.py", "1", "1", "100.0 %"
"gui/jupyter/_plot.py", "91", "15", "16.5 %"
"gui/jupyter/_plot.py", "94", "15", "16.0 %"
"gui/jupyter/calib.py", "92", "24", "26.1 %"
"gui/model/AbstractModel.py", "35", "30", "85.7 %"
"gui/model/CalibrantModel.py", "19", "17", "89.5 %"
Expand All @@ -125,13 +125,12 @@ Measured on *pyFAI* version 2023.9.0, 08/09/2023
"gui/tasks/AbstractCalibrationTask.py", "79", "68", "86.1 %"
"gui/tasks/ExperimentTask.py", "322", "232", "72.0 %"
"gui/tasks/GeometryTask.py", "797", "372", "46.7 %"
"gui/tasks/IntegrationTask.py", "772", "300", "38.9 %"
"gui/tasks/IntegrationTask.py", "776", "300", "38.7 %"
"gui/tasks/MaskTask.py", "221", "143", "64.7 %"
"gui/tasks/PeakPickingTask.py", "1356", "586", "43.2 %"
"gui/tasks/__init__.py", "4", "4", "100.0 %"
"gui/test/__init__.py", "53", "36", "67.9 %"
"gui/utils/FilterBuilder.py", "44", "14", "31.8 %"
"gui/utils/ProxyAction.py", "66", "21", "31.8 %"
"gui/utils/ProxyAction.py", "67", "21", "31.3 %"
"gui/utils/__init__.py", "34", "14", "41.2 %"
"gui/utils/colorutils.py", "47", "6", "12.8 %"
"gui/utils/eventutils.py", "71", "39", "54.9 %"
Expand All @@ -140,9 +139,8 @@ Measured on *pyFAI* version 2023.9.0, 08/09/2023
"gui/utils/timeutils.py", "12", "10", "83.3 %"
"gui/utils/tree.py", "118", "25", "21.2 %"
"gui/utils/units.py", "76", "66", "86.8 %"
"gui/utils/unitutils.py", "56", "8", "14.3 %"
"gui/utils/unitutils.py", "54", "8", "14.8 %"
"gui/utils/validators.py", "89", "83", "93.3 %"
"gui/utils/test/__init__.py", "9", "9", "100.0 %"
"gui/widgets/AdvancedComboBox.py", "66", "56", "84.8 %"
"gui/widgets/AdvancedSpinBox.py", "20", "11", "55.0 %"
"gui/widgets/CalibrantPreview.py", "108", "99", "91.7 %"
Expand Down Expand Up @@ -173,9 +171,7 @@ Measured on *pyFAI* version 2023.9.0, 08/09/2023
"gui/widgets/model/CalibrantItemModel.py", "41", "35", "85.4 %"
"gui/widgets/model/DetectorFilterProxyModel.py", "26", "25", "96.2 %"
"gui/widgets/model/__init__.py", "4", "4", "100.0 %"
"gui/widgets/test/TestQuantityEdit.py", "71", "69", "97.2 %"
"gui/widgets/test/__init__.py", "16", "14", "87.5 %"
"io/__init__.py", "562", "364", "64.8 %"
"io/__init__.py", "565", "365", "64.6 %"
"io/_json.py", "15", "12", "80.0 %"
"io/image.py", "24", "20", "83.3 %"
"io/integration_config.py", "138", "124", "89.9 %"
Expand All @@ -184,22 +180,16 @@ Measured on *pyFAI* version 2023.9.0, 08/09/2023
"io/sparse_frame.py", "153", "24", "15.7 %"
"io/spots.py", "210", "139", "66.2 %"
"opencl/OCLFullSplit.py", "199", "24", "12.1 %"
"opencl/__init__.py", "32", "25", "78.1 %"
"opencl/azim_csr.py", "531", "395", "74.4 %"
"opencl/azim_hist.py", "471", "331", "70.3 %"
"opencl/azim_lut.py", "330", "244", "73.9 %"
"opencl/__init__.py", "40", "33", "82.5 %"
"opencl/azim_csr.py", "564", "405", "71.8 %"
"opencl/azim_hist.py", "472", "332", "70.3 %"
"opencl/azim_lut.py", "329", "246", "74.8 %"
"opencl/ocl_hist_pixelsplit.py", "223", "27", "12.1 %"
"opencl/peak_finder.py", "472", "366", "77.5 %"
"opencl/preproc.py", "208", "148", "71.2 %"
"opencl/peak_finder.py", "474", "368", "77.6 %"
"opencl/preproc.py", "224", "172", "76.8 %"
"opencl/sort.py", "282", "223", "79.1 %"
"opencl/test/__init__.py", "23", "23", "100.0 %"
"resources/__init__.py", "31", "20", "64.5 %"
"test/__init__.py", "33", "4", "12.1 %"
"third_party/__init__.py", "1", "1", "100.0 %"
"third_party/transformations.py", "7", "5", "71.4 %"
"third_party/_local/__init__.py", "4", "4", "100.0 %"
"third_party/_local/transformations.py", "713", "77", "10.8 %"
"utils/__init__.py", "129", "78", "60.5 %"
"utils/__init__.py", "129", "77", "59.7 %"
"utils/bayes.py", "100", "67", "67.0 %"
"utils/callback.py", "14", "11", "78.6 %"
"utils/decorators.py", "72", "70", "97.2 %"
Expand All @@ -211,7 +201,7 @@ Measured on *pyFAI* version 2023.9.0, 08/09/2023
"utils/mathutil.py", "452", "314", "69.5 %"
"utils/multiprocessing.py", "18", "13", "72.2 %"
"utils/orderedset.py", "54", "13", "24.1 %"
"utils/shell.py", "55", "46", "83.6 %"
"utils/shell.py", "55", "50", "90.9 %"
"utils/stringutil.py", "74", "67", "90.5 %"

"pyFAI total", "36535", "20016", "54.8 %"
"pyFAI total", "35808", "19978", "55.8 %"
15 changes: 10 additions & 5 deletions doc/source/operations/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -41,17 +41,18 @@ by may impair performances or prevent tools from properly working:
Build dependencies:
-------------------

PyFAI v2023.01 intoduces a new build system based on meson with the following requirements:
PyFAI v2023.01 intoduced a new build system based on `meson` with the following requirements:

* meson (>=0.64)
* meson-python (>=0.11)
* git
* meson (>=0.64)
* ninja

The former build system was using `setup.py` files, based on setuptools and numpy.distutils.
The later is deprecated and will stop working in python 3.12.
Those files remain available but unmaintained and will be removed in a future release.
The later is deprecated and will stop working in python 3.12 and has been removed with pyFAI v2023.10.
The new build system assumes the code

In addition to the build tools, pyFAI needs a C/C++ compiler to build extensions and cython_ (>0.25) to generate those C/C++ files.
In addition to the build tools, pyFAI needs a C/C++ compiler to build extensions and cython_ (>0.29) to generate those C/C++ files.
The following compiler have been successfully tested:

* Linux: `gcc` and `clang` (both support OpenMP)
Expand All @@ -66,13 +67,17 @@ Building procedure

.. code-block:: shell
git clone https://github.com/silx-kit/pyFAI
cd pyFAI
pip install -r requirements.txt
pip install . --upgrade
or

.. code-block:: shell
git clone https://github.com/silx-kit/pyFAI
cd pyFAI
pip install build --upgrade
pip install -r requirements.txt
python3 -m build --wheel
Expand Down
14 changes: 6 additions & 8 deletions doc/source/operations/linux.rst
Original file line number Diff line number Diff line change
Expand Up @@ -51,10 +51,10 @@ One can also built the current development version from sources:

.. code-block:: shell
sudo apt install git
sudo apt-get build-dep pyfai
wget https://github.com/silx-kit/pyFAI/archive/main.zip
unzip main.zip
cd pyFAI-main
git clone https://github.com/silx-kit/pyFAI
cd pyFAI
./build-deb.sh --install
Expand Down Expand Up @@ -85,11 +85,9 @@ Or you can install pyFAI from the sources:
python3 -m venv pyfai
source pyfai/bin/activate
pip install build
wget https://github.com/silx-kit/pyFAI/archive/main.zip
unzip main.zip
cd pyFAI-main
git clone https://github.com/silx-kit/pyFAI
cd pyFAI
pip install -r requirements.txt
pip install . --upgrade
**Nota:** The usage of "python setup.py install" is now deprecated.
One should never use *sudo pip* as it is likely to interfer with the software installed with the system.
**Nota:** One should never use *sudo pip* as it is likely to interfer with the software installed with the system.
7 changes: 3 additions & 4 deletions doc/source/operations/macosx.rst
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
:Author: Jérôme Kieffer
:Date: 05/01/2023
:Date: 10/10/2023
:Keywords: Installation procedure on MacOSX
:Target: System administrators

Expand Down Expand Up @@ -46,9 +46,8 @@ Get the sources from Github:
python3 -m venv pyfai
source pyfai/bin/activate
pip install build
wget https://github.com/silx-kit/pyFAI/archive/main.zip
unzip main.zip
cd pyFAI-main
git clone https://github.com/silx-kit/pyFAI
cd pyFAI
pip install -r requirements.txt
pip install . --upgrade
Expand Down
2 changes: 1 addition & 1 deletion doc/source/operations/windows.rst
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
:Author: Jérôme Kieffer
:Date: 05/01/2023
:Date: 10/10/2023
:Keywords: Installation procedure
:Target: System administrators under windows

Expand Down
4 changes: 2 additions & 2 deletions meson.build
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ project('pyFAI',
'c', 'cpp', 'cython',
license: 'MIT',
meson_version: '>= 0.60',
version: run_command(['version.py', '--wheel'],
version: run_command(['src/pyFAI/_version.py', '--wheel'],
check:true).stdout().strip(),
default_options: ['buildtype=plain', ],
)
Expand All @@ -28,4 +28,4 @@ py_mod = import('python')
py = py_mod.find_installation()
py_dep = py.dependency()

subdir('pyFAI')
subdir('src/pyFAI')
39 changes: 0 additions & 39 deletions pyFAI/app/setup.py

This file was deleted.

39 changes: 0 additions & 39 deletions pyFAI/benchmark/setup.py

This file was deleted.

Loading

0 comments on commit 97b8941

Please sign in to comment.