Skip to main content

Interface with OSDU RDDMS using ETP protocol

Project description

Build Status codecov Python PyPI version License

Pyetp is a library implementing an ETP v1.2 client with utilities and support for working with RESQML v2.0.1 models.

The following Energistics (c) products were used in the creation of this work: Energistics Transfer Protocol (ETP) v1.2 and RESQML v2.0.1

Installing the library

This package is published to PyPI, and can be installed via:

pip install pyetp

The library is tested against Python versions 3.10, 3.11, 3.12 and 3.13.

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:

ruff check

To run the formatter do:

ruff format

Or if you just want to check what could have been formatted:

ruff format --check

RESQML versions

The library is built and tested against RESQML v2.0.1. The spec can be downloaded here.

Generated Python objects from RESQML spec

Under src/pyetp/resqml_objects you will find Python objects generated from the RESQML xml spec.

Documentation

See /examples for 2D grid usage

tests/test_mesh.py for Unstructured/structured mesh

Running the unit tests

We have set up unit tests against a local open-etp-server. To start this server run:

docker compose -f tests/compose.yml up [--detach]

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:

py.test

This library is under active development and subject to breaking changes

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyetp-0.0.48.tar.gz (188.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pyetp-0.0.48-py3-none-any.whl (192.1 kB view details)

Uploaded Python 3

File details

Details for the file pyetp-0.0.48.tar.gz.

File metadata

  • Download URL: pyetp-0.0.48.tar.gz
  • Upload date:
  • Size: 188.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pyetp-0.0.48.tar.gz
Algorithm Hash digest
SHA256 034f8fccbbebb2c7d7eff131c9ef5a3a919492127a156414b54abfb3d67c82cb
MD5 cbc02bef22f22f0cd1e6eade0100a225
BLAKE2b-256 bbec5a6985bd4acf07abecce2979e668130fc819e92e176fe4757731ade6faa4

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyetp-0.0.48.tar.gz:

Publisher: publish.yml on equinor/pyetp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyetp-0.0.48-py3-none-any.whl.

File metadata

  • Download URL: pyetp-0.0.48-py3-none-any.whl
  • Upload date:
  • Size: 192.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pyetp-0.0.48-py3-none-any.whl
Algorithm Hash digest
SHA256 519f1c09e3f7ff3a6b78b2682e23b9bb147a9ab9e92309dcc5f7232c268f7fd3
MD5 0272bab44777826cfad6b86ce47dc7fd
BLAKE2b-256 d0af17712bc4f48687c90e5f55219860ed8ccd3c6f278d72e394608fefd257a1

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyetp-0.0.48-py3-none-any.whl:

Publisher: publish.yml on equinor/pyetp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page