Skip to content

sirepo-bluesky v0.5.0

Compare
Choose a tag to compare
@mrakitin mrakitin released this 04 Nov 22:43
· 202 commits to main since this release
ef008ea

v0.5.0 (2022-11-04)

This is a major release dropping support of Python 3.7 and adding support of new simulation types.

Applications

  • Added support for the MAD-X App in Sirepo via detector & flyer API. Corresponding simulation examples were added too (sim_id=00000001 and 00000002). The corresponding handler MADXFileHandler was implemented for the reading of MAD-X-produced files.
  • Implemented SingleElectronSpectrumReport from the Source page of Sirepo/SRW.
  • Added the duration component for detectors.
  • Implemented the stateless-compute support for the grazing angle orientation. That is necessary to support the recalculation of some properties which are normally triggered by the JavaScript client side.
  • Converted assertions to exceptions throughout the library code.

Tests

  • All integrated simulation codes have corresponding extensive tests (pytest framework).

Examples

  • Updated the preparation scripts for the detector and flyer environments to make them more consistent.
  • Save all test/example data to /tmp/sirepo-bluesky-data/.

Documentation

  • Made all examples for SRW, Shadow3, and Beam Statistics Report consistent.
  • Added a documentation/notebook with an example of the use of MAD-X via sirepo-bluesky API.
  • Changed the Sphinx theme to Cloud.
  • Consistent table widths for simulation lists for different simulation codes.
  • Fixed the version string in the published documentation at nsls-ii.github.io/sirepo-bluesky.

Scripts/services

  • Added support for a persistent location for the Sirepo database of simulations.
  • Using the radiasoft/sirepo:20220806.215448 version of the Sirepo Docker image (support of newer images will be added in the following release).
  • Added an example systemd unit for sirepo.service.

CI improvements

  • Added checks on whether the Sirepo container is running before executing the tests.
  • Using mamba for faster installation.
  • Uploading docs artifacts for each CI run (to allow inspection of the documentation draft before publishing it).