Changelog
All notable changes to this project will be documented in this file. This project adheres to Semantic Versioning.
Unreleased
18.2.0
Added decision_id to class
PanelDecisionfor the PMTMetadata for Proposal Management no longer optional
18.1.0
Replace older usage of
typing.Optionalwith modern| Nonesyntax.Added initial proposal management classes for the PMT:
PanelDecision,PanelReviewandPanel
18.0.0
[Breaking] Proposal.prsl_id can now be None
DishAllocation.dish_ids serialise to a sorted set in JSON.
Added
PstSPWConfigurationto allow definition of spectral windows for Mid PST
17.2.0
Adds PointedMosaicParameters to SBDefinition
__init__.pyto allow importing at SBDefinition levelAdds Low ITF as an array option
17.1.1
Renames
target_idinBeamtobeam_namefor consistency
17.1.0
Adds PointedMosaicParameters pointing pattern for mosaics consisting of individual pointings.
Adds ‘epoch’ field to EquatorialCoordinates and EquatorialCoordinatesPST for compatibility with ADR-63.
Adds
AltAzCoordinates,SpecialCoordinatesandAltAzCoordinatesto align with ADR-63.Deprecates
HorizontalCoordinates,EquatorialCoordinates,EquatorialCoordinatesPSTandSolarSystemObject.Adds
target_idfield toBeamclass in preparation for future removal ofEquatorialCoordinatesPSTRefactored the Coordinates to have a
to_sky_coordmethod rather than storing a_coordobject. Not technically breaking as it is a private field.Changed the input type of coordinate units to accept only a Tuple and not a list or string.
Added GalacticCoordinates object
Deprecate number_of_channels in the MCCS part of the SBDefiniton, as this information can be derived from the CSP set up.
17.0.1
Added default dish ids to MID imaging SB builder
17.0.0
Added ‘name’ to targets and csp_configurations, to be used as a user-friendly way to identify the entity. The existing id fields can now be set to a uid in the UI
[Breaking]: In the SBDefinition, remove dish configuration and refactor
dish_allocationto containdish_ids,dish_allocation_idandselected_subarray_definition[Breaking]: In the SBDefinition, refactor
mccs_allocationto containmccs_allocation_idinstead ofmccs_config_idandselected_subarray_definitioninstead ofconfiguration[Breaking]: Remove telescope from Project
16.2.1
Changed
midcbf.subbandkwargfrequency_slice_offsetto be mandatory and defaulting to zero
16.2.0
Added
buildersmodule providing high-level functions for generating Mid and Low SBDefinitions.
16.1.0
Added :
robustandspectral_averagingto observation details level
Removed:
spectral_averagingremoed from low array details
16.0.1
Changed typo “suppied_type” to “supplied_type” in “Proposal.ObservationSets.Supplied”
16.0.0
Changed
sub_typetoattributesas this reflects better the Science terminologyChanged default of
subarrayfromAA1toaa1Removed
SpiralParametersfromPointingKindenum within the ProposalUpdated descriptions for various Proposal fields to aid in clarity
Changed
beam_sizeAdded
uploaded_pdfto proposals documentsRemoved
ProposalTypeENUMas will be provided by another system, replaced field to be a stringRemoved
ProposalSubTypeas will be provided by another system, replaced field to be a stringRemoved
ScienceCategoryas will be provided by another system, replaced field to be a stringRemoved
ObservationTypeas will be provided by another system, replaced field to be a stringRemoved
ObservingBandas will be provided by another system, replaced field to be a stringUpdated
resultstoresult_detailswithin the ProposalAdded
statusto the Proposal InvestigatorRemoved a number of fields from the Proposals as they are no longer required
Added
Sensitivityclass for use in the ProposalAdded
SynthesizedBeamSizeclass for use with thesynthesized_beam_sizeUpdated
image_sizeto use AstropyQuantityUpdated
pixel_sizeto use AstropyQuantity
15.4.0
Added PDM version number to entity metadata
Added
do_pstboolean toLowCBFConfigurationto indicate that the standard correlation set-up will be used for PST observingChanged
SubarrayBeamConfigurationfieldnumber_of_channelsto optional
15.3.0
Introduced entity reference version into the status entity schemas.
Added
PointingKind.SpiralandSpiralParameterspointing pattern to support holography observations.Added
EquatorialCoordinatesPSTcoordinate model to support tied array beam observations
15.2.0
Make a uniform style for enums in the PDM for the names and values of status entities.
15.1.0
Added
midcbfinCSPConfiguration
15.0.0
[Breaking] Updated mccs_allocation to support changes in MCCS Schema
[Breaking] Updated lowcbf within csp_configuration
[Breaking] Pulled SubArrayLOW and SubArrayMID into _shared
[Breaking] Renamed scan_duration to scan_duration_ms in ScanDefinition to reflect the dump value units
[Breaking] Removed obsolete subarray_beam_configurations and target_beam_configurations from SBDefinition
Dependency updates:
Astropy >=5.0.3,<7
Black >22.10.0
14.3.0
Moved Elevation to top level of observation
Changed integration to integration_time for the observation_set in proposal
Added support for non-sidereal targets known to KatPoint using reference frame ‘special’
14.2.0
DO NOT USE
14.1.0
Added support for Project status entity.
14.0.1
Override pipeline runner images in CI lint/test jobs.
Remove explicit Pydantic dependencies.
Minor dependency updates.
14.0.0
Various changes to the Proposal model, including:
[BREAKING] Renames
Proposal.proposal_idtoprsl_id[BREAKING] Renames
Investigators.proposal_investigator_idtoinvestigator_id[BREAKING] Renames
Proposal.proposal_infotoinformation[BREAKING] Changes the shape of
observation_set.Suppliedto contain a nestedquantityfield.[POSSIBLE BREAKING] A number of fields that were optional are now mandatory. Default values (e.g.
[]) should make this safe, but your code may break if it expects aNoneStandardisation of all fields that have value and unit components to use the standard ‘quantity’ object
Implementation of standard types where applicable
Addition of ENUM’s to further improve the quality of the information stored
Additional sample test files and tests added to work with the updated structure, including both Draft & Submitted status variations Union’s added so that information can be stored as applicable with reduced wasted content
Simple descriptions added to fields with a view that these will be extended, which will add in future updates
ID fields now use type aliases from
_shared.idsStructure extended so that results from sensitivity calculations are stored for later referencing
Adds static type checking (enforced by Pyright) to our code linting.
13.0.1
Remove classmethod property (deprecated in Py3.11) ‘kind’ from base classes PythonProcedure and PointingPatternParameters to silence warnings.
13.0.0
[BREAKING] Renames
EBStatustoOSOEBStatus[BREAKING] Changes status history reference fields from *_id to *_ref for consistency.
StatusHistory entities now default to a
Metadata(version=1)
12.0.1
fix: RequestResponse.response_received_at was mandatory rather than optional.
12.0.0
Adopts Pydantic for all PDM objects.
Unifies formerly auto-generated models and hand-written models.
Unifies models and serialisation schemas, removing all Marshmallow schemas.
New ‘source of truth’: OpenAPI schema yaml is generated from Python code.
sb_definition.ScanDefinition.pointing_correctionis non-nullable, with a default value ofMAINTAIN.EquatorialCoordinates.unitandHorizontalCoordinates.unitare now always a two-element tuple (array in JSON) - previously it could be a single string if both axes of the reference frame had the same units.Added
RadialVelocitytoTargetobject representation shared byProposalInfoandSBDefinition.[BREAKING] Pydantic models do not accept positional arguments. Previously, many objects required keyword arguments, but some allowed positional.
[BREAKING]
ResponseResponseandResponseErrorrenamed toResponseWrapperandErrorWrapper.[BREAKING] Pydantic models enforce runtime correctness. Attempting to instantiate an object with invalid data will raise a
ValidationError[BREAKING]
schemas,generatedandentitiesremoved: Import directly fromska_oso_pdmor from an entity-specific subpackage e.g.ska_oso_pdm.proposal[BREAKING]
proposal.ProposalInfo.targetsis now a list ofTargetobjects:proposal.Targetandsb_definition.Targetare now a single, unified representation.[BREAKING] Many field names changed to add
_refsuffix to distinguish between inline objects and references to IDs of other objects.[POSSIBLE BREAKING] Datetime strings in JSON use
Z(Zulu time) instead of+00:00to indicate UTC. These are equivalent under ISO 8601.