Release notes#
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
0.9.2#
Fixed#
Send the Data Portal workflow type metadata with the ICAT field name
Workflow_type.Validate generated Data Portal metadata keys against the installed ICAT dataset definitions in tests.
0.9.1#
Added#
Changed#
Slice and volume gallery preview file names now omit the dataset prefix and keep only the reconstruction descriptor, for example
absorption_xy_00008.png.Limit
pydanticto versions below 2.14 to avoid Redis OM warning noise.
Deprecated#
Removed#
Fixed#
Filter metadata keys against the ICAT dataset parameter schema before sending Data Portal uploads.
Security#
0.9.0#
Added#
New task
TomoBasicToNXtomoto build a NXtomo file directly from explicit inputs and detector dataset references, without relying onnxtomomillto read a Bliss HDF5 file.
Changed#
Added
nxtomoas a runtime dependency for direct NXtomo generation.Require
nxtomomill>=2.0.9.Align direct NXtomo generation with the new
nxtomomillgeometry handling based on detectordata_axes.The test extra now installs
ewoks[dask], and the reconstruction workflow tests cover bothcoreanddaskexecution engines.Read the Docs builds now target Ubuntu 24.04.
Deprecated#
Removed#
Fixed#
Security#
0.8.0#
Added#
New task
ReconstructVolumeto reconstruct partial or full volume with nabu.New task
ConvertVolumeTo16Bitto convert a volume to 16Bit into ‘hdf5’, ‘tiff’, ‘edf’ or ‘jp2’ data formats.New task
BuildVolumeGalleryto save a gallery of slices from the output volumes.New tasks
LinkSlicesandLinkVolumesto createSLICESandVOLUMESwith soft links according to esrf-pathlib structure.
Changed#
Small refactor of
_save_to_gallerymethod.Images in the projection gallery are now normalized over beam intensity.
Deprecated#
Removed#
Removed obsolete tests after adding the conversion task to the full volume reconstruction workflow.
Fixed#
Take into account the case where slice_index is filled in the nabu config file for volume reconstruction.
Default to
XRCTiCAT definition in case the published dataset is not phased retrieved.Normalization problem with bounds calculated on the first image on gif gallery image.
Security#
0.7.0#
Added#
New
ReconstructVolumetask to reconstruct partial or full volume with nabu.
Fixed#
Fixed iCAT mapping for TOMO metadata.
Bug that was keeping the reconstructor object in the GPU memory.
0.6.0#
Added#
BuildProjectionsGallerynow writes a 200x200, 32-color projections GIF sampled every 10 degrees.
Changed#
Inputs and outputs are now provided following a Pydantic model.
Project documentation has been vastly upgraded.
The input
_darks_flats_dirin taskReduceDarkFlatis now changed to the profit ofreference_dir_to_soft_link.
Fixed#
Fixed a bug that was constraining the projection gallery images to be a square of 200 pixels.
0.5.5#
Changed#
LICENSE.mdis nowLICENSE.ewokstomoneedssetuptools>=77
Fixed#
The
BuildGallerytask was consumingreconstructed_slice_paththat changed in theReconstructSlicetask (one folder level was removed).
0.5.4#
Added#
The project logo was added to
doc/_static.The
DataPortalUploadtask, pushes nowworkflow_typethat can beslicesorprojections.
Changed#
BuildGallerytasksbinninginput has been changed toimage_sizewhich default as 1000.BuildGalleryoutput image format is nowjpgby default with quality 95.The slice number is now part of the slices file name with the pattern:
{collection}_{dataset}_{tomo_contrast}_xy_{slice_number}.{data_type}.
Fixed#
All typing issues were resolved.
The metadata sent to the Data Portal by the
DataPortalUploadare now the result of the ProcessConfig of Nabu.
0.5.3#
Added#
Option in
H5ToNxtask to allow for mechanical flips handling.
0.5.2#
Added#
Allow skipping dark/flat reduction when reduced darks/flats are already available.
A new output of the
slice_reconstructiontask:nabu_dict.A new task
BuildDataPortalMetadatathat consumes thenabu_dictand transform into an icat metadata dict.
Changed#
BuildGallerytasks produce 2 images, one full resolution and one low resolution to adapt to the new display in the data portal.
0.5.1#
Changed#
Rework of the test data folder structure to ease the future testing the working directory structure.
Data structure follows esrf-pathlib tomo_v1 structure (except for dark and flat fields).
Fixed#
OnlineReduceDarkFlatproblem with can’t stack array of different shapes.
0.5.0#
Added#
FluoToNxtask that converts (PyMCA-fitted) XRF-CT data into NXtomo format.Added a task
OnlineReconstructSliceto reconstruct a slice while a Bliss scan is running.
Fixed#
Fixed overwrite feature in
ReduceDarkFlat.Some warnings in CI for
build_doc.
0.4.1#
Changed#
Renamed
ReduceDarksFlatsTasktoOnlineReduceDarkFlat.Renamed test files and methods to match the
tasksstructure.
Fixed#
Fixed bounds for gallery tasks to be less aggressive.
0.4.0#
Added#
Added
BuildSlicesGalleryto compute and save slices in gallery for the data portal uploading.Added tests for
EnergyCalculationtask.
Changed#
DataPortalUploadhas now an optionaldry_runinput.DataPortalUploadnow uses fully esrf-pathlib to gather the payload.
Removed#
Removed
BuildGallerywhich was deprecated since 0.2.6.
Fixed#
Removed
reconstructed_slice_arraybecause of serialization problems.
0.3.4#
Fixed#
Energy calculation tasks:
xoppylibno longer requiresscipy<1.14.Title now links to documentation main page.
Put back original backend for reconstruction.
0.3.3#
Added#
Full reconstruction workflow test without the data portal upload.
Changed#
H5ToNxtask now overwrites a previously created.nxfile by default.Temporary
backend = numpywhile Nabu releases a fix.
0.3.2#
Fixed#
Relax
tomoscanupper bound to comply with latest Nabu version.
0.3.1#
Changed#
SpectrumStats: compute weighted energy as a flux-weighted sum.
0.3.0#
Added#
New workflow and tasks for Energy Calculation for BM and Wigglers.
Ewoks tasks
ComputeBMSpectrumandComputeWigglerSpectrum(xoppy-backed), returning sortedenergy_eV,flux,spectral_power,cumulated_power; BM validatesTYPE_CALC=0andVER_DIV∈{0,2}.xraylib-based material optics core: NIST aliasing + element/compound parsing, μ/ρ computation, and automatic density fallback (elements/NIST/parsed formulas).
ApplyAttenuatorstask to stack ordered attenuators (material,thickness_mm,density_g_cm3), outputtingtransmission,attenuated_spectral_power, andattenuated_flux.SpectrumStatstask computingmean_energy_eV, nearestmean_idx, andtotal_power.
0.2.6#
Added#
CI: Python 3.13 is now tested.
Changed#
Minimum supported Python is now 3.10.
DataPortalUpload: support cases where the folder to upload is one level downstream.Documentation: improve
README.md.
Deprecated#
BuildGalleryin favor ofBuildProjectionsGallery.
0.2.5#
Fixed#
ReconstructSlice: correct Nabu API call.
0.2.4#
Added#
New
ReconstructSlicetask to save an HDF5 with a single slice. Parameters viaconfig_dict. The result is returned as a NumPy array along with the slice index.
Changed#
H5ToNx: input renamed—output_dir→nx_path.H5ToNxnow uses thenxtomomillAPI to convert Bliss HDF5 to NXtomo.
Removed#
H5ToNx: do not generate the master file (_0000.nx).
0.2.3#
Added#
BuildGallery: new optional inputsoutput_binning,output_format,overwrite.
Changed#
BuildGallery: change gallery file names to 5 digits, rounded to the closest integer.
0.2.1#
Fixed#
Minor issue in the data portal upload task.
0.2.0#
Added#
Tasks to reduce flats and darks, create the gallery, and upload to the data portal.
0.1.0#
Initial release.