Backend implementation for python-omemo, equipping python-omemo with support for OMEMO under the namespace urn:xmpp:omemo:2
(casually/jokingly referred to as "twomemo").
Install the latest release using pip (pip install twomemo
) or manually from source by running pip install .
in the cloned repository.
Install protoc
. Then, in the root directory of this repository, run:
$ pip install protobuf mypy mypy-protobuf types-protobuf
$ protoc --python_out=twomemo/ --mypy_out=twomemo/ twomemo.proto
This will generate twomemo/twomemo_pb2.py
and twomemo/twomemo_pb2.pyi
.
python-twomemo uses mypy for static type checks and both pylint and Flake8 for linting. All checks can be run locally with the following commands:
$ pip install --upgrade mypy pylint flake8 mypy-protobuf types-protobuf
$ mypy --strict twomemo/ setup.py
$ pylint twomemo/ setup.py
$ flake8 twomemo/ setup.py
Refer to the documentation on readthedocs.io, or build/view it locally in the docs/
directory. To build the docs locally, install the requirements listed in docs/requirements.txt
, e.g. using pip install -r docs/requirements.txt
, and then run make html
from within the docs/
directory. The documentation can then be found in docs/_build/html/
.