PashehNet
Provides a simulated sensor network (SSN) framework for publishing to a target system. The package implements both an API and command line interface to provide this service.
This README is intentionally short for tl;dr purposes. Full documentation can be found here.
Installation
If available from a package repository:
pip install pashehnet
Otherwise you can install directly from the GitHub repo:
pip install git+https://github.com/zaggyai/pashehnet
Contributing
First, fork the repo if not a current maintainer, or clone if you are! :)
Make sure your virtual env is up-to-date:
pip install --upgrade pip wheel setuptools
Install package in dev/editable mode:
pip install -e .
Install dev environment dependencies such as pytest, flake8 and supporting deps for tests:
pip install -r dev-requirements.txt
Keep in mind that even if you already have a virtualenv configured from a previous fork/clone, its dependencies could be out of date so re-running the installs should bring your virtualenv current.
Environment
You can leverage environment variables within code or CLI config files for sensitive data you don't want to check into a repo. This is always a going concern for any code that requires client/server configuration. Please be careful to never add security credentials to a commit as they're nearly impossible to permanently remove from a repo after the fact.
For MQTT broker config, we typically define the following env vars and use them in our code/configs:
MQTT_HOSTMQTT_PORTMQTT_USERMQTT_PWD
We like the cross-platform direnv tool and have a gitignore exclusion for its files, but you do you! 🙃
Opening a Pull Request (PR)
Pull requests are a git workflow for managing branch merges with reviews and tests. You can read more about them in the GitHub docs. Before opening a PR please make sure the following commands complete locally without errors in your local dev environment as they will block a PR if not:
# Run linter
flake8 src/ tests/
# Run all unit tests
# Note we disable deprecation warnings for the time being;
# there's a method to the madness
pytest -W ignore::DeprecationWarning
Release files for pashehnet 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pashehnet-0.1.1.tar.gz | 17.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pashehnet-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 41.4 kB
Release files / pashehnet-0.1.1.tar.gz
| Download URL | pashehnet-0.1.1.tar.gz |
|---|---|
| Size | 17.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
784781bf1bfa0a024b54358bdae38b09b762bfed3bff36a5b91053258150512f
|
|
BLAKE2b-256 checksum How to use checksums |
d6059f43a29200d7591742aa4fce0e1c940b993d79c5c1072c342574781afcd0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.10.12
|
Release files / pashehnet-0.1.1-py3-none-any.whl
| Download URL | pashehnet-0.1.1-py3-none-any.whl |
|---|---|
| Size | 24.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
6eb4f900353fa138dc9f4ad09e91798f94fe65e7d50d15efe1652356167796ae
|
|
BLAKE2b-256 checksum How to use checksums |
afa6bece1f01f7c69364e2cb9bf378e46239c8c8afe69ac2527bda96b406d588
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.10.12
|