Skip to content

Releases: silx-kit/pyFAI

pyFAI 2023.1

16 Jan 10:25
@kif kif
v2023.1
Compare
Choose a tag to compare

First stable version of pyFAI: v2023.1.

Sources and binary wheels can be found at: https://pypi.org/project/pyFAI/
and at: https://github.com/silx-kit/pyFAI/releases/tag/v2023.1

One of a few ways to install this release with pip:

pip install pyFAI==2023.1.0

Release notes and important changes since 0.21:

  • Developer and packager tools:
    • Switch build system from numpy.distutils to meson-python
    • Keep the former setup.py for compatibility reasons: it will be removed in a future release
    • Drop Python 3.6 (default parameters in namedtuple feature used)
    • Require silx 1.1 (for OpenCL), scipy and matplotlib
  • GUI side:
    • several minor improvements in pyFAI-calib2
    • Fixed calibration in jupyter-lab
  • Core improvements:
    • Refactoring of the Geometry class
    • Geometry pseudo-inversion optimization
    • Improved support from Medipix-based Lambda-detectors
    • New detectors from Dectris (Pilatus 900k and Eiger 250k)
    • Support Nexus format in output: NXmonpd and NXcansas
    • Single-threaded CSC sparse matrix multiplication engine
  • Improved uncertainty propagation:
    • Refactor error model management (uses enum)
    • Hybrid error model (azimuthal for sigma-clipping but reports Poissonian noise)
    • Export peakfinder data to the CXI format (used by CrystFEL)
  • Improvement in the doc:
    • Update installation instructions
    • Multi-threaded integration tutorial
    • GPU implementation tutorial
  • Facts and figures:
    • 400+ commits, 100 PR
      +with the contribution of:
      Clemens Prescher,
      Elena Pascal,
      Jérôme Kieffer,
      Malte Storm,
      Marco Cammarata,
      Michael Hudson-Doyle,
      Picca Frédéric-Emmanuel,
      Rodrigo Telles,
      Thomas A Caswell,
      Tommaso Vinci,
      Valentin Valls,
      Wout de Nolf.

PyFAI v0.21.3

24 Mar 16:22
@kif kif
v0.21.3
Compare
Choose a tag to compare
  • Support hexagonal pixels in splitbbox and nosplit mode (collaboration with EuXFEL)
  • Support extra dtype in OpenCL (contribution from Desy)
  • Fix version of setuptools (enables to build pyFAI -> python 3.12)
  • Support some of the Lambda detectors from XSpectrum (collaboration with Xmas)
  • Restore back compatibility in histoBBox1d and histoBBox2d (contribution from NSLS-II)
  • Fix bug in OpenCL distortion correction (collaboration with Soleil)
  • Several other bugs fixed

PyFAI version 0.21.2

03 Feb 15:02
@kif kif
v0.21.2
Compare
Choose a tag to compare

This is a doc-fix minor release:
Documentation for sparsify-Bragg and peakfinder CLI tools were corrected.

PyFAI version 0.21.1

02 Feb 10:21
@kif kif
v0.21.1
Compare
Choose a tag to compare

This is a bug-fix release over 0.21:

  • fix several cabling issue inside AzimuthalIntegrator, preventing unattended engine-reset
  • dummy value was not working properly in Worker
  • Remove deprecation warning about scipy
  • Using silx for median-filter which is faster
  • skip 3 tests which are known to be fragile on 32-bit platforms (spotted by debian on i386 and armel)

PyFAI version 0.21.0

20 Jan 10:28
@kif kif
v0.21.0
Compare
Choose a tag to compare
  • Sigma-clipping allows separation of Bragg/amorphous signal:
    • Implementation in Python, Cython and OpenCL with poissonian and azimuthal error-model
    • Sparsification, compression of single crystal data
    • Application to peak-picking and quality assessment of SSX data
    • Analysis of grid-scan to find single crystal
    • Single pass variance evaluation in azimuthal bin
    • Integration of the Jungfrau detector (ID29)
  • 2D integration:
    • New integrators with error propagation by default
    • Full pixel splitting in addition to BBox and no splitting
  • Refactor of all LUT and CSR to share the same code base, makes tests more robust.
  • Calibration of experimental setup using Jupyter notebooks
    • User interaction with plots in matplotlib (thanks Phil Hans)
    • Factorize code between pyFAI-calib and jupyter calibration
    • Tutorial as notebook and video recording
  • Parallax correction for thick detector (still experimental, thanks to Vadim)
  • Improved tutorial on detector geometry calibration (based on Kabsch alignment)
  • Better performances on HPC nodes by limiting simple OpenMP to fewer cores
  • Many improvement in test, typos fixed, doc ...
  • Deprecate all legacy integrators since the new version sees its matrix complete.
  • Supports Python 3.6 ... 3.10 under Windows, MacOS and Linux.

PyFAI version 0.20.0

22 Jan 12:36
@kif kif
v0.20.0
21b32f6
Compare
Choose a tag to compare
  • One year of development, about 500 commits & 370 files modified.
  • Generalization of the new generation 1D integrators (better error propagation)
  • Sigma clipping and sparsification of single crystal data (OpenCL only)
  • Fix issue introduced with the scipy 1.15 (constrained calibration broken)
  • Improved distortion correction (also on GPU, ...)
  • Major re-work of the documentation (thanks Thomas Kluyver and Loic Huder)
  • Improve the calibration of Pilatus and Eiger detectors based on a grid of holes.
  • New cylindrical detector from Rigaku
  • Drop deprecated OpenCL integrator
  • Support all Eiger2 detectors (thanks Clemens Weninger and Marie Ruat)
  • CI: move to Gihub workflow and gitlab-runners (bob) for building (thanks Thomas Vincent).
  • Build for debian 10 and 11 (also ubuntu 20.04), drop debian 9
  • Remove Python2 related code
  • Lower Numpy ABI dependency as much as possible (remains _distortion's C++ code)
  • Drop tests for Python 3.5, checked on 3.9 as well.

PyFAI v0.19.0 31/01/2020

31 Jan 14:25
@kif kif
v0.19.0
Compare
Choose a tag to compare
  • Minor revison with only 150 commits, mainly bug-fixes
  • Improvement on the GUI with many small bug-fixes
  • Support newer h5py (mode mandatory, [()], ...)
  • Build for debian 10 and 11 (also ubuntu 20.04)
  • Drop tests for Python 2 and 3.4, checked on 3.8
  • Improved compatibility with ImageD11
  • Use hdf5plugin to provide hdf5 io-filters in apps
  • Rework diffraction mapping tools to use a worker
  • New generation azimuthal integrator using CSR algorithm
    implemented in Python, Cython and OpenCL.
  • Sigma-clipping implemented in OpenCL
  • Publication on new generation integration, the GUI for
    calibration and the goniometers accepted in J. Synch. Rad.
  • A big thank to Florian from Germany, Bertrand from Xenocs,
    Alex from Soleil and Jon from ESRF for their contributions

PyFAI v0.18.0

17 May 15:26
@kif kif
v0.18.0
Compare
Choose a tag to compare
  • Last release with Valentin as he finishes his contract soon
  • Almost 800 commits, 60 PR since the last release: this is a huge
    release !
  • Major rework on all GUIs, mainly pyFAI-calib2 and pyFAI-integrate.
  • Possibility to integrate image stacks (i.e. from HDF5), ...
  • Rework the method to specify the algorithm, pixel splitting and
    implementation
    with sensible fall-backs. Also available via the different GUIs
  • 3D visualization of detectors and experimental setup, useful for non
    flat detectors.
  • integrate1d_ng is available with histogramming without pixel
    splitting in
    Python, Cython and OpenCL. Now, propagates the variance properly !
  • IO sub-packages with associated refactoring for ponifile, json,
  • Improved management of OpenMP: simplify the code for histograms.
  • Improved geometry description and tutorial for writing exchange
    with other software (ImageD11, thanks to Carsten Detlefs).
  • More reliable simple ellipse fitting with tests and doc.
  • Better POCL integration (debugged on cuda, x87, Power9, ...)
  • Rely on silx mechanics for the build, test, download, GUI,
    opencl ...
  • Many new tutorials, now available on binder-hub: new calibrants,
    Pilatus calibration, ...
  • Fix many issues reported in third-party software (Dioptas, ...)
  • Drop support of debian8, Python 2.7 and Python 3.4 on all
    platforms. It is likely most functionalities still work but without
    guaranty.

PyFAI v0.17.1

24 Apr 10:13
@kif kif
v0.17.1
Compare
Choose a tag to compare

Bug-fix release. Allows to build with numpy v1.16

PyFAI v0.17.0

19 Dec 14:54
@kif kif
v0.17.0
Compare
Choose a tag to compare
  • Only 200 commits in a couple of month, this is a small release
  • Fix major bugs in pyFAI-calib2 (double validator, initial guess, ring position)
  • Constrains have been added to the geometry fitting of pyFAI-calib2
  • New pyFAI-integrate graphical application
  • Much better support for user defined detector (HDF5)
  • Start the rewrite of all integrators to allow proper error propagation (2D done)
  • Factorize the preprocessing steps for many integrators
  • Remove tons of code which has been deprecated for years in AzimuthalIntegrator
  • Featuring contribution from Soleil and Berkeley
  • Stop supporting Python2.7 on Windows
  • All scripts are now using Python 3.x (x>=4)
  • This is the last release supporting Python 2.7, 3.4 hence debian 8