Change Log
All notable changes to this project will be documented in this file. This project adheres to Semantic Versioning.
1.9.2
Fixed
Result Code STARTED ignore in lrcr callback method
common method implemented for adding and removing command in progress objects
1.9.1
Added
Fixed the abort command issue by setting waitTermination to false, enabling immediate invocation of the abort operation.
Added a non-blocking TaskExecutor implementation for abort handling in ska-tmc-common and integrated it into BaseTmcComponentManager.
1.9.0
Added
Added invoke_lrc API in ska-tmc-common to standardize command invocation across all leaf nodes.
Implemented handling of invoke_lrc in the Restart Helper device.
1.8.0
Added
Added CommandCompletionTracker in ska-tmc-common for handling asynchronous command completion.
Moved wait_for_command_completion to common to reuse across components and reduce duplication.
1.7.0
Updated
Added repr method to DeviceInfo class.
Updated some INFO level logs to DEBUG level wherever appropriate.
1.6.0
Updated
Updated unsubscribe_event_async in event manager v2 to be more robust.
updated some logs to be debug level
Added repr to BaseTMCCommand and Base Adapter class
1.5.1
Updated
Updated common code for TmcLeafNodeComponentManager and TMCBaseLeafDevice
1.5.0
Updated
Added healthstate and healthinfo property and callbacks in TmcLeafNodeComponentManager
1.4.2
Updated
added capabilitystate in tmc_component_manager process event
1.4.1
Fixed
Fixed hard dependency issue for tango base and pytango
1.4.0
Added
Updated the pytango version to 10.1.0
updated the ska-tango-base version to 1.4.0
Updated the version of ska-tango-testing to 0.8.0
1.3.1
Updated
Added default value None to cm_register_command_mapping parameter in Restart helper class.
1.3.0
Updated
Updated Restart helper to include additional parameter i.e component manager’s register_command_mapping function as parameter and add command_class_id and unique id mapping when restart is invoked.
1.2.0
Updated
Remove SetOperateMode from ska-tmc-common.
1.1.1
Updated
Updated initialization of common packages and remove the unused classes in init.py
1.1.0
Updated
Updated DishAdpater to support new Configureband command
1.0.0
Fixed
Fixed RTD issues
Fixed docs-build warnings
Fixed CHANGELOG
Updated
Removed test helper devices.
Updated RTD structure
Update tmc-common RTD inline with the documentation updates made on other repos
Added
Added test cases to test helper_adapter_factory,tmc_base_leaf_device and tmc_component_manager_v2
[0.35.1]
Updated
Updated DishHelper class to support ArrayLayout file parsing for dish related information.
[0.35.0]
Updated
Added support for providing update task status function name to command tracker
[0.34.0]
Updated
Added option to use command_id as an instance variable of either the ComponentManager class or the Command class.
This flexibility has been added to support parallel processing of commands on the CentralNode.
[0.33.0]
Updated
Default values for GPM attributes (gpmVersion=”UNKNOWN”, gpmValidationResult=UNKNOWN)
Logic for memorized attribute gpmVersion
Startup test coverage for default attribute initialization.
[0.32.0]
Updated
Version 3 of dish helper will be able to grab layout file from mounted PV and parse the layout file to get dish related information.
[0.31.0]
Updated
Updated ApplyPointingModel command for Dish Leaf Node helper
Added
new attribute gpmVersion to track the applied GPM version per band.
new attribute gpmValidationResult to report validation state per band.
[0.30.3]
Fixed
Fixed bad release 0.30.2
Avoid releasing version “2”, released by mistake
[0.30.2]
Fixed
Fixed the bug SKB-918 and SKB-1013
Fixed helper sdp subarray to accept any scan_type provided
[0.30.1]
Added
Introduced LRCR on Abort command completion for Dish leaf node
[0.30.0]
Added
CommandTimeout attribute is introduced which can help to update timeout without redeployment.
CommandTimeOutDefault property is introduced which can be used to set default value at the time of deployment.
[0.28.9]
Updated
Updated dish leaf node helper to stop command threads once Abort is received.
[0.28.8]
Added
To resolve SKB-617 Updated helper method logic to validate execution_block and its internal fields only if it is present.
Added Unit test case to verify the logic.
[0.28.7]
Added
Helper Dish Device updated to make it stuck in particular dish mode.
[0.28.6]
Fixed
HelperSdpSubarray is now able to push Fault ObsState event in ReleaseAllResources command.
[0.28.5]
Added
Added faults to simulate command failure on LRCR and subsystem stuck in intermediate state
[0.28.4]
Fixed
Return value of restart command helper methods changed to tuple of list
[0.28.3]
Fixed
Fixed adminmode not allowed in adminmode engineering
[0.28.2]
Added
Added faults to simulate command rejection from subsystem and subsystem going into FAULT obsstate
[0.28.1]
Updated
Updated the Subarray leaf node Restart() command to perform the functionality of Abort() command too.
[0.28.0]
Added
Added Restart helper class for abort-restart flow as a part of restart command
Exception raised when device is fault for helper sdp subarray
[0.27.7]
Added
Added the adapters for MCCS , SDP, CSP subarray leaf node
Improved the logic for adapter creation
[0.27.6]
Updated
Updated helper devices for Abort exception propagation
[0.27.5]
Fixed
Fix issue in event manager
[0.27.4]
Updated
Update helper HelperMCCSController for fault injection in restart command
[0.27.3]
Updated
Updated dish device abort implementation to stop all the timers.
[0.27.2]
Updated
Improved multithreading capability of component manager
[0.27.1]
Updated
Improved command callback tracker
[0.27.0]
Updated
Improved Code coverage
Changed the abort operation API name from AbortCommands to Abort in HelperDishLeafNodeDevice
[0.26.5]
Updated
Updated Abort API interface for Dish
[0.26.4]
Updated
Updated SDP subarry helper device to induce error during receiveaddress push change event
[0.26.3]
Updated
Updated Abort and Restart API’s to support asynchronous execution of commands
Updated SDP subarry helper device to induce error during Abort and Restart commands
[0.26.2]
Updated
Added common aggregation process class and aggregator class.
Update lock in observable module to fix bug HM-653.
[0.26.1]
Updated
Added changes in the logs as per Logging Guidelines.
Update livelinessprobe to remove redundant logging and implememted pretty printing for logs containing json data.
[0.26.0]
Updated
Added new class EventManager to manage event subscriptions/umsubscriptions and event errors.
Updated component manager and liveiness probe classes to co-ordinate with new event manager functionality.
[0.25.2]
Updated
Handled signature inconsistencies in event update methods.
Event Handler methods updated for queue based processing.
[0.25.1]
Added
Added Abort command in MCCS master leaf node adapter
Fixed
Delay provided to allocate command of MCCS Master Leaf Node
[0.25.0]
Updated
Updated ska-tango-base to v1.2.0
[0.24.10]
Fixed
Fixed SKB-732
[0.24.9]
Updated
Updated event receiver handlers to introduce queue based processing
[0.24.8]
Updated
Updated SDP subarry helper device to induce error during Scan command
[0.24.7]
Added
Implemented the SetAdminMode command for helper leaf devices
[0.24.6]
Updated
Updated helper dish device to push dish subsystems LRCR events (same as DishManager)
[0.24.5]
Added
admin mode attribute added for csp, sdp and mccs subarray leaf node helper devices
[0.24.4]
Fixed
Fix command id’s for Track and TrackLoadStaticOff commands on helper dish device.
[0.24.3]
Added
Exception check added which is received before registering the observer
[0.24.2]
Fixed
Fixed issue with observers list.
Fixed issue with backward compatibility by adding files back to ska_tmc_common folder.
[0.24.1]
Fixed
Resolved bug SKB-658 on TMC Central Node and SubarrayNode
[0.24.0]
Added
Add common functionality of adminMode in ska-tmc-common
[0.23.2]
Updated
Updated SDP Subarray leaf node.
[0.23.1]
Fixed
Resolved bug SKB-658 on TMC Leaf Nodes
[0.23.0]
Added
Adding Admin mode functinality in helper devices
[0.22.16]
Added
Enable induce_fault functionality in HelperSDPSubarray
[0.22.15]
Updated
Update the helper dish master to send pointing state slew before track in track command.
[0.22.14]
clean up method of observable called before calling update task status
[0.22.13]
Update the helper mccs subarray device to push change the result after obsstate scanning
[0.22.12]
Fixed dish master Trackstop command to stop Track command.
Added dishMode property in dish adpaters.
[0.22.11]
SN will check for LRCR from all the subsystems and hence Updated subarry leaf node and dish leaf node helpers to support Scan command completion by sending LRCRs
[0.22.10]
Updated HelperSubarrayDevice to push chant event for longrunningcommandresult attribute for Scan command.
[0.22.9]
Fixed SKB-618(Fix KeyError for Missing ‘resources’ Key in SDP Subarray AssignResources Command)
[0.22.8]
Updated SetPointingOffset to NextPointingOffset in DishlnPointingDeviceAdapter.
[0.22.7]
Updated ChangePointingOffsets to SetPointingOffset in DishlnPointingDeviceAdapter.
[0.22.6]
Updated received addresses value.
[0.22.5]
Added DishLeaf Node pointing device adapter.
Added properties and methods to the DishLeaf node pointing device adapter.
[0.22.2]
Added change_event for band params in helper dish device.
[0.22.2]
Added trackTableLoadMode attribute on the helper dish device.
[0.22.1]
Updated helper dish devices to support Dish error proagation testing on TMC SubarrayNode
[0.22.0]
Updated Command ApplyPointingModel in HelperDishDevice and HelperDishLeafnode
[0.21.1]
Resolved skb-536.
SDP Subarray Device is able to go to ABORTING state before ABORTED.
[0.21.0]
Update error propagation to event based.
Removed usage of tracker thread.
Added new classes Observer, Observable and CommandCallbackTracker.
[0.20.5]
Update helper dish device to simulate the error propagation and timeout scenarios
[0.20.4]
Update output_host and output_port values in receive addresses.
[0.20.3]
Enable error propagation and timeout simulation for helper dish commands
[0.20.2]
Fixed bug related to full trl usage in liveliness probe.
[0.20.1]
Fixed dish and dish leaf node helper devices to push change event for dishMode.STANDBY_FP when AbortCommands() command is invoked.
[0.20.0]
Updated liveliness probe to utilize state command and consider exported flag for device availability.
[0.19.8]
Update HelperDishDevice to support Dish error propgation
[0.19.7]
Abort event cleared in tracker thread
[0.19.6]
Include induce fault mechanism in sdp helper device
[0.19.5]
Push lrcr command result for Helper Dish Device End Scan command
[0.19.4]
Fixed the issue in HelperBaseDevice to return faultmessage instead of command_id for FaultType.FAILED_RESULT .
[0.19.3]
Added TMCBaseLeafDevice
[0.19.2]
Add method in TMC base device to push change and archive events
[0.19.1]
Updating commandCallInfo attribute in TrackLoadStaticOff command
[0.19.0]
Added ApplyPointingModel command in helper dish device to handle global pointing json.
[0.18.0]
Utilise SKA Tel Model with OSO-TMC Configure schema v4.0 for ADR-99 changes
[0.17.12]
Fixed the issue in logManager
[0.17.11]
Fixed the issue of mock devices getting created in HelperAdapterFactory
[0.17.10]
Update logger statements
Added new class logManager for managing repetitive logs
[0.17.9]
Update TelModel version to 1.18.2
[0.17.8]
Allows any version of katpoint above 1.0a2
[0.17.7]
Fixed the helper dish device achievedPointing attribute to give timestamp in TAI with SKA Epoch.
[0.17.6]
Added delay for LongRunningCommandResult attribute in mccs master leaf node.
[0.17.5]
Utilised ska-telmodel v.1.18.1. which includes fix for jones key in low configure schema
Includes base classes upgrade changes.
[0.17.4]
TelModel version now can be anywhere between 1.17.1 and 2.0.0
[0.17.3]
Fixed helper mccs controller device timeout for allocate command.
[0.17.2]
Updated ska-telmodel v.1.17.0 which includes OET-TMC low Assignresources and low Configure schema
Included Base class v.1.0.0 updates.
[0.17.1]
Fixed change event for dish leaf node and dish device
[0.17.0]
BaseClasses version updated to 1.0.0
PyTango version updated to 9.5.0
Helper Devices updated to send the correct format of LongRunningCommandResult events - (unique_id, (ResultCode.OK, message))
The result sent through update_task_status method from track_and_update_command_status thread is now a Tuple(ResultCode, Message)
SetDelay command is renamed to SetDelayInfo for HelperSubarrayDevice and HelperDishDevice
SetException is removed from Helper Devices
Decorators are updated to support the new update_task_status calls.
HelperCspSubarrayDevice is removed.
COMMAND_NOT_ALLOWED fault type is changed to COMMAND_NOT_ALLOWED_BEFORE_QUEUING
New fault types COMMAND_NOT_ALLOWED_AFTER_QUEUING and COMMAND_NOT_ALLOWED_EXCEPTION_AFTER_QUEUING introduced
max_workers parameter removed from component manager
[0.16.10]
Utilised latest ska-telmodel which includes fix for jones key in low configure schema
[0.16.9]
Utilised ska-telmodel v.1.17.0 which includes OET-TMC low Assignresources and low Configure schema.
[0.16.8]
Update in the way the helper dish device sends the resultcode and message
Use push_command_result instead of push_command_status
[0.16.7]
Fix the dish unavailability issue observed in tmc-mid integration repository
Update achieved pointing events push logic in helper dish device
[0.16.6]
Fix issues in timeout_decorator and Error error_propagation_decorator
[0.16.5]
Revert the changes done in 0.16.2.
[0.16.4]
Added SdpQueueConnectorDeviceInfo class to hold SDP queue connector device information.
[0.16.3]
Fix dish leaf node helper device configure command dish mode event push issue.
[0.16.2]
Added Track command in dish master helper device.
Updated TrackLoadStaticOff in dish master helper device to include command Id changes.
[0.16.1]
HelperSubarray Devices no longer pushes events if the command invoked is Abort.
[0.16.0]
Added sourceOffset attribute to expose commanded offset during calibration scan.
Added sdpQueueConnectorFqdn attribute to process the pointing calibration received from SDP queue connector device.
Removed pointig_offsets and added pointing_cal attribute for Dish Id’s SKA001, SKA002, SKA003, SKA004, SKA036, SKA063 and SKA100 in SDP queue connector device.
[0.15.11]
Delay added for MCCS Subarray Configure command
[0.15.10]
Fixed Configure command of HelperDishLNDevice send pointingState and dishMode with delay interval
[0.15.9]
Fixed Scan Command of HelperSubarrayLeafDevice to directly send the ObsState event.
[0.15.8]
Removed duplicate set_change_event calls for the attributes inherited from the base classes
Utilised Timer thread to simulate pushing of the transitional and final obstate events
Updated DeviceInfo and child classes to implement their own locks
[0.15.7]
Updated Scan Command of HelperSubarrayLeafDevice to introduce a delay in ObsState event received on SubarrayNode.
[0.15.6]
Utilised ska-telmodel v1.15.1
[0.15.5]
Added a method remove_devices in liveliness probe to allow removal of devices from monitoring list.
[0.15.4]
is_command_allowed methods for all commands is removed from helper sdp subarray
[0.15.3]
Introduced dishMode and pointingState attributes on HelperDishLNDevice
[0.15.2]
Updated device availability to be True by default
Updated HelperDishDevice to add EndScan command to reset scanID attribute.
[0.15.1]
Updated push_command_result method from the HelperBaseDevice to take correct number of arguments
The sequence of executing cleanup and update_task_status method is reversed in the Tracker Thread
[0.15.0]
Updated Scan command interface to include scan_id as argument
EndScan command has been added in HelperDishLNDevice
scanID attribute has been introduced in HelperDishDevice
[0.14.0]
Updated
Update pytango v9.4.2
Variable SetisSubsystemAvailable is change to SetSubsystemAvailable
.darglint file to accomadate sphinx style rst documentation
TimeKeeper class added for handling timout functionality
Input type for start_tracker_thread method for param state_function is changed from Callable to str
timeout_decorator and error_propagation_decorator added for implementing timeout and error propagation functionalities respectively
Fixed
Fixed Pylint warnigs
Fixed docstrings warnings