Rollback: v0.4.0 → v0.3.0

If v0.4.0 causes issues, revert to the NumPy-based v0.3.0.

Quick Rollback

# 1. Uninstall v0.4.0 and JAX dependencies
pip uninstall -y xraylabtool jax jaxlib pyqtgraph

# 2. Install v0.3.0
pip install xraylabtool==0.3.0

# 3. Verify
python -c "import xraylabtool; print(xraylabtool.__version__)"
python -c "import xraylabtool as xrt; \
    r = xrt.calculate_single_material_properties('Si', 2.33, 8000); \
    print(f'Critical angle: {r.critical_angle_degrees}')"

All data and CSV files are compatible between versions. No data migration is needed in either direction.

When to Roll Back

  • Calculation results differ from v0.3.0 by more than floating-point tolerance (~1e-12 relative)

  • GUI fails to launch after PyQtGraph installation

  • JAX import errors that pip install --upgrade xraylabtool does not fix

Pre-Upgrade Backup (Optional)

pip freeze > requirements_v0_3_0.txt

Re-Upgrading After a Fix

After the issue is resolved in a patch release:

pip install --upgrade xraylabtool>=0.4.1

Verify with the same checks above before resuming use.

See also: Migration Guide for the full upgrade procedure.