1.7.0
Release 1.7.0
brings some project maintenance and removes old unused code / modules.
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 inpyhdtoolkit.cpymadtools.lhc._routines
. The publicly exported function from thepyhdtoolkit.cpymadtools.lhc
module is not changed, but users using the old location should either use the public export or update their imports.
Enhancements
The
pyhdtoolkit.utils
package has a new module,decorators
, with two useful decorators: one to JIT-compile the decorated function ifnumba
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 ambiguousemittance_[xy]
parameters anymore. Please use the explicitnemitt_[xy]
parameters introduced in version1.6.0
instead.The
pyhdtoolkit.cpymadtools.lhc.make_lhc_beams
function now defaults to a value of2.5E-6m
for the normalized horizontal and vertical emittances, according to Run 3 operation. Functions that were callingmake_lhc_beams
for the Run 2 configuration explicitely ask for the previous default value of3.5E-6m
.The
pyhdtoolkit.cpymadtools.lhc.get_sizes_at_ip
function no longer acceptsgeom_emit_[xy]
parameters and requiresgemitt_[xy]
instead.The
pyhdtoolkit.models.beam.BeamParameters
class attributes were changed for consistency, with changes such asen_emit_[xy]
becomingnemitt_[xy]
etc.The
pyhdtoolkit.optics.beam.compute_beam_parameters
function no longer acceptsen_emit_[xy]
parameters and requiresnemitt_[xy]
instead.The
pyhdtoolkit.optics.beam.Beam
class no longer accepts and posseses anemittance
parameter / attribute, and now usesgemitt
instead.
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.
See v1.7.0 release notes on GitHub and the full changes since v1.6.0.