Documentation for pyetp and rddms-io
This library consists of three main components (as three separate namespace packages).
- An RDDMS-client specifically targetting the OSDU
open-etp-server
under
rddms-io. - An ETP v1.2 client under
pyetp. - Objects and utilities for working, serializing, and de-serializing RESQML
v2.0.1 objects under
resqml_objects.
The following Energistics (c) products were used in the creation of this work: Energistics Transfer Protocol (ETP) v1.2 and RESQML v2.0.1
The documentation for the two Energistics standards used are found here:
- For ETP v1.2 see: https://publications.opengroup.org/standards/energistics-standards/energistics-transfer-protocol/v234.
- For RESQML v2.0.1 see: https://publications.opengroup.org/v231a.
Installation
The library is published to PyPI and can be installed via:
This includes all the aforementioned packages.Local development
Locally we suggest setting up a virtual environment, and installing the latest
version of pip. Then install the library in editable mode along with the
dev-dependency group. That is:
python -m venv .venv
source .venv/bin/activate
pip install pip --upgrade
pip install -e .
pip install --group dev
Linting and formatting
We use ruff as a linter and formatter. To lint run:
To run the formatter do: Or if you just want to check what could have been formatted:Running the unit tests
We have set up unit tests against a local open-etp-server. To start this server run:
If you want to re-use the same terminal window you should use the
--detach-option, otherwise start a new terminal. We use pytest for testing,
which can be run via:
License
The project is licensed under the terms of the Apache 2.0 license.