No-allocation SLIP
Instructions
This Rust crate provides a no-std SLIP (Serial Line Internet Protocol) encoder and decoder implementation. SLIP is a simple protocol for sending packets over serial lines.
Usage
This library has to be used in conjunction with the noalloc-vec-rs crate.
- Example of encoding a packet:
use ;
use Vec;
const MAX_LENGTH: usize = 12;
let mut packet = Vec::from;
encode.unwrap;
assert_eq!;
- Example of decoding a packet:
use ;
use Vec;
const MAX_LENGTH: usize = 12;
let mut decoder = default;
decoder.insert.unwrap;
decoder.insert.unwrap;
decoder.insert.unwrap;
assert!;
assert_eq!;
CI / CD
The CI/CD pipeline is configured using GitHub Actions. The workflow is defined in the .github/workflows folder:
- Static Analysis (source code, GitHub Actions)
- Tests (unit tests with code coverage generated)
- Code Audit (on each Cargo dependencies update, or run each day through CronJob)
- Deployment
Additionally, Dependabot is configured to automatically update dependencies (GitHub Actions, Cargo dependencies).
Repository configuration
The settings of this repository are managed from the gitops-deployments repository using Terraform. The actual configuration applied is located in the Terraform module modules/github-repository.