fprime-gds 4.0.0a7__tar.gz → 4.0.0a9__tar.gz
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-4.0.0a7 → fprime_gds-4.0.0a9}/.github/actions/spelling/expect.txt +29 -1
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/.github/workflows/codeql-security-scan.yml +4 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/.github/workflows/fprime-gds-tests.yml +4 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/.github/workflows/gds-cli-tests.yml +4 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/.github/workflows/spelling.yml +4 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/PKG-INFO +2 -1
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/pyproject.toml +2 -1
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/decoders/event_decoder.py +7 -1
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/distributor/distributor.py +3 -1
- fprime_gds-4.0.0a9/src/fprime_gds/common/fpy/README.md +56 -0
- fprime_gds-4.0.0a9/src/fprime_gds/common/fpy/SPEC.md +69 -0
- fprime_gds-4.0.0a9/src/fprime_gds/common/fpy/bytecode/directives.py +490 -0
- fprime_gds-4.0.0a9/src/fprime_gds/common/fpy/codegen.py +1687 -0
- fprime_gds-4.0.0a9/src/fprime_gds/common/fpy/grammar.lark +88 -0
- fprime_gds-4.0.0a9/src/fprime_gds/common/fpy/main.py +40 -0
- fprime_gds-4.0.0a9/src/fprime_gds/common/fpy/parser.py +239 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/logger/__init__.py +2 -2
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/templates/cmd_template.py +8 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/executables/cli.py +39 -17
- fprime_gds-4.0.0a9/src/fprime_gds/plugin/__init__.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds.egg-info/PKG-INFO +2 -1
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds.egg-info/SOURCES.txt +9 -3
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds.egg-info/entry_points.txt +1 -1
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds.egg-info/requires.txt +1 -0
- fprime_gds-4.0.0a9/test/fprime_gds/common/fpy/disabled_test_compiler.py +765 -0
- fprime_gds-4.0.0a7/src/fprime_gds/common/fpy/serialize_bytecode.py +0 -229
- fprime_gds-4.0.0a7/src/fprime_gds/common/fpy/types.py +0 -203
- fprime_gds-4.0.0a7/test/fprime_gds/common/fpy/integrated_tests.py +0 -273
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/.github/actions/codeql/security-pack.yml +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/.github/actions/spelling/excludes.txt +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/.github/actions/spelling/patterns.txt +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/.github/pull_request_template.md +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/.github/resources/RefTopologyAppDictionary.xml +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/.github/workflows/publish.yml +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/.gitignore +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/Doxyfile +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/LICENSE.txt +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/NOTICE.txt +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/README.md +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/configs/__init__.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/docs/README.md +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/docs/_static/css/rtd_width.css +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/docs/conf.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/docs/gendoc.bash +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/docs/index.rst +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/examples/simple_sequence.bin +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/examples/simple_sequence.seq +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/setup.cfg +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/setup.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fastentrypoints.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/__init__.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/__init__.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/communication/__init__.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/communication/adapters/__init__.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/communication/adapters/base.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/communication/adapters/ip.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/communication/adapters/uart.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/communication/ccsds/__init__.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/communication/ccsds/apid.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/communication/ccsds/chain.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/communication/ccsds/space_data_link.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/communication/ccsds/space_packet.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/communication/checksum.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/communication/framing.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/communication/ground.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/communication/updown.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/controllers/__init__.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/data_types/__init__.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/data_types/ch_data.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/data_types/cmd_data.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/data_types/event_data.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/data_types/exceptions.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/data_types/file_data.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/data_types/pkt_data.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/data_types/sys_data.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/decoders/__init__.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/decoders/ch_decoder.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/decoders/decoder.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/decoders/file_decoder.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/decoders/pkt_decoder.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/distributor/__init__.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/encoders/__init__.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/encoders/ch_encoder.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/encoders/cmd_encoder.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/encoders/encoder.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/encoders/event_encoder.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/encoders/file_encoder.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/encoders/pkt_encoder.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/encoders/seq_writer.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/files/File Decoder Documentation.txt +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/files/__init__.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/files/downlinker.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/files/helpers.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/files/uplinker.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/fpy/__init__.py +0 -0
- {fprime_gds-4.0.0a7/src/fprime_gds/common/gds_cli → fprime_gds-4.0.0a9/src/fprime_gds/common/fpy/bytecode}/__init__.py +0 -0
- {fprime_gds-4.0.0a7/src/fprime_gds/common/history → fprime_gds-4.0.0a9/src/fprime_gds/common/gds_cli}/__init__.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/gds_cli/base_commands.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/gds_cli/channels.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/gds_cli/command_send.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/gds_cli/events.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/gds_cli/filtering_utils.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/gds_cli/test_api_utils.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/handlers.py +0 -0
- {fprime_gds-4.0.0a7/src/fprime_gds/common/loaders → fprime_gds-4.0.0a9/src/fprime_gds/common/history}/__init__.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/history/chrono.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/history/history.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/history/ram.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/history/test.py +0 -0
- {fprime_gds-4.0.0a7/src/fprime_gds/common/models → fprime_gds-4.0.0a9/src/fprime_gds/common/loaders}/__init__.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/loaders/ch_json_loader.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/loaders/ch_xml_loader.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/loaders/cmd_json_loader.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/loaders/cmd_xml_loader.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/loaders/dict_loader.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/loaders/event_json_loader.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/loaders/event_xml_loader.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/loaders/fw_type_json_loader.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/loaders/json_loader.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/loaders/pkt_json_loader.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/loaders/pkt_xml_loader.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/loaders/prm_json_loader.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/loaders/xml_loader.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/logger/data_logger.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/logger/test_logger.py +0 -0
- {fprime_gds-4.0.0a7/src/fprime_gds/common/models/common → fprime_gds-4.0.0a9/src/fprime_gds/common/models}/__init__.py +0 -0
- {fprime_gds-4.0.0a7/src/fprime_gds/common/parsers → fprime_gds-4.0.0a9/src/fprime_gds/common/models/common}/__init__.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/models/common/channel_telemetry.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/models/common/command.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/models/common/event.py +0 -0
- {fprime_gds-4.0.0a7/src/fprime_gds/common/pipeline → fprime_gds-4.0.0a9/src/fprime_gds/common/parsers}/__init__.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/parsers/seq_file_parser.py +0 -0
- {fprime_gds-4.0.0a7/src/fprime_gds/common/templates → fprime_gds-4.0.0a9/src/fprime_gds/common/pipeline}/__init__.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/pipeline/dictionaries.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/pipeline/encoding.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/pipeline/files.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/pipeline/histories.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/pipeline/router.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/pipeline/standard.py +0 -0
- {fprime_gds-4.0.0a7/src/fprime_gds/common/testing_fw → fprime_gds-4.0.0a9/src/fprime_gds/common/templates}/__init__.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/templates/ch_template.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/templates/data_template.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/templates/event_template.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/templates/pkt_template.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/templates/prm_template.py +0 -0
- {fprime_gds-4.0.0a7/src/fprime_gds/common/tools → fprime_gds-4.0.0a9/src/fprime_gds/common/testing_fw}/__init__.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/testing_fw/api.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/testing_fw/predicates.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/testing_fw/pytest_integration.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/tools/README.md +0 -0
- {fprime_gds-4.0.0a7/src/fprime_gds/common/utils → fprime_gds-4.0.0a9/src/fprime_gds/common/tools}/__init__.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/tools/params.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/tools/seqgen.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/transport.py +0 -0
- {fprime_gds-4.0.0a7/src/fprime_gds/executables → fprime_gds-4.0.0a9/src/fprime_gds/common/utils}/__init__.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/utils/config_manager.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/utils/data_desc_type.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/utils/event_severity.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/utils/string_util.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/common/zmq_transport.py +0 -0
- {fprime_gds-4.0.0a7/src/fprime_gds/flask → fprime_gds-4.0.0a9/src/fprime_gds/executables}/__init__.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/executables/apps.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/executables/comm.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/executables/data_product_writer.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/executables/fprime_cli.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/executables/run_deployment.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/executables/tcpserver.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/executables/utils.py +0 -0
- {fprime_gds-4.0.0a7/src/fprime_gds/plugin → fprime_gds-4.0.0a9/src/fprime_gds/flask}/__init__.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/app.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/channels.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/commands.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/components.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/default_settings.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/errors.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/events.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/json.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/logs.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/requirements.txt +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/resource.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/sequence.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/.idea/.gitignore +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/.idea/misc.xml +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/.idea/modules.xml +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/.idea/static.iml +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/.idea/vcs.xml +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/addons/advanced-settings/addon-templates.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/addons/advanced-settings/addon.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/addons/channel-render/addon.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/addons/channel-render/channel-render-template.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/addons/channel-render/channel-render.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/addons/chart-display/addon-templates.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/addons/chart-display/addon.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/addons/chart-display/config.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/addons/chart-display/modified-vendor/chartjs-plugin-streaming.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/addons/chart-display/modified-vendor/chartjs-plugin-zoom.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/addons/chart-display/modified-vendor/flat.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/addons/chart-display/sibling.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/addons/chart-display/vendor/chart.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/addons/chart-display/vendor/chartjs-adapter-luxon.min.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/addons/chart-display/vendor/hammer.min.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/addons/commanding/addon.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/addons/commanding/argument-templates.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/addons/commanding/arguments.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/addons/commanding/command-history-template.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/addons/commanding/command-history.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/addons/commanding/command-input-template.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/addons/commanding/command-input.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/addons/commanding/command-string-template.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/addons/commanding/command-string.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/addons/dictionary/addon-templates.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/addons/dictionary/addon.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/addons/enabled.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/addons/image-display/addon.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/addons/image-display/dashboard.xml +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/addons/sequencer/README.md +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/addons/sequencer/addon-templates.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/addons/sequencer/addon.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/addons/sequencer/autocomplete.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/addons/sequencer/lint.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/addons/sequencer/third/code-mirror.es.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/addons/sequencer/third/rollup/.gitignore +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/addons/sequencer/third/rollup/index.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/addons/sequencer/third/rollup/language.grammer +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/addons/sequencer/third/rollup/package.json +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/addons/sequencer/third/rollup/rollup.config.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/css/fprime.css +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/css/fpstyle.css +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/favicon.ico +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/img/error.svg +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/img/logo.svg +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/img/success.svg +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/index.html +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/js/config.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/js/datastore.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/js/gds.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/js/json.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/js/loader.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/js/performance.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/js/settings.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/js/uploader.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/js/validate.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/js/vue-support/channel.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/js/vue-support/dashboard-box.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/js/vue-support/dashboard-row.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/js/vue-support/dashboard.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/js/vue-support/downlink.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/js/vue-support/event.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/js/vue-support/fp-row.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/js/vue-support/fptable.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/js/vue-support/log.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/js/vue-support/tabetc.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/js/vue-support/uplink.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/js/vue-support/utils.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/third-party/css/all.min.css +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/third-party/css/bootstrap.min.css +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/third-party/css/vue-select.css +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/third-party/js/luxon.min.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/third-party/js/sorttable.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/third-party/js/v-runtime-template.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/third-party/js/vue-select.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/third-party/js/vue.min.js +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/third-party/webfonts/fa-brands-400.eot +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/third-party/webfonts/fa-brands-400.svg +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/third-party/webfonts/fa-brands-400.ttf +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/third-party/webfonts/fa-brands-400.woff +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/third-party/webfonts/fa-brands-400.woff2 +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/third-party/webfonts/fa-regular-400.eot +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/third-party/webfonts/fa-regular-400.svg +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/third-party/webfonts/fa-regular-400.ttf +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/third-party/webfonts/fa-regular-400.woff +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/third-party/webfonts/fa-regular-400.woff2 +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/third-party/webfonts/fa-solid-900.eot +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/third-party/webfonts/fa-solid-900.svg +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/third-party/webfonts/fa-solid-900.ttf +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/third-party/webfonts/fa-solid-900.woff +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/static/third-party/webfonts/fa-solid-900.woff2 +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/stats.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/flask/updown.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/plugin/definitions.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/plugin/system.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds/version.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds.egg-info/dependency_links.txt +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/src/fprime_gds.egg-info/top_level.txt +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/common/communication/ccsds/test_space_data_link.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/common/communication/ccsds/test_space_packet.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/common/data_types/test_cmd_data.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/common/distributor/test_distributor.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/common/encoders/test_ch_encoder.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/common/encoders/test_event_encoder.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/common/encoders/test_pkt_encoder.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/common/gds_cli/filtering_utils_test.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/common/gds_cli/utils_test.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/common/history/chronohistory_unit_test.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/common/history/testhistory_unit_test.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/common/loaders/resources/RefTopologyDictionary.json +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/common/loaders/test_json_loader.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/common/testing_fw/UnitTestDictionary.xml +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/common/testing_fw/api_unit_test.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/common/testing_fw/logs/.gitignore +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/common/testing_fw/predicate_unit_test.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/common/tools/expected/simple_expected.bin +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/common/tools/expected/simple_paramdb.dat +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/common/tools/input/simple_bad_paramdb.json +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/common/tools/input/simple_bad_sequence.seq +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/common/tools/input/simple_paramdb.json +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/common/tools/input/simple_sequence.seq +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/common/tools/resources/simple_dictionary.json +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/common/tools/resources/simple_dictionary.xml +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/common/tools/seqgen_unit_test.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/common/tools/test_paramdb_gen.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/common/utils/test_string_util.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/executables/.gitignore +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/executables/dp_writer_data/dictionary.json +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/executables/dp_writer_data/makeBool.bin +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/executables/dp_writer_data/makeComplex.bin +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/executables/dp_writer_data/makeDataArray.bin +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/executables/dp_writer_data/makeEnum.bin +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/executables/dp_writer_data/makeF32.bin +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/executables/dp_writer_data/makeF64.bin +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/executables/dp_writer_data/makeFppArray.bin +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/executables/dp_writer_data/makeI16.bin +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/executables/dp_writer_data/makeI32.bin +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/executables/dp_writer_data/makeI64.bin +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/executables/dp_writer_data/makeI8.bin +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/executables/dp_writer_data/makeU32.bin +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/executables/dp_writer_data/makeU32Array.bin +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/executables/dp_writer_data/makeU8Array.bin +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/executables/test_data_product_writer.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/executables/test_run_deployment.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/executables/test_utils.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/sample/dictionary.xml +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/fprime_gds/test_plugins.py +0 -0
- {fprime_gds-4.0.0a7 → fprime_gds-4.0.0a9}/test/gui/GUI_Test_Procedure.md +0 -0
@@ -40,20 +40,24 @@ cata
|
|
40
40
|
CCB
|
41
41
|
CCFF
|
42
42
|
ccsds
|
43
|
+
Cdh
|
43
44
|
Cdioux
|
44
45
|
cdn
|
45
46
|
cdxoefg
|
46
47
|
CFDG
|
47
48
|
CFDP
|
48
49
|
CFPD
|
50
|
+
chans
|
49
51
|
chartjs
|
50
52
|
CHNG
|
51
53
|
classdocs
|
52
54
|
clearfix
|
53
55
|
cls
|
54
56
|
cmdhist
|
57
|
+
cmps
|
55
58
|
cmt
|
56
59
|
CODEFILE
|
60
|
+
codegen
|
57
61
|
COLORSTYLE
|
58
62
|
colorwheel
|
59
63
|
columnify
|
@@ -80,7 +84,7 @@ deframed
|
|
80
84
|
deframer
|
81
85
|
deframing
|
82
86
|
DEPRECATEDLIST
|
83
|
-
|
87
|
+
deser
|
84
88
|
Deserial
|
85
89
|
deserializes
|
86
90
|
dests
|
@@ -117,6 +121,7 @@ ECONNRESET
|
|
117
121
|
ect
|
118
122
|
EEXIST
|
119
123
|
Efg
|
124
|
+
elifs
|
120
125
|
ENDC
|
121
126
|
endcond
|
122
127
|
errorhandler
|
@@ -131,17 +136,26 @@ fastentrypoints
|
|
131
136
|
fbuild
|
132
137
|
fd
|
133
138
|
FEEDNAME
|
139
|
+
FEQ
|
134
140
|
FFCC
|
135
141
|
FFFF
|
142
|
+
FGE
|
143
|
+
FGT
|
136
144
|
fileurl
|
137
145
|
Firefox
|
146
|
+
FLE
|
138
147
|
focusring
|
148
|
+
FNE
|
139
149
|
FONTNAME
|
140
150
|
FONTPATH
|
141
151
|
FONTSIZE
|
152
|
+
FPEXT
|
142
153
|
fpp
|
143
154
|
fprime
|
144
155
|
fptable
|
156
|
+
FPTOSI
|
157
|
+
FPTOUI
|
158
|
+
FPTRUNC
|
145
159
|
fpy
|
146
160
|
fpybc
|
147
161
|
fqn
|
@@ -170,12 +184,15 @@ hpaulson
|
|
170
184
|
htags
|
171
185
|
hyperlinks
|
172
186
|
idct
|
187
|
+
idk
|
173
188
|
idl
|
174
189
|
idx
|
175
190
|
ieeetr
|
191
|
+
IEQ
|
176
192
|
ified
|
177
193
|
ifun
|
178
194
|
IH
|
195
|
+
INE
|
179
196
|
inprogress
|
180
197
|
intersphinx
|
181
198
|
intlimits
|
@@ -197,6 +214,7 @@ junitxml
|
|
197
214
|
keepalive
|
198
215
|
keyify
|
199
216
|
kinda
|
217
|
+
lalr
|
200
218
|
leisher
|
201
219
|
lestarch
|
202
220
|
levelname
|
@@ -240,6 +258,7 @@ NOSONAR
|
|
240
258
|
nosort
|
241
259
|
nosubgrouping
|
242
260
|
Noto
|
261
|
+
nreg
|
243
262
|
NSPACES
|
244
263
|
nuntil
|
245
264
|
odl
|
@@ -264,6 +283,7 @@ pkts
|
|
264
283
|
plainnat
|
265
284
|
plantuml
|
266
285
|
PNGs
|
286
|
+
postlex
|
267
287
|
preds
|
268
288
|
prm
|
269
289
|
prmdb
|
@@ -312,20 +332,26 @@ seqfile
|
|
312
332
|
seqgen
|
313
333
|
serializables
|
314
334
|
serialutil
|
335
|
+
SGE
|
336
|
+
SGT
|
315
337
|
showinitializer
|
316
338
|
sideeffect
|
317
339
|
SIGALRM
|
340
|
+
SITOFP
|
318
341
|
sizeb
|
319
342
|
SMAP
|
320
343
|
Smath
|
344
|
+
smth
|
321
345
|
SNDHWM
|
322
346
|
sorttable
|
323
347
|
spacepacket
|
324
348
|
squashify
|
349
|
+
sreg
|
325
350
|
sss
|
326
351
|
Ssymbols
|
327
352
|
stackoverflow
|
328
353
|
startuml
|
354
|
+
subclasscheck
|
329
355
|
subcmd
|
330
356
|
subgrouping
|
331
357
|
subhist
|
@@ -367,7 +393,9 @@ typedef
|
|
367
393
|
uart
|
368
394
|
ucf
|
369
395
|
udp
|
396
|
+
UGE
|
370
397
|
UIs
|
398
|
+
UITOFP
|
371
399
|
uk
|
372
400
|
ul
|
373
401
|
UNINIT
|
@@ -8,6 +8,10 @@ on:
|
|
8
8
|
pull_request:
|
9
9
|
# The branches below must be a subset of the branches above
|
10
10
|
branches: [ devel ]
|
11
|
+
# Cancel in-progress runs if a newer run is started on a given PR
|
12
|
+
concurrency:
|
13
|
+
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
|
14
|
+
cancel-in-progress: ${{ !contains(github.ref, 'devel') && !contains(github.ref, 'release/')}}
|
11
15
|
|
12
16
|
jobs:
|
13
17
|
analyze:
|
@@ -6,6 +6,10 @@ on:
|
|
6
6
|
pull_request:
|
7
7
|
# The branches below must be a subset of the branches above
|
8
8
|
branches: [ devel ]
|
9
|
+
# Cancel in-progress runs if a newer run is started on a given PR
|
10
|
+
concurrency:
|
11
|
+
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
|
12
|
+
cancel-in-progress: ${{ !contains(github.ref, 'devel') && !contains(github.ref, 'release/')}}
|
9
13
|
|
10
14
|
jobs:
|
11
15
|
Unit-tests:
|
@@ -6,6 +6,10 @@ on:
|
|
6
6
|
pull_request:
|
7
7
|
# The branches below must be a subset of the branches above
|
8
8
|
branches: [ devel ]
|
9
|
+
# Cancel in-progress runs if a newer run is started on a given PR
|
10
|
+
concurrency:
|
11
|
+
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
|
12
|
+
cancel-in-progress: ${{ !contains(github.ref, 'devel') && !contains(github.ref, 'release/')}}
|
9
13
|
|
10
14
|
env:
|
11
15
|
DICTIONARY: ./.github/resources/RefTopologyAppDictionary.xml
|
@@ -11,6 +11,10 @@ on:
|
|
11
11
|
tags-ignore:
|
12
12
|
- "**"
|
13
13
|
types: ['opened', 'reopened', 'synchronize']
|
14
|
+
# Cancel in-progress runs if a newer run is started on a given PR
|
15
|
+
concurrency:
|
16
|
+
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
|
17
|
+
cancel-in-progress: ${{ !contains(github.ref, 'devel') && !contains(github.ref, 'release/')}}
|
14
18
|
|
15
19
|
jobs:
|
16
20
|
spelling:
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: fprime-gds
|
3
|
-
Version: 4.0.
|
3
|
+
Version: 4.0.0a9
|
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,6 +240,7 @@ 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: lark>=1.2.2
|
243
244
|
Requires-Dist: PyYAML>=6.0.2
|
244
245
|
Requires-Dist: spacepackets>=0.30.0
|
245
246
|
Requires-Dist: crc>=7.0.0
|
@@ -43,6 +43,7 @@ dependencies = [
|
|
43
43
|
"openpyxl>=3.0.10",
|
44
44
|
"pyserial>=3.5",
|
45
45
|
"pydantic>=2.6",
|
46
|
+
"lark>=1.2.2",
|
46
47
|
"PyYAML>=6.0.2",
|
47
48
|
"spacepackets>=0.30.0",
|
48
49
|
"crc>=7.0.0"
|
@@ -65,7 +66,7 @@ fprime-seqgen = "fprime_gds.common.tools.seqgen:main"
|
|
65
66
|
fprime-dp-write = "fprime_gds.executables.data_product_writer:main"
|
66
67
|
fprime-gds = "fprime_gds.executables.run_deployment:main"
|
67
68
|
fprime-prm-write = "fprime_gds.common.tools.params:main"
|
68
|
-
fprime-
|
69
|
+
fprime-fpyc = "fprime_gds.common.fpy.main:main"
|
69
70
|
|
70
71
|
# For Pytest fixtures
|
71
72
|
[project.entry-points."pytest11"]
|
@@ -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)
|
@@ -0,0 +1,56 @@
|
|
1
|
+
# Fpy Advanced Sequencing Language Version 0.1
|
2
|
+
The Fpy advanced sequencing language is a combination of a high-level scripting language and a low-level bytecode language for running complex command sequences on spacecraft flight software.
|
3
|
+
## Fpy Syntax
|
4
|
+
### Modules, components, channels, commands and types
|
5
|
+
You can imagine the Fpy syntax as Python with the following mappings:
|
6
|
+
1. FPrime modules become Python namespaces
|
7
|
+
2. FPrime components become Python classes
|
8
|
+
3. FPrime types (structs, arrays and enums) become Python classes
|
9
|
+
4. FPrime component instances become Python object instances
|
10
|
+
5. FPrime commands become member functions of Python object instances
|
11
|
+
6. FPrime telemetry channels become member properties of Python object instances
|
12
|
+
|
13
|
+
FPrime declaration:
|
14
|
+
```
|
15
|
+
module Ref {
|
16
|
+
passive component ExampleComponent {
|
17
|
+
telemetry testChannel: U8
|
18
|
+
sync command TEST_COMMAND(arg: string size 40)
|
19
|
+
}
|
20
|
+
|
21
|
+
instance exampleInstance: ExampleComponent base id 0x01
|
22
|
+
}
|
23
|
+
```
|
24
|
+
Fpy usage:
|
25
|
+
```py
|
26
|
+
# reference a telemetry channel
|
27
|
+
Ref.exampleInstance.testChannel
|
28
|
+
# call a command
|
29
|
+
Ref.exampleInstance.TEST_COMMAND("arg value")
|
30
|
+
```
|
31
|
+
|
32
|
+
|
33
|
+
FPrime declaration:
|
34
|
+
```
|
35
|
+
struct ExampleStruct {
|
36
|
+
member: F32
|
37
|
+
}
|
38
|
+
|
39
|
+
enum TestEnum {
|
40
|
+
ONE
|
41
|
+
TWO
|
42
|
+
THREE
|
43
|
+
}
|
44
|
+
|
45
|
+
array TestArray = [3] U8
|
46
|
+
```
|
47
|
+
|
48
|
+
Fpy usage:
|
49
|
+
```py
|
50
|
+
# construct a struct
|
51
|
+
ExampleStruct(0.0)
|
52
|
+
# reference an enum const
|
53
|
+
TestEnum.THREE
|
54
|
+
# construct an array
|
55
|
+
TestArray(1, 2, 3)
|
56
|
+
```
|
@@ -0,0 +1,69 @@
|
|
1
|
+
Nothing type is a type whose set of values is an empty set
|
2
|
+
Unit type is a type whose set of values is a set with one element
|
3
|
+
|
4
|
+
# `if` statement
|
5
|
+
|
6
|
+
## Syntactical and semantic checks
|
7
|
+
|
8
|
+
`"if" condition ":" INDENT stmt* DEDENT ("elif" condition ":" INDENT stmt* DEDENT)* ["else" ":" INDENT stmt* DEDENT]`
|
9
|
+
|
10
|
+
1. where `condition` is an expression which evaluates to a boolean
|
11
|
+
2. where `stmt` is a statement
|
12
|
+
|
13
|
+
## Code generation
|
14
|
+
|
15
|
+
1. `if` generates `IF`, followed by the generated code for the first body, followed by `GOTO` to the end of the if statement
|
16
|
+
2. `elif` generates `IF`, followed by the generated code for its body, followed by `GOTO` to the end of the if statement
|
17
|
+
3. `else` generates the code for its body
|
18
|
+
|
19
|
+
# `not` boolean operator
|
20
|
+
|
21
|
+
## Syntactical and semantic checks
|
22
|
+
|
23
|
+
`"not" value` evaluates to a boolean at runtime
|
24
|
+
|
25
|
+
1. where `value` is an expression which evaluates to a boolean
|
26
|
+
|
27
|
+
## Code generation
|
28
|
+
|
29
|
+
1. `not` generates `NOT`
|
30
|
+
|
31
|
+
# `and` and `or` boolean operators
|
32
|
+
|
33
|
+
## Syntactical and semantic checks
|
34
|
+
|
35
|
+
`value (op value)+` evaluates to a boolean at runtime
|
36
|
+
|
37
|
+
1. where `op: "and"|"or"`
|
38
|
+
2. where `value` is an expression which evaluates to a boolean
|
39
|
+
|
40
|
+
## Code generation
|
41
|
+
|
42
|
+
1. Each `and` or `or` between two `value`s generates an `AND` or `OR`, respectively
|
43
|
+
|
44
|
+
# Infix comparisons
|
45
|
+
|
46
|
+
## Syntactical and semantic checks
|
47
|
+
|
48
|
+
`lhs op rhs` evaluates to a boolean at runtime
|
49
|
+
|
50
|
+
1. where `op: ">" | "<" | "<=" | ">=" | "==" | "!="`
|
51
|
+
2. and `lhs`, `rhs` are expressions which evaluate to a number
|
52
|
+
|
53
|
+
If either `lhs` or `rhs` evaluate to a float:
|
54
|
+
3. both `lhs` and `rhs` must evaluate to floats of the same bit width
|
55
|
+
|
56
|
+
Otherwise, `lhs` and `rhs` evaluate to integer values. All comparisons between integer values are valid.
|
57
|
+
|
58
|
+
## Code generation
|
59
|
+
|
60
|
+
### Equality comparisons
|
61
|
+
|
62
|
+
1. `==` or `!=` between two floats generates `FEQ` or `FNE`, respectively
|
63
|
+
2. `==` or `!=` between two ints generates `IEQ` or `INE`, respectively
|
64
|
+
|
65
|
+
### Inequality comparisons
|
66
|
+
|
67
|
+
1. `>`, `<`, `<=`, or `>=` between two floats generates `FGT`, `FLT`, `FLE` or `FGE`, respectively
|
68
|
+
2. `>`, `<`, `<=`, or `>=` between two unsigned ints generates `UGT`, `ULT`, `ULE` or `UGE`, respectively
|
69
|
+
2. `>`, `<`, `<=`, or `>=` between two ints, where at least one is signed, generates `SGT`, `SLT`, `SLE` or `SGE`, respectively
|