[](https://github.com/us-irs/cfdp-py/actions/workflows/ci.yml)
[](https://cfdp-py.readthedocs.io/en/latest/?badge=latest)
[](https://codecov.io/gh/us-irs/cfdp-py)
[](https://badge.fury.io/py/cfdp-py)
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](https://public.ccsds.org/Pubs/727x0b5.pdf).
The underlying base packet library used to generate the packets to be sent is the
[spacepackets](https://github.com/us-irs/spacepackets-py) library.
# Install
You can install this package from PyPI
Install command assuming an active virtual environment:
```sh
pip install cfdp-py
```
# Examples
You can find all examples [inside the documentation](https://cfdp-py.readthedocs.io/en/latest/examples.html)
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:
```sh
pip install coverage pytest
pip install cfdp-py[test]
```
Running tests regularly:
```sh
pytest .
```
Running tests with coverage:
```sh
coverage run -m pytest
```
# Documentation
The documentation is built with Sphinx
Install the required dependencies first:
```sh
pip install -r docs/requirements.txt
```
Then the documentation can be built with
```sh
cd docs
make html
```
You can run the doctests with
```sh
make doctest
```
# Formatting and Linting
Linting:
```sh
ruff check .
```
Formatting:
```sh
ruff format .
```
Raw data
{
"_id": null,
"home_page": null,
"name": "cfdp-py",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": null,
"keywords": "ccsds, space, communication, packet, file-transfer",
"author": null,
"author_email": "Robin Mueller <robin.mueller.m@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/6d/37/707b6718797ceffe452b6b25476f1fb2200476c187f2e06874f2e4451dc4/cfdp_py-0.5.1.tar.gz",
"platform": null,
"description": "[](https://github.com/us-irs/cfdp-py/actions/workflows/ci.yml)\n[](https://cfdp-py.readthedocs.io/en/latest/?badge=latest)\n[](https://codecov.io/gh/us-irs/cfdp-py)\n[](https://badge.fury.io/py/cfdp-py)\n\ncfdp-py - High level Python library for CFDP components\n======================\n\nThe `cfdp-py` library offers some high-level CCSDS File Delivery Protocol (CFDP) components to\nperform file transfers according to the [CCSDS Blue Book 727.0-B-5](https://public.ccsds.org/Pubs/727x0b5.pdf).\nThe underlying base packet library used to generate the packets to be sent is the\n[spacepackets](https://github.com/us-irs/spacepackets-py) library.\n\n# Install\n\nYou can install this package from PyPI\n\nInstall command assuming an active virtual environment:\n\n```sh\npip install cfdp-py\n```\n\n\n# Examples\n\nYou can find all examples [inside the documentation](https://cfdp-py.readthedocs.io/en/latest/examples.html)\nand the `examples` directory of this repository.\n\n# Tests\n\nIf you want to run the tests, it is recommended to install `pytest` and `coverage` (optional)\nfirst. You also have to install the package with the optional `test` feature:\n\n```sh\npip install coverage pytest\npip install cfdp-py[test]\n```\n\nRunning tests regularly:\n\n```sh\npytest .\n```\n\nRunning tests with coverage:\n\n```sh\ncoverage run -m pytest\n```\n\n# Documentation\n\nThe documentation is built with Sphinx\n\nInstall the required dependencies first:\n\n```sh\npip install -r docs/requirements.txt\n```\n\nThen the documentation can be built with\n\n```sh\ncd docs\nmake html\n```\n\nYou can run the doctests with\n\n```sh\nmake doctest\n```\n\n# Formatting and Linting\n\nLinting:\n\n```sh\nruff check .\n```\n\nFormatting:\n\n```sh\nruff format .\n```\n",
"bugtrack_url": null,
"license": "Apache-2.0",
"summary": "Library for high level CCSDS File Delivery Protocol (CFDP) components",
"version": "0.5.1",
"project_urls": {
"Homepage": "https://github.com/us-irs/cfdp-py"
},
"split_keywords": [
"ccsds",
" space",
" communication",
" packet",
" file-transfer"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "c6cec9d1e9bd3884fd9820d580e3b77da7d217b63e219c78c8ee6cd1517c721a",
"md5": "ef3f37c9ae4bc5c4d9617bbd29aff3e3",
"sha256": "fe4786002c85046133bc0ae189f107b2245e8debda0875b46c6e24877d182d5e"
},
"downloads": -1,
"filename": "cfdp_py-0.5.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "ef3f37c9ae4bc5c4d9617bbd29aff3e3",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9",
"size": 44890,
"upload_time": "2025-02-10T13:25:19",
"upload_time_iso_8601": "2025-02-10T13:25:19.221664Z",
"url": "https://files.pythonhosted.org/packages/c6/ce/c9d1e9bd3884fd9820d580e3b77da7d217b63e219c78c8ee6cd1517c721a/cfdp_py-0.5.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "6d37707b6718797ceffe452b6b25476f1fb2200476c187f2e06874f2e4451dc4",
"md5": "104dca060f66dea80f34dd71c6a1e5c0",
"sha256": "751f0c8a4e89ed5828c37f8430075fd0d95080b657ab13a97d2688c4b9fab1d1"
},
"downloads": -1,
"filename": "cfdp_py-0.5.1.tar.gz",
"has_sig": false,
"md5_digest": "104dca060f66dea80f34dd71c6a1e5c0",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 67827,
"upload_time": "2025-02-10T13:25:21",
"upload_time_iso_8601": "2025-02-10T13:25:21.285992Z",
"url": "https://files.pythonhosted.org/packages/6d/37/707b6718797ceffe452b6b25476f1fb2200476c187f2e06874f2e4451dc4/cfdp_py-0.5.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-02-10 13:25:21",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "us-irs",
"github_project": "cfdp-py",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [],
"lcname": "cfdp-py"
}