Generic implementations for various CCSDS and ECSS packet standards in Rust
Go to file
Robin Mueller 94ff4fbb51
Some checks failed
Rust/spacepackets/pipeline/pr-main There was a failure building this commit
Rust/spacepackets/pipeline/head There was a failure building this commit
added coverage section in README
2023-12-01 10:33:12 +01:00
.github/workflows gitlab ci fix 2023-08-14 14:03:25 +02:00
.idea/runConfigurations continue file data PDU 2023-05-30 15:36:02 +02:00
automation re-enable failing docs builds 2023-09-26 17:11:39 +02:00
src add more tests 2023-11-30 22:59:35 +01:00
.gitignore CHANGELOG clarification, gitignore comments 2023-01-26 21:00:32 +01:00
Cargo.toml bump version specifier 2023-09-26 17:10:21 +02:00
CHANGELOG.md custom impl for CommonPduConfig PartialEq 2023-11-24 17:09:23 +01:00
coverage.py added coverage helper script 2023-12-01 10:22:44 +01:00
LICENSE-APACHE Init spacepackets crate 2022-06-18 22:48:51 +02:00
NOTICE update NOTICE file 2023-01-24 11:26:47 +01:00
README.md added coverage section in README 2023-12-01 10:33:12 +01:00
release-checklist.md update release checklist 2023-09-26 18:15:05 +02:00

Crates.io docs.rs ci

ECSS and CCSDS Spacepackets

This package contains generic implementations for various CCSDS (Consultative Committee for Space Data Systems) and ECSS (European Cooperation for Space Standardization) packet standards.

Currently, this includes the following components:

Features

spacepackets supports various runtime environments and is also suitable for no_std environments.

It also offers optional support for serde. This allows serializing and deserializing them with an appropriate serde provider like postcard.

Default features

  • std: Enables functionality relying on the standard library.
  • alloc: Enables features which operate on containers like alloc::vec::Vec. Enabled by the std feature.

Optional Features

  • serde: Adds serde support for most types by adding Serialize and Deserialize derives

Examples

You can check the documentation of individual modules for various usage examples.

Coverage

Coverage was generated using grcov. If you have not done so already, install the llvm-tools-preview:

rustup component add llvm-tools-preview

After that, you can simply run coverage.py to test the project with coverage. You can optionally supply the --open flag to open the coverage report in your webbrowser.