Skip to main content
PyCon US is happening May 14th-22nd in Pittsburgh, PA USA.  Learn more

Library for high level CCSDS File Delivery Protocol (CFDP) components

Project description

ci Documentation Status codecov PyPI version

cfdp-py - High level Python library for CFDP components

The cfdp-py library offers some high-level CCSDS File Delivery Protocol (CFDP) components to perform file transfers according to the CCSDS Blue Book 727.0-B-5. The underlying base packet library used to generate the packets to be sent is the spacepackets library.

Install

You can install this package from PyPI

Install command assuming an active virtual environment:

pip install cfdp-py

Examples

You can find all examples inside the documentation and the examples directory of this repository.

Tests

If you want to run the tests, it is recommended to install pytest and coverage (optional) first. You also have to install the package with the optional test feature:

pip install coverage pytest
pip install cfdp-py[test]

Running tests regularly:

pytest .

Running tests with coverage:

coverage run -m pytest

Documentation

The documentation is built with Sphinx

Install the required dependencies first:

pip install -r docs/requirements.txt

Then the documentation can be built with

cd docs
make html

You can run the doctests with

make doctest

Formatting and Linting

Linting:

ruff check .

Formatting:

ruff format .

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page