fprime-gds 4.0.0a6__py3-none-any.whl → 4.0.0a8__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- fprime_gds/common/decoders/event_decoder.py +7 -1
- fprime_gds/common/distributor/distributor.py +3 -1
- fprime_gds/common/logger/__init__.py +2 -2
- fprime_gds/executables/cli.py +8 -1
- fprime_gds/executables/data_product_writer.py +3 -3
- {fprime_gds-4.0.0a6.dist-info → fprime_gds-4.0.0a8.dist-info}/METADATA +2 -2
- {fprime_gds-4.0.0a6.dist-info → fprime_gds-4.0.0a8.dist-info}/RECORD +12 -12
- {fprime_gds-4.0.0a6.dist-info → fprime_gds-4.0.0a8.dist-info}/WHEEL +0 -0
- {fprime_gds-4.0.0a6.dist-info → fprime_gds-4.0.0a8.dist-info}/entry_points.txt +0 -0
- {fprime_gds-4.0.0a6.dist-info → fprime_gds-4.0.0a8.dist-info}/licenses/LICENSE.txt +0 -0
- {fprime_gds-4.0.0a6.dist-info → fprime_gds-4.0.0a8.dist-info}/licenses/NOTICE.txt +0 -0
- {fprime_gds-4.0.0a6.dist-info → fprime_gds-4.0.0a8.dist-info}/top_level.txt +0 -0
@@ -22,6 +22,8 @@ from fprime_gds.common.decoders import decoder
|
|
22
22
|
from fprime_gds.common.decoders.decoder import DecodingException
|
23
23
|
from fprime_gds.common.utils import config_manager
|
24
24
|
|
25
|
+
import logging
|
26
|
+
LOGGER = logging.getLogger("event_decoder")
|
25
27
|
|
26
28
|
class EventDecoder(decoder.Decoder):
|
27
29
|
"""Decoder class for event data"""
|
@@ -67,7 +69,11 @@ class EventDecoder(decoder.Decoder):
|
|
67
69
|
while (ptr < len(data)):
|
68
70
|
|
69
71
|
# Decode event ID here...
|
70
|
-
self.id_obj.
|
72
|
+
if ptr + self.id_obj.getSize() <= len(data):
|
73
|
+
self.id_obj.deserialize(data, ptr)
|
74
|
+
else:
|
75
|
+
LOGGER.warning("Insufficient data for event ID")
|
76
|
+
break
|
71
77
|
ptr += self.id_obj.getSize()
|
72
78
|
event_id = self.id_obj.val
|
73
79
|
|
@@ -203,6 +203,8 @@ class Distributor(DataHandler):
|
|
203
203
|
try:
|
204
204
|
d.data_callback(msg)
|
205
205
|
except DecodingException as dexc:
|
206
|
-
LOGGER.warning("Decoding error
|
206
|
+
LOGGER.warning("Decoding error: %s", dexc)
|
207
|
+
except Exception as exc:
|
208
|
+
LOGGER.warning("Parsing error: %s", exc)
|
207
209
|
else:
|
208
210
|
LOGGER.warning("No decoder registered for: %s", data_desc_type.DataDescType(data_desc).name)
|
@@ -13,7 +13,7 @@ import sys
|
|
13
13
|
INITIALIZED = False
|
14
14
|
|
15
15
|
|
16
|
-
def configure_py_log(directory=None, filename=sys.argv[0], mirror_to_stdout=False):
|
16
|
+
def configure_py_log(directory=None, filename=sys.argv[0], mirror_to_stdout=False, log_level="INFO"):
|
17
17
|
"""
|
18
18
|
Configure the python logging. If logdir is supplied, our logs will go in that directory as a log file. Otherwise,
|
19
19
|
logs will go to the CLI.
|
@@ -40,6 +40,6 @@ def configure_py_log(directory=None, filename=sys.argv[0], mirror_to_stdout=Fals
|
|
40
40
|
for handler in handlers:
|
41
41
|
handler.setFormatter(formatter)
|
42
42
|
logging.getLogger().addHandler(handler)
|
43
|
-
logging.getLogger().setLevel(
|
43
|
+
logging.getLogger().setLevel(log_level)
|
44
44
|
logging.info("Logging system initialized!")
|
45
45
|
INITIALIZED = True
|
fprime_gds/executables/cli.py
CHANGED
@@ -829,6 +829,13 @@ class LogDeployParser(ParserBase):
|
|
829
829
|
"default": False,
|
830
830
|
"help": "Log to standard out along with log output files",
|
831
831
|
},
|
832
|
+
("--log-level-gds",): {
|
833
|
+
"action": "store",
|
834
|
+
"dest": "log_level_gds",
|
835
|
+
"choices": ["DEBUG", "INFO", "WARNING", "ERROR"],
|
836
|
+
"default": "INFO",
|
837
|
+
"help": "Set the logging level of GDS processes [default: %(default)s]",
|
838
|
+
},
|
832
839
|
}
|
833
840
|
|
834
841
|
def handle_arguments(self, args, **kwargs):
|
@@ -856,7 +863,7 @@ class LogDeployParser(ParserBase):
|
|
856
863
|
raise
|
857
864
|
# Setup the basic python logging
|
858
865
|
fprime_gds.common.logger.configure_py_log(
|
859
|
-
args.logs, mirror_to_stdout=args.log_to_stdout
|
866
|
+
args.logs, mirror_to_stdout=args.log_to_stdout, log_level=args.log_level_gds
|
860
867
|
)
|
861
868
|
return args
|
862
869
|
|
@@ -336,12 +336,12 @@ class DPHeader(BaseModel):
|
|
336
336
|
|
337
337
|
@computed_field
|
338
338
|
@property
|
339
|
-
def dataId(self) ->
|
339
|
+
def dataId(self) -> AliasType:
|
340
340
|
return self.header.get("FwDpIdType")
|
341
341
|
|
342
342
|
@computed_field
|
343
343
|
@property
|
344
|
-
def dataSize(self) ->
|
344
|
+
def dataSize(self) -> AliasType:
|
345
345
|
return self.header.get("FwSizeStoreType")
|
346
346
|
|
347
347
|
@model_validator(mode='after')
|
@@ -731,7 +731,7 @@ class DataProductWriter:
|
|
731
731
|
def get_record_data(self, headerJSON: DPHeader, dictJSON: FprimeDict) -> Dict[str, int]:
|
732
732
|
rootDict = {}
|
733
733
|
# Go through all the Records and find the one that matches recordId
|
734
|
-
rootDict['dataId'] = self.read_field(headerJSON.dataId.
|
734
|
+
rootDict['dataId'] = self.read_field(headerJSON.dataId.underlyingType)
|
735
735
|
for record in dictJSON.records:
|
736
736
|
if record.id == rootDict['dataId']:
|
737
737
|
print(f'Processing Record ID {record.id}')
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: fprime-gds
|
3
|
-
Version: 4.0.
|
3
|
+
Version: 4.0.0a8
|
4
4
|
Summary: F Prime Flight Software Ground Data System layer
|
5
5
|
Author-email: Michael Starch <Michael.D.Starch@jpl.nasa.gov>, Thomas Boyer-Chammard <Thomas.Boyer.Chammard@jpl.nasa.gov>
|
6
6
|
License:
|
@@ -241,7 +241,7 @@ Requires-Dist: openpyxl>=3.0.10
|
|
241
241
|
Requires-Dist: pyserial>=3.5
|
242
242
|
Requires-Dist: pydantic>=2.6
|
243
243
|
Requires-Dist: PyYAML>=6.0.2
|
244
|
-
Requires-Dist: spacepackets>=0.
|
244
|
+
Requires-Dist: spacepackets>=0.30.0
|
245
245
|
Requires-Dist: crc>=7.0.0
|
246
246
|
Dynamic: license-file
|
247
247
|
|
@@ -31,11 +31,11 @@ fprime_gds/common/data_types/sys_data.py,sha256=Xfk5xryFg7zWS3VcGUDx9lQYBTajjWXv
|
|
31
31
|
fprime_gds/common/decoders/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
32
32
|
fprime_gds/common/decoders/ch_decoder.py,sha256=mx0yfT-DQqQ8TrmRM3dr79eL9_E-c0gsKiKvvsjAu98,3849
|
33
33
|
fprime_gds/common/decoders/decoder.py,sha256=9j7u05_nwXaEjR0etsoB--ATsHuILYCXlhk9m9yajKg,2655
|
34
|
-
fprime_gds/common/decoders/event_decoder.py,sha256=
|
34
|
+
fprime_gds/common/decoders/event_decoder.py,sha256=ib-O18V5Z7bcnUUSDE9R0fU--bAZsfxLwuHXm964rzE,4505
|
35
35
|
fprime_gds/common/decoders/file_decoder.py,sha256=Ky2U8bli3YL6GbT9jSSvI73ySOtf0cdZLK4FXTuWjfA,2542
|
36
36
|
fprime_gds/common/decoders/pkt_decoder.py,sha256=kW8k3OSbMy96w6MzsGWp656lAQvwxrIznWkD3Sbi8Ig,3329
|
37
37
|
fprime_gds/common/distributor/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
38
|
-
fprime_gds/common/distributor/distributor.py,sha256=
|
38
|
+
fprime_gds/common/distributor/distributor.py,sha256=ay2b-eMuBEGzQwNoSBLK341CXxGnrFHSIcRKErzIQIU,7999
|
39
39
|
fprime_gds/common/encoders/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
40
40
|
fprime_gds/common/encoders/ch_encoder.py,sha256=TBrTJ7TK4WwCh6KAspozh63WcPxrMImloB8tz7qeulw,2878
|
41
41
|
fprime_gds/common/encoders/cmd_encoder.py,sha256=5wG5854ozmxctnYou3q9MdQNkTQEmpCiT4oBVgNRZdE,3499
|
@@ -78,7 +78,7 @@ fprime_gds/common/loaders/pkt_json_loader.py,sha256=OuHYXE0FP33oAh0z6AScUdLgFg9V
|
|
78
78
|
fprime_gds/common/loaders/pkt_xml_loader.py,sha256=ZS4qchqQnIBx0Tw69ehP8yqm1g_uYSQzmnijR3FxqJg,4795
|
79
79
|
fprime_gds/common/loaders/prm_json_loader.py,sha256=YCSg3PhVsJTD1FgY_h0i8wV3TNikcZSrczHCzrTM6JM,2896
|
80
80
|
fprime_gds/common/loaders/xml_loader.py,sha256=8AlTTHddJbJqUr6St-zJI8CTqoPuCNtNoRBmdwCorcg,14820
|
81
|
-
fprime_gds/common/logger/__init__.py,sha256=
|
81
|
+
fprime_gds/common/logger/__init__.py,sha256=TLUbrAnkCtckKGsLzh4hXgEshwQfZsWMDaOOt369BqU,1463
|
82
82
|
fprime_gds/common/logger/data_logger.py,sha256=VjfhTGO1gGw954xNhSc0_zpw8JexCho5f8BlXDEYkL4,2505
|
83
83
|
fprime_gds/common/logger/test_logger.py,sha256=wL8Lq49sVmxGRALgv-ei6AnXFh79qlHFehmKJ1A8X28,6475
|
84
84
|
fprime_gds/common/models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -117,9 +117,9 @@ fprime_gds/common/utils/event_severity.py,sha256=7qPXHrDaM_REJ7sKBUEJTZIE0D4qVnV
|
|
117
117
|
fprime_gds/common/utils/string_util.py,sha256=u_2iahRG3ROu3lAAt_KVcK226gEByElXqrA8mH8eDpI,3584
|
118
118
|
fprime_gds/executables/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
119
119
|
fprime_gds/executables/apps.py,sha256=u79T_PlgMmNmA4YwWjs7LvPMCJnrjnURr05NMthOYP0,13350
|
120
|
-
fprime_gds/executables/cli.py,sha256=
|
120
|
+
fprime_gds/executables/cli.py,sha256=SfKL8UZL2aR_YwcG8_4ndZeLxdvgnZOlfIF2yGr1zKo,50729
|
121
121
|
fprime_gds/executables/comm.py,sha256=08rO0o0MJgTRngB7Ygu2IL_gEAWKF7WFvFyro1CqReE,5214
|
122
|
-
fprime_gds/executables/data_product_writer.py,sha256=
|
122
|
+
fprime_gds/executables/data_product_writer.py,sha256=PGNju52vjfg7-AUURFojmMV8S83Tzy58Hyti5tmpffc,35821
|
123
123
|
fprime_gds/executables/fprime_cli.py,sha256=CMoT7zWNwM8h2mSZW03AR96wl_XnZXoLNiOZN_sDi38,12431
|
124
124
|
fprime_gds/executables/run_deployment.py,sha256=Zl0Y9-6i6c8tZhcS7XkAeVQtzn0d9fV-3UJQZ0bnBrc,7237
|
125
125
|
fprime_gds/executables/tcpserver.py,sha256=KspVpu5YIuiWKOk5E6UDMKvqXYrRB1j9aX8CkMxysfw,17555
|
@@ -238,10 +238,10 @@ fprime_gds/flask/static/third-party/webfonts/fa-solid-900.woff2,sha256=mDS4KtJuK
|
|
238
238
|
fprime_gds/plugin/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
239
239
|
fprime_gds/plugin/definitions.py,sha256=QlxW1gNvoiqGMslSJjh3dTFZuv0igFHawN__3XJ0Wns,5355
|
240
240
|
fprime_gds/plugin/system.py,sha256=M9xb-8jBhCUUx3X1z2uAP8Wx_v6NkL8JeaFgGcMnQqY,13432
|
241
|
-
fprime_gds-4.0.
|
242
|
-
fprime_gds-4.0.
|
243
|
-
fprime_gds-4.0.
|
244
|
-
fprime_gds-4.0.
|
245
|
-
fprime_gds-4.0.
|
246
|
-
fprime_gds-4.0.
|
247
|
-
fprime_gds-4.0.
|
241
|
+
fprime_gds-4.0.0a8.dist-info/licenses/LICENSE.txt,sha256=z8d0m5b2O9McPEK1xHG_dWgUBT6EfBDz6wA0F7xSPTA,11358
|
242
|
+
fprime_gds-4.0.0a8.dist-info/licenses/NOTICE.txt,sha256=vXjA_xRcQhd83Vfk5D_vXg5kOjnnXvLuMi5vFKDEVmg,1612
|
243
|
+
fprime_gds-4.0.0a8.dist-info/METADATA,sha256=LQafB-nq76AfTT18Hgog3D2SZVDsSfDTi97SSn8W6_0,24549
|
244
|
+
fprime_gds-4.0.0a8.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
245
|
+
fprime_gds-4.0.0a8.dist-info/entry_points.txt,sha256=qFBHIR7CZ5CEeSEdZ-ZVQN9ZfUOZfm0PvvDZAAheuLk,445
|
246
|
+
fprime_gds-4.0.0a8.dist-info/top_level.txt,sha256=6vzFLIX6ANfavKaXFHDMSLFtS94a6FaAsIWhjgYuSNE,27
|
247
|
+
fprime_gds-4.0.0a8.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|