fprime-gds 3.6.2a1__py3-none-any.whl → 4.0.0a2__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.
Files changed (44) hide show
  1. fprime_gds/common/communication/adapters/uart.py +34 -25
  2. fprime_gds/common/decoders/ch_decoder.py +1 -1
  3. fprime_gds/common/decoders/event_decoder.py +2 -1
  4. fprime_gds/common/decoders/pkt_decoder.py +1 -1
  5. fprime_gds/common/distributor/distributor.py +2 -2
  6. fprime_gds/common/encoders/ch_encoder.py +2 -2
  7. fprime_gds/common/encoders/cmd_encoder.py +2 -2
  8. fprime_gds/common/encoders/event_encoder.py +2 -2
  9. fprime_gds/common/encoders/pkt_encoder.py +2 -2
  10. fprime_gds/common/encoders/seq_writer.py +2 -2
  11. fprime_gds/common/fpy/__init__.py +0 -0
  12. fprime_gds/common/fpy/serialize_bytecode.py +229 -0
  13. fprime_gds/common/fpy/types.py +203 -0
  14. fprime_gds/common/gds_cli/base_commands.py +1 -1
  15. fprime_gds/common/handlers.py +39 -0
  16. fprime_gds/common/loaders/fw_type_json_loader.py +54 -0
  17. fprime_gds/common/loaders/pkt_json_loader.py +121 -0
  18. fprime_gds/common/loaders/prm_json_loader.py +85 -0
  19. fprime_gds/common/pipeline/dictionaries.py +21 -4
  20. fprime_gds/common/pipeline/encoding.py +19 -0
  21. fprime_gds/common/pipeline/histories.py +4 -0
  22. fprime_gds/common/pipeline/standard.py +16 -2
  23. fprime_gds/common/templates/prm_template.py +81 -0
  24. fprime_gds/common/testing_fw/api.py +42 -0
  25. fprime_gds/common/testing_fw/pytest_integration.py +25 -2
  26. fprime_gds/common/tools/README.md +34 -0
  27. fprime_gds/common/tools/params.py +246 -0
  28. fprime_gds/common/utils/config_manager.py +6 -6
  29. fprime_gds/executables/apps.py +184 -11
  30. fprime_gds/executables/cli.py +443 -125
  31. fprime_gds/executables/comm.py +5 -2
  32. fprime_gds/executables/fprime_cli.py +3 -3
  33. fprime_gds/executables/run_deployment.py +12 -4
  34. fprime_gds/flask/static/js/vue-support/channel.js +1 -1
  35. fprime_gds/flask/static/js/vue-support/event.js +1 -1
  36. fprime_gds/plugin/definitions.py +86 -8
  37. fprime_gds/plugin/system.py +171 -58
  38. {fprime_gds-3.6.2a1.dist-info → fprime_gds-4.0.0a2.dist-info}/METADATA +18 -19
  39. {fprime_gds-3.6.2a1.dist-info → fprime_gds-4.0.0a2.dist-info}/RECORD +44 -35
  40. {fprime_gds-3.6.2a1.dist-info → fprime_gds-4.0.0a2.dist-info}/WHEEL +1 -1
  41. {fprime_gds-3.6.2a1.dist-info → fprime_gds-4.0.0a2.dist-info}/entry_points.txt +2 -0
  42. {fprime_gds-3.6.2a1.dist-info → fprime_gds-4.0.0a2.dist-info/licenses}/LICENSE.txt +0 -0
  43. {fprime_gds-3.6.2a1.dist-info → fprime_gds-4.0.0a2.dist-info/licenses}/NOTICE.txt +0 -0
  44. {fprime_gds-3.6.2a1.dist-info → fprime_gds-4.0.0a2.dist-info}/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.2
1
+ Metadata-Version: 2.4
2
2
  Name: fprime-gds
3
- Version: 3.6.2a1
3
+ Version: 4.0.0a2
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:
@@ -240,10 +240,12 @@ Requires-Dist: Jinja2>=2.11.3
240
240
  Requires-Dist: openpyxl>=3.0.10
241
241
  Requires-Dist: pyserial>=3.5
242
242
  Requires-Dist: pydantic>=2.6
243
+ Requires-Dist: PyYAML>=6.0.2
244
+ Dynamic: license-file
243
245
 
244
246
  # F´ GDS
245
247
 
246
- **Note:** This README describes GDS internals. Refer to the [user's guide](https://nasa.github.io/fprime/UsersGuide/gds/gds-introduction.html) for instructions on how to use the GDS.
248
+ **Note:** This README describes GDS internals. Refer to the [ Documentation](https://fprime.jpl.nasa.gov/latest/docs/user-manual/overview/gds-introduction/) for instructions on how to use the GDS.
247
249
 
248
250
  Issues should be reported here: [File an issue](https://github.com/nasa/fprime/issues/new/choose)
249
251
 
@@ -268,7 +270,8 @@ output data type included. Command data objects are created in the command panel
268
270
  the command encoder registered to that panel. Encoders take a data object and turn it into binary
269
271
  data that can be sent to the F´ deployment. The binary data is then passed to the TCP client
270
272
  which is registered to the encoder. Finally, the TCP client send the data back to the TCP server and
271
- the F´ deployment. ![The layout of the GDS](https://github.com/nasa/fprime/blob/devel/docs/UsersGuide/media/gds_layout.jpg)
273
+ the F´ deployment.
274
+ ![The layout of the GDS](https://raw.githubusercontent.com/nasa/fprime/refs/heads/devel/docs/img/gds_layout.jpg)
272
275
 
273
276
  All of these objects are created and registered to other objects when the GDS
274
277
  is initialized. Thus, all of the structure of the GDS is created in one place,
@@ -285,15 +288,11 @@ commands and registering consumers to the GDS decoders. The Standard Pipeline ca
285
288
  [here](src/fprime_gds/common/pipeline/standard.py).
286
289
 
287
290
  ### GDS Integration Test API
288
- The Integration Test API is a tool that provides the ability to write integration-level tests for an
289
- F´ deployment using the GDS. The tool provides history searches/asserts, command sending, a
290
- detailed test log, sub-histories and convenient access to GDS data objects. The test API comes with
291
- separate [documentation](https://github.com/nasa/fprime/blob/master/docs/UsersGuide/dev/testAPI/markdown/contents.md) and its own [user
292
- guide](https://github.com/nasa/fprime/blob/master/docs/UsersGuide/dev/testAPI/user_guide.md) and is built on top of the Standard Pipeline.
291
+ The Integration Test API is a tool that provides the ability to write integration-level tests for an F´ deployment using the GDS. The tool provides history searches/asserts, command sending, a detailed test log, sub-histories and convenient access to GDS data objects. The test API comes with its own [user guide](https://fprime.jpl.nasa.gov/latest/docs/user-manual/gds/gds-test-api-guide/) and is built on top of the Standard Pipeline.
293
292
 
294
293
  ## GDS GUI Usage
295
294
 
296
- A guide for how to use the GDS is available in the [fprime documentation](https://nasa.github.io/fprime/UsersGuide/gds/gds-introduction.html)
295
+ A guide for how to use the GDS is available in the [F Prime documentation](https://fprime.jpl.nasa.gov/latest/docs/user-manual/overview/gds-introduction)
297
296
 
298
297
  ## Classes
299
298
  The GDS back end is composed of several different data processing units. For
@@ -316,8 +315,15 @@ that descriptor. Descriptor types include events, channels, packets, etc (a full
316
315
  enumeration can be found in (src/utils/data_desc_type.py). The binary data that
317
316
  the descriptor receives should be of the form:
318
317
 
319
- | Length (4 bytes) | Type Descriptor (4 bytes) | Message Data |
320
- | ---------------- | ------------------------- | ------------ |
318
+ ```mermaid
319
+ ---
320
+ title: "Binary format received by Distributors"
321
+ ---
322
+ packet-beta
323
+ 0-31: "Length [4 bytes]"
324
+ 32-63: "Type Descriptor [4 bytes]"
325
+ 64-95: "Message Data [variable length]"
326
+ ```
321
327
 
322
328
  The distributor should then pass only the message data along to the decoders.
323
329
 
@@ -433,10 +439,3 @@ pip install doxypypy
433
439
 
434
440
  Next, make `docs/py_filter` available in your system path however you see fit.
435
441
  Now you can run `doxygen Doxyfile` in the root directory to generate documentation in `docs/doxy/index.html`
436
-
437
- ## Notes
438
- - Currently, the models/common directory has command.py, event.py, and
439
- channel.py. These files must be present in order for the python dictionaries
440
- to be properly imported. However, they are empty and not used in the GDS.
441
- When we switch fully to XML dictionaries, these can go away.
442
-
@@ -2,7 +2,7 @@ fastentrypoints.py,sha256=2HO-tsTTZxpzYNd-BaLK3WDLknzCZKzb_yX2p3Ftqa8,4020
2
2
  fprime_gds/__init__.py,sha256=y2ljhCEHnvyfSDvXIEgBGIk8oHjjjjCWFxfddOGeYFk,115
3
3
  fprime_gds/version.py,sha256=dlUlfOKTsGaqz_L7TjhCVC-Vanx5cK67kdZlqcHCM8M,395
4
4
  fprime_gds/common/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
5
- fprime_gds/common/handlers.py,sha256=t2-st-C3Z486kfcu2cpf-wHJQmpaaHQYj1dyXJEMmSU,2632
5
+ fprime_gds/common/handlers.py,sha256=YyhuF4yg3d7tFgWmbvXfxLDHYgea6Z1hpFd2A27gVZY,4464
6
6
  fprime_gds/common/transport.py,sha256=uYXWkM8TYEYz1vfY4AEn0PF8Gu4tkYmJ5t4w1YY1yW8,10565
7
7
  fprime_gds/common/zmq_transport.py,sha256=E_iBZ5sA4JKB99MWSOM6XnPrO-mbFyRvD9eQp9te6-Y,12397
8
8
  fprime_gds/common/communication/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -13,7 +13,7 @@ fprime_gds/common/communication/updown.py,sha256=UhfCIIA2eM5g2FsIhOGJJH6HzHurUPg
13
13
  fprime_gds/common/communication/adapters/__init__.py,sha256=ivGtzUTqhBYuve5mhN9VOHITwgZjNMVv7sxuac2Ll3c,470
14
14
  fprime_gds/common/communication/adapters/base.py,sha256=i3mf4HC-4tuf4mNkhdXCKlngRhODyTriia2pw6XBoSQ,3393
15
15
  fprime_gds/common/communication/adapters/ip.py,sha256=vCDclpsb3rVRXSxKqdt9UfkM2M6oCxnsKdzbzhMc0kM,17074
16
- fprime_gds/common/communication/adapters/uart.py,sha256=6SrN42ShVjwNubFg-1YrO09o1uJtu1rFqeMpLDNWlW4,6647
16
+ fprime_gds/common/communication/adapters/uart.py,sha256=5WkA8xpQ8E7nv2DbN168fibz1l-GddJUKnf6Hcd4hvU,7194
17
17
  fprime_gds/common/controllers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
18
18
  fprime_gds/common/data_types/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
19
19
  fprime_gds/common/data_types/ch_data.py,sha256=RP9zSyzNcH0nJ3MYyW_IATnmnHYZ6d0KmoJUJantdBI,6111
@@ -24,28 +24,31 @@ fprime_gds/common/data_types/file_data.py,sha256=4_G9kf4ThC5NzkxnKa0xNYBdi8UDvZg
24
24
  fprime_gds/common/data_types/pkt_data.py,sha256=cxqUnsPte0ijF1E8F1_uglVKIJFAIQbpoBlmwRjMrJY,3405
25
25
  fprime_gds/common/data_types/sys_data.py,sha256=Xfk5xryFg7zWS3VcGUDx9lQYBTajjWXvwkgFK5EUCG4,2095
26
26
  fprime_gds/common/decoders/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
27
- fprime_gds/common/decoders/ch_decoder.py,sha256=qQOguQ8hlGnq9VxZUMUvNtzOPrvc2mziNWFlK8RQfP4,3842
27
+ fprime_gds/common/decoders/ch_decoder.py,sha256=mx0yfT-DQqQ8TrmRM3dr79eL9_E-c0gsKiKvvsjAu98,3849
28
28
  fprime_gds/common/decoders/decoder.py,sha256=9j7u05_nwXaEjR0etsoB--ATsHuILYCXlhk9m9yajKg,2655
29
- fprime_gds/common/decoders/event_decoder.py,sha256=fudUDyObFcGG3GiIHrPHmIrT4A6iCbbikEo16QW5XQs,4210
29
+ fprime_gds/common/decoders/event_decoder.py,sha256=BH1Q_489ZgBhqMutG-WwMGikpXsqiv-Jd2zZsHZBLnc,4280
30
30
  fprime_gds/common/decoders/file_decoder.py,sha256=Ky2U8bli3YL6GbT9jSSvI73ySOtf0cdZLK4FXTuWjfA,2542
31
- fprime_gds/common/decoders/pkt_decoder.py,sha256=puD3v9cUDrtZxulXo7b4rL3OPWWMygDJQnGJe6AcNLM,3315
31
+ fprime_gds/common/decoders/pkt_decoder.py,sha256=kW8k3OSbMy96w6MzsGWp656lAQvwxrIznWkD3Sbi8Ig,3329
32
32
  fprime_gds/common/distributor/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
33
- fprime_gds/common/distributor/distributor.py,sha256=HY0X8LpweH0EV1hozlFeSHE_Qwm4VuT5fy-abDldVS0,7776
33
+ fprime_gds/common/distributor/distributor.py,sha256=aQ9zAQJJot9MCllEoCuEK4ILTKEsBMYFBufTTzUtca0,7791
34
34
  fprime_gds/common/encoders/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
35
- fprime_gds/common/encoders/ch_encoder.py,sha256=2g2Xd_7AoqxUPmhaQAV1dfvmXn00ishqM5lNuqqa3o8,2857
36
- fprime_gds/common/encoders/cmd_encoder.py,sha256=fp5qYajKloUX-POYoagAhhppe57mrDLjpZOJzl5sFtc,3480
35
+ fprime_gds/common/encoders/ch_encoder.py,sha256=TBrTJ7TK4WwCh6KAspozh63WcPxrMImloB8tz7qeulw,2878
36
+ fprime_gds/common/encoders/cmd_encoder.py,sha256=5wG5854ozmxctnYou3q9MdQNkTQEmpCiT4oBVgNRZdE,3499
37
37
  fprime_gds/common/encoders/encoder.py,sha256=xgFFCi-qKEKG7T5Qfo-qIadSiY0NSnfDgQUBq21fMhw,2984
38
- fprime_gds/common/encoders/event_encoder.py,sha256=Thpa6aNHK_Q_mO_u3PlGohbR1oiqxCyPsWKdHq6GQVs,3121
38
+ fprime_gds/common/encoders/event_encoder.py,sha256=aM_3hWWx4OrLKF3-MlhmGSBYnzt-4iktSzMVrcUbfB8,3140
39
39
  fprime_gds/common/encoders/file_encoder.py,sha256=G9uUXQP-oD2eW_GJuGNBrN7xPafKFhmgKiNi-zvZz-g,3830
40
- fprime_gds/common/encoders/pkt_encoder.py,sha256=JthlbMIumPcaGDoDx7h9vI4rDb8Hvenr9pffTL7XCtU,3098
41
- fprime_gds/common/encoders/seq_writer.py,sha256=Zmj482qe_IQVx3EDmfXlPKKTJcEyDMRCWk28yc4C4-8,6863
40
+ fprime_gds/common/encoders/pkt_encoder.py,sha256=6hzwrAEg1tjGw9yGycWMuNgbGCoe87Cd-7eP1rvy2d4,3126
41
+ fprime_gds/common/encoders/seq_writer.py,sha256=rH1I8trAHBKjqxQtNg1isTmLWqAjK3xtZbETTCp6RQI,6882
42
42
  fprime_gds/common/files/File Decoder Documentation.txt,sha256=a-VYHcUMqh7mBGY2fqvMf1nd3gdg3cLdPKwrulNKXjc,5314
43
43
  fprime_gds/common/files/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
44
44
  fprime_gds/common/files/downlinker.py,sha256=CZPfhH0J9-LNqW5Cv_ryicLTuoedLSWK8OPQmmQDZZY,7498
45
45
  fprime_gds/common/files/helpers.py,sha256=sGaxcczXmZ5_soawT7x_eJ_cC2PZ6KOGBfusAV4QC_g,7219
46
46
  fprime_gds/common/files/uplinker.py,sha256=lgqhlgeipBt3Arx-ohzK8vCdS54fKpv9Rg7SUTocUX8,13244
47
+ fprime_gds/common/fpy/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
48
+ fprime_gds/common/fpy/serialize_bytecode.py,sha256=RbBojtDGUjZyqGqKfqzJDLzU0Z9UBsNGaKMf8y2Qz7o,7283
49
+ fprime_gds/common/fpy/types.py,sha256=XeDG6E_cm57lpG4wEdZuoGgtEJeSO8WmkCsIBbwWoQc,6143
47
50
  fprime_gds/common/gds_cli/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
48
- fprime_gds/common/gds_cli/base_commands.py,sha256=RTR183kLmWPO-WXdsvPi9x1Zt7y4OJjpCJpy89Uom_Y,9410
51
+ fprime_gds/common/gds_cli/base_commands.py,sha256=nHnzHRMXs9haRjiUmq-Ciu1DSo1BXtcVscByk1Ypsxo,9432
49
52
  fprime_gds/common/gds_cli/channels.py,sha256=S8y0Mo2JbBFPvMzeW22HFVJ8p-UC-tzpYM7rXqIGWi4,2136
50
53
  fprime_gds/common/gds_cli/command_send.py,sha256=pMPwCixiuhk3r1mP7IbHLlItxYf_np8ez0hGhH0yTUw,6608
51
54
  fprime_gds/common/gds_cli/events.py,sha256=EpaUfDEaXvPwKu7qutkuU1f8zrFoVNsbyCIGUFUloWI,2123
@@ -64,8 +67,11 @@ fprime_gds/common/loaders/cmd_xml_loader.py,sha256=X-fCzLt1aCjqsDu-Exy2gSYDnh_TY
64
67
  fprime_gds/common/loaders/dict_loader.py,sha256=TasuICjsRYPWAsgmHGmsioxa8F7xmgAj9_UplzczylA,3990
65
68
  fprime_gds/common/loaders/event_json_loader.py,sha256=DPVJQ1wIY3r13rxTWrE9n7i6kSAF5m4jB-XRsxaRaDA,3572
66
69
  fprime_gds/common/loaders/event_xml_loader.py,sha256=Q3Vm7ROTVgolSp5umkNMp0Eh95sir6ZAyAegrSjkiis,2875
70
+ fprime_gds/common/loaders/fw_type_json_loader.py,sha256=Ybtfv0jNnzcTrnmFfi6EujAbLlA4Oocj3EMFBVRXlCM,2048
67
71
  fprime_gds/common/loaders/json_loader.py,sha256=YTvNkVRbaeDAKDs79J5RV7Z8zeO7x0_a8aIz5KLq9rA,9300
72
+ fprime_gds/common/loaders/pkt_json_loader.py,sha256=ZTNNeZymdA3G3r7XFO4S7sCYzfMnk4-XRyuOeudwNzM,4897
68
73
  fprime_gds/common/loaders/pkt_xml_loader.py,sha256=ZS4qchqQnIBx0Tw69ehP8yqm1g_uYSQzmnijR3FxqJg,4795
74
+ fprime_gds/common/loaders/prm_json_loader.py,sha256=YCSg3PhVsJTD1FgY_h0i8wV3TNikcZSrczHCzrTM6JM,2896
69
75
  fprime_gds/common/loaders/xml_loader.py,sha256=8AlTTHddJbJqUr6St-zJI8CTqoPuCNtNoRBmdwCorcg,14820
70
76
  fprime_gds/common/logger/__init__.py,sha256=YBrr9An0fZbp4kvphRl8nLfolkdBqFAsSGzEZXQiH6g,1448
71
77
  fprime_gds/common/logger/data_logger.py,sha256=VjfhTGO1gGw954xNhSc0_zpw8JexCho5f8BlXDEYkL4,2505
@@ -78,36 +84,39 @@ fprime_gds/common/models/common/event.py,sha256=gSFrCJT9ZddGJfkf3fGCCqk0aMIQV-SN
78
84
  fprime_gds/common/parsers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
79
85
  fprime_gds/common/parsers/seq_file_parser.py,sha256=6DZrA0jmt8IqsutfK7pdLtYn4oVHO593rWgAOH63yRg,9587
80
86
  fprime_gds/common/pipeline/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
81
- fprime_gds/common/pipeline/dictionaries.py,sha256=T79xD30tbTupcDcfL2VDRw0YY-lUMN7xTjLYP7pStgU,6733
82
- fprime_gds/common/pipeline/encoding.py,sha256=rMCBoZOrnLctl4QNlbMro_QiCQ4sapWjtcoFGfvO-WM,6631
87
+ fprime_gds/common/pipeline/dictionaries.py,sha256=CfK1umDA3Kg9YEwNu9Tp_iIWjQMdeXqOddpxBfUqXx8,7586
88
+ fprime_gds/common/pipeline/encoding.py,sha256=PttJ8NmXm75mLXyhlmxOJqE8RFt46q1dThaV19PyAr4,7216
83
89
  fprime_gds/common/pipeline/files.py,sha256=J2zm0sucvImtmSnv0iUp5uTpvUO8nlmz2lUdMuMC5aM,2244
84
- fprime_gds/common/pipeline/histories.py,sha256=P1TN6mFOe9f5cZ_a-vCDN9o94vM7ax9n6fQogfUCce0,3548
90
+ fprime_gds/common/pipeline/histories.py,sha256=7KyboNnm9OARQk4meVPSSeYpeqH0G8RWRiy0BLBL1rw,3671
85
91
  fprime_gds/common/pipeline/router.py,sha256=-P1wI0KXEh_snOzDaq8CjEoWuM_zRm8vUMR1T0oY9qQ,2327
86
- fprime_gds/common/pipeline/standard.py,sha256=k0QyPkRxjTMGFC-6O25LDxBQnAa5ibe1hj9cjjEPzOU,9325
92
+ fprime_gds/common/pipeline/standard.py,sha256=fDSPfyhYPMNhev5IQG2j51sCtQxXZ5PrqmulKH8TNjE,9778
87
93
  fprime_gds/common/templates/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
88
94
  fprime_gds/common/templates/ch_template.py,sha256=1MoDZsia0dI_CvnIttwyKLhbQhum35OcJnFc50Xohuo,3893
89
95
  fprime_gds/common/templates/cmd_template.py,sha256=Bdkfgjb9Yqw7zaZyS8fR9ZUebrkFsRofF0g7xpKtkE4,5180
90
96
  fprime_gds/common/templates/data_template.py,sha256=U87d8oC-BDTDuBRZbNnPkXy6rI_Pr-XnChHWZunw5jo,735
91
97
  fprime_gds/common/templates/event_template.py,sha256=L0hkWB_kEMhTNodPUqBAev76SMmWT9EWdcqxaaQX9ZE,4062
92
98
  fprime_gds/common/templates/pkt_template.py,sha256=5Wi6389m5j8w7JITBGfeUnw6CYE1-hjcVJ42NJmLDcE,1794
99
+ fprime_gds/common/templates/prm_template.py,sha256=qd0UX4ARZuPWvnFbU_DO3HkQY4QgMfqPxNcNhk-dl9A,2303
93
100
  fprime_gds/common/testing_fw/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
94
- fprime_gds/common/testing_fw/api.py,sha256=6rdgh6M0NkRVy69EeDh4z343Bjxp2CtBLj0b83U2ka8,60566
101
+ fprime_gds/common/testing_fw/api.py,sha256=mp93lZtAOcFj3sPS5Otk4CCu37680_QgWN8fDIj7jNs,62379
95
102
  fprime_gds/common/testing_fw/predicates.py,sha256=CsHsVs_EVXCLQLd2NVOvy8MxmUQVxLMr3i1ouEUqOtQ,18371
96
- fprime_gds/common/testing_fw/pytest_integration.py,sha256=FjbbsfLyScb9w4zypcQgahmNMgmh4yXwryfy9h2eaBY,4667
103
+ fprime_gds/common/testing_fw/pytest_integration.py,sha256=BqIevoSBDoKvLBy3HIGtxGbbvOit1a7Ea5X1SSBCK8M,5728
104
+ fprime_gds/common/tools/README.md,sha256=WVEciyfsbEVGmb9xR5A6Ioy5pBVnCsWOIJfySLeq9YM,2325
97
105
  fprime_gds/common/tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
106
+ fprime_gds/common/tools/params.py,sha256=htnMLlUW9HmBo4Qc7kYhnWr1sO6bK2mckdskLt5rDUk,9323
98
107
  fprime_gds/common/tools/seqgen.py,sha256=O57igktjWku5OJhBqezhCjPYUmh4GZM-9qKCChqEW7g,6034
99
108
  fprime_gds/common/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
100
- fprime_gds/common/utils/config_manager.py,sha256=fUduhY8COLU04OtxOco4etRgFs0rMdXyLg6GU4OF6F0,5494
109
+ fprime_gds/common/utils/config_manager.py,sha256=EurtNdApA9zpIjAXmGSTgFUen0UaVDryH5g9LwMhu1E,5539
101
110
  fprime_gds/common/utils/data_desc_type.py,sha256=9GV8hV5q1dDxdfF-1-Wty5MBrFd94EbZ8hpHHkBJKuo,715
102
111
  fprime_gds/common/utils/event_severity.py,sha256=7qPXHrDaM_REJ7sKBUEJTZIE0D4qVnVajsPDUuHg7sI,300
103
112
  fprime_gds/common/utils/string_util.py,sha256=u_2iahRG3ROu3lAAt_KVcK226gEByElXqrA8mH8eDpI,3584
104
113
  fprime_gds/executables/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
105
- fprime_gds/executables/apps.py,sha256=h2acqdOyMgv77IMEQUc41QcwAZ-_DToX6sZplCk17Zg,6543
106
- fprime_gds/executables/cli.py,sha256=QYtueh38hhPBGVk6IY2cINZn8MtXGin2MNGj-ilWXwQ,36396
107
- fprime_gds/executables/comm.py,sha256=sRCvj02aKP2jvx9AqgDXDF3nfw9OOCgF1ocvfcEYVN8,5032
114
+ fprime_gds/executables/apps.py,sha256=iyHloLaHJOkcZF6O3oXZX6YpoS2SBBZVPilf25l0Q98,13138
115
+ fprime_gds/executables/cli.py,sha256=7tqSMgFTSb20g9iMb02LOWrTYhePhX8Qe2kPZCzvquI,50381
116
+ fprime_gds/executables/comm.py,sha256=08rO0o0MJgTRngB7Ygu2IL_gEAWKF7WFvFyro1CqReE,5214
108
117
  fprime_gds/executables/data_product_writer.py,sha256=aXnQ75hQ8bapz-sr21mrPCrXIfqQblfBuB49GGZrFLg,34965
109
- fprime_gds/executables/fprime_cli.py,sha256=GvvuUQuoDGBrqQB867bDjUR3Kn5yPUckAY2rdfTa8jo,12432
110
- fprime_gds/executables/run_deployment.py,sha256=01tI0JVONRkKaPPdfJS0Qt1mWm_7Wgf3N9iknozXmYc,7043
118
+ fprime_gds/executables/fprime_cli.py,sha256=CMoT7zWNwM8h2mSZW03AR96wl_XnZXoLNiOZN_sDi38,12431
119
+ fprime_gds/executables/run_deployment.py,sha256=x6auxjsDyCj4216JbO0bSskv2H9r7n3vuu5Z3O5cGwY,7209
111
120
  fprime_gds/executables/tcpserver.py,sha256=KspVpu5YIuiWKOk5E6UDMKvqXYrRB1j9aX8CkMxysfw,17555
112
121
  fprime_gds/executables/utils.py,sha256=SbzXRe1p41qMPdifvPap5_4v0T42gZZ_Rs_OYfITd80,7626
113
122
  fprime_gds/flask/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -186,12 +195,12 @@ fprime_gds/flask/static/js/performance.js,sha256=fGBbK5anf5UB9iAr6rO4u9sCkrQGlOH
186
195
  fprime_gds/flask/static/js/settings.js,sha256=Cfnn1ybZUOmsp48t_b23TDaHBRctvpD_h2ivBVKz6HM,1101
187
196
  fprime_gds/flask/static/js/uploader.js,sha256=HdFUGwJ-SN_OEMXiXXJw0YblC0j_QiOA1y9yVWyS4SI,2730
188
197
  fprime_gds/flask/static/js/validate.js,sha256=yVY_MlpJeRfBRy3-k_JflWqyk-P_YJU3ot-iJtRJFPM,13046
189
- fprime_gds/flask/static/js/vue-support/channel.js,sha256=y1pt5gV-sHqxoBe91RCaQ5ze4BDX-rxon6ag_JHreas,4577
198
+ fprime_gds/flask/static/js/vue-support/channel.js,sha256=d0reMOk2yyyUxV8cvN8VNHkdUI_YHVsVEjj_ZWqyCcY,4577
190
199
  fprime_gds/flask/static/js/vue-support/dashboard-box.js,sha256=yX6eH9BQRKRLHk2eBDv1AjVjpLbl8PP8t-SXQPmi0sU,739
191
200
  fprime_gds/flask/static/js/vue-support/dashboard-row.js,sha256=vCkLANr_8GAkPLV4K0WAXWJohevOTods0VbjMrA5zC0,297
192
201
  fprime_gds/flask/static/js/vue-support/dashboard.js,sha256=WOdmZoivmtg9KbLe8usPjlXTzEO_uwJQIY9iIgMhW2g,3022
193
202
  fprime_gds/flask/static/js/vue-support/downlink.js,sha256=zY7S4w5ylQDQJ9-ihN-_1CUOxacGCuTyVO7-jeVefQg,1589
194
- fprime_gds/flask/static/js/vue-support/event.js,sha256=i1I7_HSPmdLFC-vIshdIcJQUH1SQYL_zhhyPbYUHi8Q,5292
203
+ fprime_gds/flask/static/js/vue-support/event.js,sha256=p9Kh8Po7pN4cMMfP4lhvx8fnoohRTr07p4cPvWaSheM,5292
195
204
  fprime_gds/flask/static/js/vue-support/fp-row.js,sha256=BwfWOxmTD7WPKKSBPlwLq3eARYQUg3pan1PPA9VzKy0,3760
196
205
  fprime_gds/flask/static/js/vue-support/fptable.js,sha256=ETGE4LlBeLXQnOv6-NNtZtk3JadDOPus6ad3tBEooUo,18874
197
206
  fprime_gds/flask/static/js/vue-support/log.js,sha256=40dDjFgmEugTFZFsy0Y1xqNJpnuEfUiZ_-M3HGTPMCc,2735
@@ -222,12 +231,12 @@ fprime_gds/flask/static/third-party/webfonts/fa-solid-900.ttf,sha256=r2OXUD_O-9Y
222
231
  fprime_gds/flask/static/third-party/webfonts/fa-solid-900.woff,sha256=P200iM9lN09vZ2wxU0CwrCvoMr1VJAyAlEjjbvm5YyY,101648
223
232
  fprime_gds/flask/static/third-party/webfonts/fa-solid-900.woff2,sha256=mDS4KtJuKjdYPSJnahLdLrD-fIA1aiEU0NsaqLOJlTc,78268
224
233
  fprime_gds/plugin/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
225
- fprime_gds/plugin/definitions.py,sha256=5rHGSOrr62qRNVfX9bZIo4HDAKG62lKteNum9G40y3g,2347
226
- fprime_gds/plugin/system.py,sha256=uWd6DVW90Re0FoNMPNCx0cXXTJUdpgAAO0mtakzRNgk,8564
227
- fprime_gds-3.6.2a1.dist-info/LICENSE.txt,sha256=z8d0m5b2O9McPEK1xHG_dWgUBT6EfBDz6wA0F7xSPTA,11358
228
- fprime_gds-3.6.2a1.dist-info/METADATA,sha256=R_nYB3RORZOSvgkK0I7hoDumeAymhEUbrWEvQpKXpjE,24772
229
- fprime_gds-3.6.2a1.dist-info/NOTICE.txt,sha256=vXjA_xRcQhd83Vfk5D_vXg5kOjnnXvLuMi5vFKDEVmg,1612
230
- fprime_gds-3.6.2a1.dist-info/WHEEL,sha256=52BFRY2Up02UkjOa29eZOS2VxUrpPORXg1pkohGGUS8,91
231
- fprime_gds-3.6.2a1.dist-info/entry_points.txt,sha256=oqUiO3xhJCR943jdU3zcxbqEvSXNeVgshk7dVaf_nGY,322
232
- fprime_gds-3.6.2a1.dist-info/top_level.txt,sha256=6vzFLIX6ANfavKaXFHDMSLFtS94a6FaAsIWhjgYuSNE,27
233
- fprime_gds-3.6.2a1.dist-info/RECORD,,
234
+ fprime_gds/plugin/definitions.py,sha256=QlxW1gNvoiqGMslSJjh3dTFZuv0igFHawN__3XJ0Wns,5355
235
+ fprime_gds/plugin/system.py,sha256=UiNrUqfi-KJOgRIOR8uyFMKdquSPZh_txpNq8eH35-Y,13285
236
+ fprime_gds-4.0.0a2.dist-info/licenses/LICENSE.txt,sha256=z8d0m5b2O9McPEK1xHG_dWgUBT6EfBDz6wA0F7xSPTA,11358
237
+ fprime_gds-4.0.0a2.dist-info/licenses/NOTICE.txt,sha256=vXjA_xRcQhd83Vfk5D_vXg5kOjnnXvLuMi5vFKDEVmg,1612
238
+ fprime_gds-4.0.0a2.dist-info/METADATA,sha256=8DZ3LB73jYM-qOHVEWFVzK_R2pfh18gkk1zWK0LIHhE,24486
239
+ fprime_gds-4.0.0a2.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
240
+ fprime_gds-4.0.0a2.dist-info/entry_points.txt,sha256=qFBHIR7CZ5CEeSEdZ-ZVQN9ZfUOZfm0PvvDZAAheuLk,445
241
+ fprime_gds-4.0.0a2.dist-info/top_level.txt,sha256=6vzFLIX6ANfavKaXFHDMSLFtS94a6FaAsIWhjgYuSNE,27
242
+ fprime_gds-4.0.0a2.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (76.0.0)
2
+ Generator: setuptools (80.9.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
@@ -1,7 +1,9 @@
1
1
  [console_scripts]
2
2
  fprime-cli = fprime_gds.executables.fprime_cli:main
3
3
  fprime-dp-write = fprime_gds.executables.data_product_writer:main
4
+ fprime-fpy-bytecode = fprime_gds.common.fpy.serialize_bytecode:main
4
5
  fprime-gds = fprime_gds.executables.run_deployment:main
6
+ fprime-prm-write = fprime_gds.common.tools.params:main
5
7
  fprime-seqgen = fprime_gds.common.tools.seqgen:main
6
8
 
7
9
  [pytest11]