Python client for serval-dna REST interface
Project description
Python client for the serval-dna REST-interface
Provides a client to interact with serval-dna's REST-interface in python
Functionality
The following REST-functionality is supported:
- Keyring
- Rhizome
- MeshMS
- MeshMB
- Route
For documentation on the specific endpoints, please consult The serval-dna documentation
Dependencies
Up to v0.4
, the code is compatible with both Python 2.7 & 3.4+. As of v0.5
, you will need Python 3.6+
The only external runtime-dependency is requests. This should be automatically installed by pip based on the package metadata.
Development dependencies are the following:
Automatic format checking is done using black and pre-commit.
In order to run the tests, you will need hypothesis, pytest, and pytest-cov for coverage-reports.
To install all dependencies (both runtime and development/testing) run pip install -r requirements.txt
Installation
As of v0.4
, releases are uploaded to PyPi, so you can just install it by name
pip install pyserval
Development
In order to have reasonably well formatted code, a format-checking pre-commit hook is supplied. The tool used for checking/reformatting is black. Note that the hook itself does not do any reformatting, it merely informs you that a file is not properly formatted. You need to do the reformatting yourself using black $FILEPATH
.
The tests require you to have the servald
binary from serval-dna installed and available in your $PATH
. In order to have a consistent testing enviroment, /tmp/pyserval-tests/
will be used as the $SERVALINSTANCE_PATH
.
- Clone Project
- Install project to python-path
- You might want to use a virtualenv
- You might also want to do an editable install with
pip install -e .
- Install development dependencies with
pip install -r requirements.txt
- Install git pre-commit hook with
pre-commit install
- For testing: In the project root run
pytest --cov=pyserval
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file pyserval-0.5.tar.gz
.
File metadata
- Download URL: pyserval-0.5.tar.gz
- Upload date:
- Size: 26.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/44.0.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.8.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6c00f4fd63485e40e2babc769451a5f4bbcc8a39f469a2b5be5f3f252afe331f |
|
MD5 | eb525ccccd6858c25c938747eb126d67 |
|
BLAKE2b-256 | 9af86109dbe5a21f3c68fdc277cdb033562a99270d304d5d5fd2ad53ca2afff0 |
File details
Details for the file pyserval-0.5-py3-none-any.whl
.
File metadata
- Download URL: pyserval-0.5-py3-none-any.whl
- Upload date:
- Size: 33.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/44.0.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.8.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e6e0c91618ff0e93815d9687303f487ddffd54a6a75073bcaa38b410b9baa443 |
|
MD5 | 2aee8700d6c5dd1ff12d5ab1a077cff8 |
|
BLAKE2b-256 | 0f1a8f61f1158ff0326bb259917521ff2d8d59030899ce0d5bb7946c305566bd |