https://github.com/geosiris-technologies/etpproto-python
A pure-Python, bring-your-own-I/O, implementation of ETP v1.2
https://github.com/geosiris-technologies/etpproto-python
energistics etp osdu prodml python resqml witsml
Last synced: 12 months ago
JSON representation
A pure-Python, bring-your-own-I/O, implementation of ETP v1.2
- Host: GitHub
- URL: https://github.com/geosiris-technologies/etpproto-python
- Owner: geosiris-technologies
- License: apache-2.0
- Created: 2022-09-20T21:27:55.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2024-04-25T15:16:27.000Z (about 2 years ago)
- Last Synced: 2024-04-26T14:47:09.707Z (about 2 years ago)
- Topics: energistics, etp, osdu, prodml, python, resqml, witsml
- Language: Python
- Homepage:
- Size: 223 KB
- Stars: 0
- Watchers: 1
- Forks: 2
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
ETP Protocol Implementation
==========
[](https://github.com/geosiris-technologies/etpproto-python/blob/main/LICENSE)
[](https://etpproto-python.readthedocs.io/en/latest/?badge=latest)
[](https://github.com/geosiris-technologies/etpproto-python/actions/workflows/ci-tests.yml)

[](https://badge.fury.io/py/etpproto)

[](https://codecov.io/gh/geosiris-technologies/etpproto-python)
Installation
----------
Etpproto-python can be installed with pip :
```console
pip install etpproto
```
or with poetry:
```console
poetry add etpproto
```
Developing
----------
First clone the repo from gitlab.
```console
git clone https://github.com/geosiris-technologies/etpproto-python.git
```
To develop, you should use **[Poetry](https://python-poetry.org/)**.
Install all necessary packages (including for development) with:
```console
poetry install
```
Then setup the Git pre-commit hook for **[Black]()** and **[Pylint](https://www.pylint.org/)** by running
```console
poetry run pre-commit install
```
as the ``rev`` gets updated through time to track changes of different hooks,
simply run
```console
poetry run pre-commit autoupdate
```
to have pre-commit install the new version.
To bump a new version of the project simply publish a release name 'vX.X.X' with X replaced by your numbers
Test
----------
Run tests with poetry
```console
poetry run pytest -v --cache-clear -rf --cov=etpproto/ --cov-report=term --cov-report=html --maxfail=10
```
Test the code validity :
```console
poetry run black .
poetry run flake8 .
poetry run mypy etpproto
```