Backend implementation of the namespace `urn:xmpp:omemo:2` for python-omemo.
Project description
python-twomemo
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").
Installation
Install the latest release using pip (pip install twomemo
) or manually from source by running pip install .
in the cloned repository.
Protobuf
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
.
Type Checks and Linting
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
Getting Started
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/
.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.