Tmtccmd

Latest version: v8.0.3

Safety actively analyzes 681844 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 4 of 8

4.0.0rc2

Fixed

- Use custom package discovery in `pyproject.toml` similarly how to discovery
was handled in `setup.cfg`. Auto-Discovery was problematic, package is not discovered
correctly.

4.0.0rc1

4.0.0rc0

- `spacepackets` version 0.14.0rc3

Changed

Logging

The usage of the `logging` library now is a lot more pythonic and more
aligned to the recommended way to use the logger. The `get_console_logger` has become deprecated.
Users are encouraged to create custom application loggers using `logging.getLogger(__name__)`.
It is also possible to apply the library log format to an application logger using
`tmtccmd.logging.add_colorlog_console_logger`.

- Mark `get_console_logger` as deprecated.
- New `tmtccmd.init_logger` method to set up library logger.
- The logging default init function does not set up an error file logger anymore.
- (breaking) Rename `set_up_colorlog_logger` to `add_colorlog_console_logger`.

Added

- New `add_error_file_logger` function.

4.0.0a3

- `spacepackets` version 0.14.0rc2

Added

- `tmtccmd.com.ComInterface`: Added two new generic exceptions:
- `ReceptionDecodeError` for generic decoder errors on packet reception.
- `SendError` for generic send errors when sending packets.
- `tmtccmd.pus.pus_20_fsfw_params_defs`: New `ParameterId` and `Parameter` helper
dataclasses. Also added `Service20ParamDumpWrapper` helper class
to help with the deserialization of parameters. The helper classes can be used both
for TC and TM handling. Create new API set to create the `Parameter` classes for common
parameter types.
- `SetupParams` can now already include a COM interface instance.
- CLI arguments: Added the `--pp` or `--prompt-proc` argument which only has meaning when used
together with the listener flag (`-l`). It should cause the main application to prompt for
a procedure (but still go to listener mode after the procedure).

Changed

Argument parsing and Core modules

- (breaking): `tmtccmd.config.hook.TmTcCfgHookBase` renamed to `tmtccmd.config.hook.HookBase`.
- (breaking): The `PostArgsParsingWrapper` constructor now expects a `SetupParams` parameter and
caches it.
All `set_*` methods now do not expect the `SetupParams` to be passed explicitely anymore.
- (breaking): The `PreArgsParsingWrapper` now expects a `setup_params` parameter to be passed to the
`parse` method. The parameter helper will be cached in the created `PostArgsParsingWrapper`.
- `args_to_params_tmtc` now expects an `assign_com_if` method and can assign a COM interface
when it is passed. It oftentimes makes sense to determine a valid COM interface
(and prompt applicable parameters from the user) before prompting procedure parameters.
The new behaviour is the default when using the `PostArgsParsingWrapper`.

PUS modules

- (breaking): Renamed `tmtccmd.*.*20_params.py` to
`tmtccmd.*.*20_fsfw_param.py` to reflect these modules are tailored
towards usage with the FSFW.
- (breaking): Reworked `tmtccmd.tm.pus_20_fsfw_params` by simplifying `Service20FsfwTm`
significantly. It only implements `AbstractPusTm` now and is a simple wrapper
around `PusTelemetry`, which is exposed as a `pus_tm` member.
- (breaking): Renamed `tm.pus_5_event` to `tm.pus_5_fsfw_event` to better reflect these modules
are tailored towards usage with the FSFW
- (breaking): Simplified `Service5Tm` significantly. It only implements `AbstractPusTm` now and
is a more simple wrapper around `PusTelemetry` exposing some FSFW specific functionality.
- (breaking): Renamed `tmtccmd.*.*200_fsfw_modes` to `tmtccmd.*.*200_fsfw_mode` and
`tmtccmd.*.*20_fsfw_params` to `tmtccmd.*.*20_fsfw_param` for consistency.
- `tmtccmd.tc.pus_20_params.py`: Create new `crate_fsfw_load_param_cmd` and
deprecate the former `pack_fsfw_load_param_cmd` function.

Other

- (breaking): `DefaultPusQueueHelper`: `seq_cnt_provider`, `pus_verificator`
and `default_pus_apid` (formerly `pus_apid`) do not have default values anymore
and need to be specified explicitely.
- (breaking): Renamed `tmtccmd.config.com.ComIfCfgBase` to `ComCfgBase`
- (breaking): `tmtccmd.com.ComInterface`: Change `get_id` to `id` property.
- (breaking): TCP (`tmtccmd.com.TcpSpacePacketsComIF`) and `tmtccmd.com.UdpComIF`:
Remove `max_recv_size` argument and replace it with 4096 where it was used.
- (breaking): TCP: Renamed `tmtccmd.com.TcpComIF` to `tmtccmd.com.TcpSpacePacketsComIF` to better
reflect this interface sends and expects space packets.
- (breaking) TCP: The TCP communication interface now expects a generic `Sequence[PacketId]`
instead of a tuple of raw packet IDs. This makes usage more ergonomic.
- (possibly breaking): Rename `com_if` module to `com`.
- (breaking): `tmtccmd.tc.queue.DefaultPusQueueHelper`: The timestamp length of time tagged
telecommands needs to be specified explicitely now (no default value of 4).

Fixed

- TCP: Actually use the TM polling frequency parameter now in the TM reception thread.
- TCP: The `data_available` API now works properly by always converting the internal unparsed
TM queue to the TM packet list and returning its length.

4.0.0a2

Added

- Added `apid` and `seq_count` optional arguments back to generic
(not FSFW specific) TC constructors.
- Cleaned up telecommand and telemetry code, removed a lot of obsolete
functionality

Changed

- (breaking) `pus` module: Renamed `pus_?...` modules to `s?_...`. These modules
now re-export all their definitions and everything in their similarly
named `tm` and `tc` modules.
- (breaking) `pus.pus_8_funccmd`: Renamed `Subservices` to `CustomSubservice`
- TC creation API: Replace `generate_...` API with `create_...` API for consistency
- (breaking) Renamed `Subservices` to `Subservice`, use singular enum because they are not
flag enums.
- (breaking) `pus_200_fsfw_mode`: Rename `Modes` to `Mode`.
- Subservice enumerations: Add missing `TM_...` and `TC_...` prefixes where applicable
- Use concrete `spacepackets` version 0.14.0rc1

4.0.0a1

Fixed

- `enable_periodic_hk_command`: Remove third obsolete ssc argument

Page 4 of 8

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.