Skip to content

Commit

Permalink
Merge pull request #2039 from silx-kit/2024.01
Browse files Browse the repository at this point in the history
2024.01
  • Loading branch information
kif authored Jan 18, 2024
2 parents f1dbb2d + 2938119 commit dd6427f
Show file tree
Hide file tree
Showing 20 changed files with 3,186 additions and 627 deletions.
15 changes: 9 additions & 6 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -94,13 +94,15 @@ Documentation

Documentation can be build using this command and Sphinx (installed on your computer)::

pip install -r requirements.txt
python3 build-doc.py


Dependencies
------------

Python 3.7, ... 3.10 are well tested and officially supported.
Python 3.7, ... 3.11 are well tested and officially supported.
For python 3.12, it requires silx version 2 which is still unreleased for now.
For full functionality of pyFAI the following modules need to be installed.

* ``numpy`` - http://www.numpy.org
Expand Down Expand Up @@ -178,15 +180,16 @@ Maintainers
Contributors
------------

* Edgar Gutierrez Fernandez (ESRF)
* Valentin Valls (ESRF)
* Frédéric-Emmanuel Picca (Soleil)
* Thomas Vincent (ESRF)
* Dimitris Karkoulis (ESRF)
* Aurore Deschildre (ESRF)
* Giannis Ashiotis (ESRF)
* Zubair Nawaz (Sesame)
* Dimitris Karkoulis (Formerly ESRF)
* Aurore Deschildre (Formerly ESRF)
* Giannis Ashiotis (Formerly ESRF)
* Zubair Nawaz (Formerly Sesame)
* Jon Wright (ESRF)
* Amund Hov (ESRF)
* Amund Hov (Formerly ESRF)
* Dodogerstlin @github
* Gunthard Benecke (Desy)
* Gero Flucke (Desy)
Expand Down
31 changes: 19 additions & 12 deletions doc/source/changelog.rst
Original file line number Diff line number Diff line change
@@ -1,28 +1,35 @@
:Author: Jérôme Kieffer
:Date: 12/01/2024
:Date: 18/01/2024
:Keywords: changelog

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

2024.1 UNRELEASED
2024.1 18/01/2024
-----------------
- Expose the number of corners of a detector pixel
- Support XRDML formt (compatibility with MAUD software)
- Support pathlib for reading PONI files
- Refactor `pyFAI-benchmark` tool (Thanks Edgar)
- Possibility to define the detector orientation:
+ It is the position of the origin of the detector at any of the 4 corner of the image
+ Uses the EXIF nomenclature where pyFAI's (default) orientation is tagged *3*
+ Offers compatibility with calibration made by Diotas (where orientation=2)
+ Offers compatibility with calibration made by Diotas (where orientation=2 since images are flipped)
+ Expose the feature in the `calib2` GUI for custom detectors.
+ Tutorial on the usage
- Possibility to integrate in 2D any second dimension, offers the qx/qy integration among many others.
+ New sub-version of the PoniFile API (2.1) for this feature
- Expose the number of corners of a detector pixel (feature unused for now)
- Refactor `pyFAI-benchmark` tool with better looking reults (Thanks Edgar)
- Possibility to integrate in 2D with any second dimension unit:
+ No more limited to the azimuthal angle `chi`
+ Several new units have been added
+ Offers the qx/qy integration as example
- 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.
- Move the sources of the code into `src` directory
- Support for Python 3.7-3.12
- Support XRDML formt (compatibility with MAUD software)
- Multigeometry gains a `reset()` method to free some memory with optimized garbage collection.
- Support pathlib when reading-PONI files
- Change in the build system:
+ Drop of `setup.py` the build system based on distutils/numpy.distutils/setuptools
+ Enforce the use of meson-python
+ Move the sources of the code into `src` directory
+ Support for Python 3.7-3.12 (requires silx v2 for 3.12)
+ Provide debian packages for debian12 but ubuntu 20.04 is too old and lack meson-python

2023.09 08/09/2023
------------------
Expand Down
76 changes: 39 additions & 37 deletions doc/source/coverage.rst
Original file line number Diff line number Diff line change
@@ -1,41 +1,41 @@
Test coverage report for pyFAI
==============================

Measured on *pyFAI* version 2023.10.0-dev0, 10/10/2023
Measured on *pyFAI* version 2024.1.0, 18/01/2024

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

"__init__.py", "40", "26", "65.0 %"
"_version.py", "63", "52", "82.5 %"
"__init__.py", "39", "25", "64.1 %"
"average.py", "495", "356", "71.9 %"
"azimuthalIntegrator.py", "1753", "1166", "66.5 %"
"blob_detection.py", "506", "191", "37.7 %"
"azimuthalIntegrator.py", "1750", "1165", "66.6 %"
"blob_detection.py", "502", "191", "38.0 %"
"calibrant.py", "462", "369", "79.9 %"
"containers.py", "465", "423", "91.0 %"
"containers.py", "467", "420", "89.9 %"
"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 %"
"distortion.py", "605", "386", "63.8 %"
"geometryRefinement.py", "572", "291", "50.9 %"
"goniometer.py", "566", "340", "60.1 %"
"grid.py", "36", "15", "41.7 %"
"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 %"
"method_registry.py", "259", "221", "85.3 %"
"multi_geometry.py", "169", "136", "80.5 %"
"parallax.py", "249", "211", "84.7 %"
"spline.py", "427", "252", "59.0 %"
"units.py", "130", "125", "96.2 %"
"worker.py", "484", "289", "59.7 %"
"units.py", "130", "126", "96.9 %"
"version.py", "63", "46", "73.0 %"
"worker.py", "477", "311", "65.2 %"
"app/__init__.py", "7", "7", "100.0 %"
"app/average.py", "176", "35", "19.9 %"
"app/benchmark.py", "58", "21", "36.2 %"
"app/benchmark.py", "64", "21", "32.8 %"
"app/calib2.py", "366", "37", "10.1 %"
"app/calib.py", "31", "21", "67.7 %"
"app/check_calib.py", "32", "21", "65.6 %"
"app/detector2nexus.py", "88", "20", "22.7 %"
"app/detector2nexus.py", "87", "20", "23.0 %"
"app/diff_map.py", "37", "17", "45.9 %"
"app/diff_tomo.py", "109", "25", "22.9 %"
"app/drawmask.py", "106", "31", "29.2 %"
Expand All @@ -44,30 +44,31 @@ Measured on *pyFAI* version 2023.10.0-dev0, 10/10/2023
"app/mx_calibrate.py", "31", "20", "64.5 %"
"app/peakfinder.py", "289", "55", "19.0 %"
"app/recalib.py", "32", "20", "62.5 %"
"app/saxs.py", "89", "26", "29.2 %"
"app/saxs.py", "87", "26", "29.9 %"
"app/sparsify.py", "284", "56", "19.7 %"
"app/waxs.py", "101", "27", "26.7 %"
"benchmark/__init__.py", "572", "82", "14.3 %"
"app/waxs.py", "99", "27", "27.3 %"
"benchmark/__init__.py", "622", "85", "13.7 %"
"detectors/__init__.py", "24", "24", "100.0 %"
"detectors/_adsc.py", "77", "77", "100.0 %"
"detectors/_common.py", "775", "552", "71.2 %"
"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 %"
"detectors/_non_flat.py", "155", "128", "82.6 %"
"detectors/_adsc.py", "76", "76", "100.0 %"
"detectors/_common.py", "852", "623", "73.1 %"
"detectors/_dectris.py", "416", "298", "71.6 %"
"detectors/_esrf.py", "97", "81", "83.5 %"
"detectors/_hexagonal.py", "73", "70", "95.9 %"
"detectors/_imxpad.py", "401", "257", "64.1 %"
"detectors/_non_flat.py", "158", "131", "82.9 %"
"detectors/_others.py", "133", "120", "90.2 %"
"detectors/_psi.py", "187", "110", "58.8 %"
"detectors/_rayonix.py", "260", "225", "86.5 %"
"detectors/_psi.py", "188", "111", "59.0 %"
"detectors/_rayonix.py", "264", "226", "85.6 %"
"detectors/_xspectrum.py", "51", "48", "94.1 %"
"detectors/orientation.py", "36", "36", "100.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", "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", "1270", "1049", "82.6 %"
"geometry/core.py", "1245", "1032", "82.9 %"
"geometry/cxi.py", "1", "1", "100.0 %"
"geometry/fit2d.py", "114", "103", "90.4 %"
"gui/ApplicationContext.py", "107", "52", "48.6 %"
Expand All @@ -77,12 +78,12 @@ Measured on *pyFAI* version 2023.10.0-dev0, 10/10/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", "25", "75.8 %"
"gui/matplotlib.py", "33", "26", "78.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 %"
"gui/peak_picker.py", "298", "108", "36.2 %"
"gui/dialog/Detector3dDialog.py", "173", "36", "20.8 %"
"gui/dialog/DetectorSelectorDialog.py", "432", "318", "73.6 %"
"gui/dialog/DetectorSelectorDialog.py", "448", "342", "76.3 %"
"gui/dialog/GeometryDialog.py", "56", "16", "28.6 %"
"gui/dialog/IntegrationMethodDialog.py", "216", "36", "16.7 %"
"gui/dialog/MessageBox.py", "27", "8", "29.6 %"
Expand All @@ -106,7 +107,7 @@ Measured on *pyFAI* version 2023.10.0-dev0, 10/10/2023
"gui/model/ConstraintModel.py", "60", "21", "35.0 %"
"gui/model/DataModel.py", "15", "14", "93.3 %"
"gui/model/DataModelAdaptor.py", "27", "12", "44.4 %"
"gui/model/DetectorModel.py", "15", "14", "93.3 %"
"gui/model/DetectorModel.py", "16", "15", "93.8 %"
"gui/model/ExperimentSettingsModel.py", "80", "74", "92.5 %"
"gui/model/FilenameModel.py", "21", "14", "66.7 %"
"gui/model/Fit2dGeometryModel.py", "64", "32", "50.0 %"
Expand All @@ -123,8 +124,8 @@ Measured on *pyFAI* version 2023.10.0-dev0, 10/10/2023
"gui/model/PlotViewModel.py", "64", "62", "96.9 %"
"gui/model/__init__.py", "4", "4", "100.0 %"
"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/ExperimentTask.py", "326", "236", "72.4 %"
"gui/tasks/GeometryTask.py", "809", "374", "46.2 %"
"gui/tasks/IntegrationTask.py", "776", "300", "38.7 %"
"gui/tasks/MaskTask.py", "221", "143", "64.7 %"
"gui/tasks/PeakPickingTask.py", "1356", "586", "43.2 %"
Expand Down Expand Up @@ -171,14 +172,15 @@ Measured on *pyFAI* version 2023.10.0-dev0, 10/10/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 %"
"io/__init__.py", "565", "365", "64.6 %"
"io/__init__.py", "568", "371", "65.3 %"
"io/_json.py", "15", "12", "80.0 %"
"io/image.py", "24", "20", "83.3 %"
"io/integration_config.py", "138", "124", "89.9 %"
"io/integration_config.py", "153", "139", "90.8 %"
"io/nexus.py", "435", "371", "85.3 %"
"io/ponifile.py", "166", "153", "92.2 %"
"io/ponifile.py", "193", "167", "86.5 %"
"io/sparse_frame.py", "153", "24", "15.7 %"
"io/spots.py", "210", "139", "66.2 %"
"io/xrdml.py", "77", "76", "98.7 %"
"opencl/OCLFullSplit.py", "199", "24", "12.1 %"
"opencl/__init__.py", "40", "33", "82.5 %"
"opencl/azim_csr.py", "564", "405", "71.8 %"
Expand All @@ -201,7 +203,7 @@ Measured on *pyFAI* version 2023.10.0-dev0, 10/10/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", "50", "90.9 %"
"utils/shell.py", "55", "46", "83.6 %"
"utils/stringutil.py", "74", "67", "90.5 %"

"pyFAI total", "35808", "19978", "55.8 %"
"pyFAI total", "36146", "20255", "56.0 %"
Loading

0 comments on commit dd6427f

Please sign in to comment.