Skip to content

Release 1.7.0

Latest
Compare
Choose a tag to compare
@fsoubelet fsoubelet released this 18 Nov 10:22
· 3 commits to master since this release
e9e9129

Release 1.7.0 brings some project maintenance and removes old unused code / modules..

Enhancements

  • The pyhdtoolkit.utils package has a new module, decorators, with two useful decorators: one to JIT-compile the decorated function if numba is available in the environment, and one to mark a function as deprecated.

Changes

  • The pyhdtoolkit.cpymadtools.lhc.make_lhc_beams function no longer accepts ambiguous emittance_[xy] parameters anymore. Please use the explicit nemitt_[xy] parameters introduced in version 1.6.0 instead.
  • The pyhdtoolkit.cpymadtools.lhc.make_lhc_beams function now defaults to a value of 2.5E-6m for the normalized horizontal and vertical emittances, according to Run 3 operation. Functions that were calling make_lhc_beams for the Run 2 configuration explicitely ask for the previous default value of 3.5E-6m.
  • The pyhdtoolkit.cpymadtools.lhc.get_sizes_at_ip function no longer accepts geom_emit_[xy] parameters and requires gemitt_[xy] instead.
  • The pyhdtoolkit.models.beam.BeamParameters class attributes were changed for consistency, with changes such as en_emit_[xy] becoming nemitt_[xy] etc.
  • The pyhdtoolkit.optics.beam.compute_beam_parameters function no longer accepts en_emit_[xy] parameters and requires nemitt_[xy] instead.
  • The pyhdtoolkit.optics.beam.Beam class no longer accepts and posseses an emittance parameter / attribute, and now uses gemitt instead.

Removals

  • The pyhdtoolkit.utils.executors module has been removed, since it was not in used anymore.
  • The pyhdtoolkit.utils.operations module has been removed, since it was not in used anymore.
  • The pyhdtoolkit.utils.printutil module has been removed, since it was not in used anymore.
  • The pyhdtoolkit.cpymadtools.lhc._coupling.correct_lhc_global_coupling function has been deleted as it was replaced by its clone in pyhdtoolkit.cpymadtools.lhc._routines. The publicly exported function from the pyhdtoolkit.cpymadtools.lhc module is not changed, but users using the old location should either use the public export or update their imports.

Documentation

  • Fixed various inconsistencies.
  • Fixed all public members being displayed in the sidebar, which should now be readable again.
  • The docstrings of functions in the pyhdtoolkit.optics.rdt module now display the version they were added in, and contain examples.
  • The whole package's docstrings have been migrated to use numpy style to better fit their depth. While the build documentation has not changed, users exploring function docstrings will have a better time reading them.

Maintenance

  • Updated Continuous Integration workflows to switch to uv, speeding up CI runs.
  • Updated the project's support files to switch to uv.
  • Updated some configuration parameters to comply with newest versions of documentation build tools.
  • Gated many imports into TYPE_CHECKING blocks, which should speedup the import time of the package or its sub-packages.
  • Updated the documentation gallery.

What's Changed

  • Cleanups, updates to documentation, UV, remove ununsed modules by @fsoubelet in #111

Full Changelog: 1.6.0...1.7.0