Releases: sdss/jaeger
jaeger 1.9.0
🚀 New
- #208 Add actor command
calibrations reset-offsets
to zero the alpha/beta offsets in one or more positioners.
✨ Improved
- Improved handling of sextant controllers.
configuration random
now calculates paths only once.
🔧 Fixed
- Prevent the ToO code from selecting the same target for two different positioners.
- Fix a case when the configuration fails to retrieve the trajectory paths because there are no robots that need updated coordinates.
- Pin
pymodbus
to 3.7.x.
jaeger 1.8.0
jaeger 1.7.7
✨ Improved
- Add
rot_ref_angle
option to the FVC command to set the reference rotator angle for fiducial fitting.
🔧 Fixed
- Set the configuration epoch for
DitheredConfiguration
as the epoch of the parent. - Use the configuration focal scale in all calls to
icrs_from_positioner_dataframe()
.
🚑 Hotfix
- #205 Added a hotfix for an issue caused when the back-illuminated fibres don't turn on during and FVC loop (cause under investigation). When light is not detected in the FVC image the code will retry up to three times, each time turning the LEDs off and then on again.
⚙️ Engineering
- Add back
pyarrow
dependency.
jaeger 1.7.6
🏷️ Changed
- #204 Replace the old
confSummary_test
paths which have not become the default. When a configuration or FVC writes a configuration file, it does so to$SDSSCORE_DIR
with the new formatting (i.e., using thousand and hundred groupings). Additionally, and at least for now, it also writes the same file to$SDSSCORE_LEGACY_DIR
with the old format (only hundred groupings).
⚙️ Engineering
- Upgrade
sdsstools
to 1.7.1 with support for Numpy 2.0. - Upgrade
polars
to 1.0.0.
jaeger 1.7.5
🏷️ Changed
- Disabled
alert_fluid_temperature
.
jaeger 1.7.4
✨ Improved
- Bumped
kaiju
to 1.4.0 with speed-up improvements.
jaeger 1.7.3
🔧 Fixed
- Fix import of
os
intarget/tools.py
which was affecting the loading of cloned configurations and possibly other features.
jaeger 1.7.2
✨ Improved
-
#203 Implementation of targets of opportunity. When a
Design
is created (and unlessuse_targets_of_opportunity=False
) design targets can be replaced with ToOs from a dump file (defaults to$TOO_DATA_DIR/current
). The replacement options are managed viaconfiguration.targets_of_opportunity
which accepts the following optionsconfiguration: targets_of_opportunity: replace: true path: $TOO_DATA_DIR/current exclude_design_modes: ['^.+?_eng$', '^.+?_rm_?.*$'] max_replacements: 2 categories: ['science'] minimum_priority: [6000, 3000, 0]
Initially disabled in the configuration.
🔧 Fixed
- Fixed FVC
apply_corrections()
only setting the values of robots with invalid transformations.
jaeger 1.7.1
✨ Improved
- Use
positionerToWok
andwokToPositioner
functions fromsdss-coordio 1.11.0
which allow to convert wok to and from positioner coordinates as an array (all holes at the same time), which very significantly improvesDesign
creation time. - Enabled chiller fault alarms.
jaeger 1.7.0
This is marked as a minor version although it should not have any visible changes, but the codebase has significantly changed and there's potential for regression issues that are better tracked as a clearly different version.
⚙️ Engineering
-
#202 This started as a quick rewrite of some parts to use
polars
and ended as a mid-to-large refactor of significant parts of the code, especially theConfiguration
andAssignment
classes.The main highlights are:
- Dropped support for Python 3.9 and extended support up to 3.12. For Python
>=3.11
the1.4.0b1
version ofkaiju
is used. - The code does not use
pandas
anymore, andpolars
data frames are used everywhere.jaeger
still handlespandas
dataframes when they are returned by other libraries (mostly from theFVCTransform
code incoordio
). - The
Configuration
andAssignment
classes have been completely rewritten. Coordinate transformations code is now mostly injaeger.target.coordinates
. The new code should be significantly cleaner and easier to maintain. AssignmentData*
has been renamed toAssignment*
.- Some modest efficiency improvements to the coordinate transformations in
Assignment
. Before some conversions from ICRS to wok and vice-versa were done on a per-target bases. Now they are doing for all the targets at once, but the bottleneck is still the conversion between wok and positioner (and vice-versa) which has to be done as a loop for each target. - Simplified the singleton patter for
FPS
. - Significantly extended the test suite. Now
Design
/Configuration
/Assignment
andFVC
are reasonably covered. - Added a test database for CI testing.
- Added a
configuration_to_dataframe
function that generates aconfSummary
-like dataframe that could be saved tosdsscore
as Parquet (currently not doing that). - Added
ra/dec/alt/az_observed
toconfSummary
. - Moved all codebase from
python/
tosrc/
.
- Dropped support for Python 3.9 and extended support up to 3.12. For Python