An OpenADR client for Python

Stan Janssen 0f9b1c2a86 Include simple client example in docs преди 4 години
.github 94b8f6f4fe Renamed the Github Action to Test Suite преди 4 години
certificates 983efb3765 Implement client side certificates преди 4 години
docs 0f9b1c2a86 Include simple client example in docs преди 4 години
openleadr a1fec1b824 Return response if no message is available преди 4 години
test a1fec1b824 Return response if no message is available преди 4 години
.gitignore 0192df442c Bump version number to 0.5.2 преди 4 години
CODE_OF_CONDUCT.md 5063aa1a29 Add Code of Conduct преди 4 години
CONTRIBUTING.md 0be37d21f9 Include contributing guidelines преди 4 години
LICENSE 33abfb3a21 Add Apache 2.0 License преди 4 години
MANIFEST.in c3c521c588 Clean up of code to conform to flake8 преди 4 години
README.md 4f52703261 Add Test Coverage badge to README.md преди 4 години
VERSION 130a8e905f Version 0.5.11, released 3 december 2020 преди 4 години
dev_requirements.txt 2ee43e02ba Completed Message Signing infrastructure and API преди 4 години
logo.png 283662647d Add files via upload преди 4 години
openadr.md 19cc7cbd15 Initial minimal version of pyopenadr преди 5 години
setup.py 83a25d535b Use the correct C14N algorithm as required by OpenADR преди 4 години

README.md

Test Suite Test Coverage PyPI Downloads CII Best Practices

OpenLEADR

OpenLEADR is a Python 3 module that provides a convenient interface to OpenADR systems. It contains an OpenADR Client that you can use to talk to other OpenADR systems, and it contains an OpenADR Server (VTN) with convenient integration possibilities.

It currently implements the OpenADR 2.0b specification.

Documentation

You can find documentation here: https://openleadr.org/docs.

Contributing

If you'd like to help make OpenLEADR better, you can do so in the following ways:

File bug report or feature request

We keep track of all bugs and feature requests on Github Issues. Please search the already close issues to see if your question was asked before.

You're also very welcome to leave comments on existing issues with your ideas on how to improve OpenLEADR.

File a pull request

We'd love for you to contribute code to the project. We'll take a look at all pull requests, no matter their state. Please note though, that we will only accept pull requests if they meet at least the following criteria:

  • Your code style is flake8 compliant (with a maximum line length of 127 characters)
  • You provide tests for your new code and your code, and you amend any previous tests that fail if they are impacted by your code change
  • Your pull request refers to an Issue on our issue tracker, so that we and other people can see what problem is being solved.
  • You sign off your commits (git commit -s), to indicate that your contribution complies with our license and does not violate anybody else's copyright.

That said, please don't let the above requirements discourage you from filing a pull requests. If you don't meet all of the above requirements, we'll help you fix the remaining things to get it into shape.

Security issues

Let it be clear that this code base is still in a development stage, and we don't yet recommend using it for mission critical applications or applications where security is paramount.

That said, we do try to make OpenLEADR as secure as can be to work with. If you find a security vulnerability in OpenLEADR, please let us know at security AT openleadr DOT org. We will get back to you within 72 hours to follow up. We are committed to the following steps:

  • Security vulnerabilities with a known fix will be addressed as soon as possible. This means that work on other things will be put on hold until the security issue is fixed.
  • If a fix is not readily available, we will publish a warning that describes the vulnerable situation and, if possible, any mitigating steps that users of OpenLEADR can take.
  • After any security issue is fixed, we will publish information on it in the Changelog.

Developing

We recommend the following development setup for working with OpenLEADR (this is on Linux / macOS):

git clone https://github.com/openleadr/openleadr-python
cd openleadr-python
python3 -m venv python_env
./python_env/bin/pip3 install -e .
./python_env/bin/pip3 install -r dev_requirements.txt

To run the test suite, you can use the following command:

./python_env/bin/python3 -m pytest -v test/