Skip to main content

Package to fetch data through the REST API of energy portfolio management software "Belvis".

Project description

PyPI GitHub Actions - CI GitHub Actions - pre-commit Documentation Status

Belvys is a package to fetch data through the REST API of energy portfolio management software “Belvis”.

Installation

pip install belvys

Or add it to pyproject.toml.

Documentation

Documentation is hosted on readthedocs:

https://belvys.readthedocs.io/

The package defines 3 classes: Tenant, which is the main class, and Structure and Api, which it depends on.

  • The Tenant class uses a structure specification (an instance of the Structure class) and an interface (an instance of the Api class) to retrieve timeseries (more specifically portfolyo.PfLine instances) from Belvis.

  • The purpose of the Structure class is primarily to specify the portfolios and timeseries we are interested in. This includes original Belvis portfolios, as well as synthetic ones that are the sum of several original porfolios. It also specifies where relevant prices can be found in Belvis.

  • The Api class is used to query the belvis Api and retrieve data, including the authentication part.

Repository

The git repository is hosted on github:

http://www.github.com/rwijtvliet/belvys

Developing

This project uses black to format code and flake8 for linting. We also support pre-commit to ensure these have been run. To configure your local environment please install these development dependencies and set up the commit hooks.

poetry install --with dev,test
pre-commit install

Development is done on feature branches, which are merged back into master via pull request.

Before creating a pull request:

  • Merge the current state of master into the feature branch;

  • Increase the version number (by running poetry version major|minor|patch) of the feature branch.

Publishing

To publish the current state of master, run the create_tag.sh script. It will create a tag from the version number and push it to github. (The version number must be unequal to a previous tag, which is automatically true if the development is only done in feature branches, and every feature branch increases the version number.) On github, a release can be drafted from the tag.

Disclaimer

This package interacts with the Belvis software which is delevoped by Kisters. This package is not written by, maintained by, or associated with Kisters in any way.

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

belvys-0.3.0.tar.gz (1.9 MB view details)

Uploaded Source

Built Distribution

belvys-0.3.0-py3-none-any.whl (1.9 MB view details)

Uploaded Python 3

File details

Details for the file belvys-0.3.0.tar.gz.

File metadata

  • Download URL: belvys-0.3.0.tar.gz
  • Upload date:
  • Size: 1.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.19

File hashes

Hashes for belvys-0.3.0.tar.gz
Algorithm Hash digest
SHA256 fafcf654efce64e66aeb1c972f8381771874cb419c02a9398865c8d9a1b04ee1
MD5 2c8e47ae30484380cfa456352ff3463c
BLAKE2b-256 a96380e789b2e41f73738d866ff5e5627fce90dd0cc027d0a61502f4386be8d6

See more details on using hashes here.

File details

Details for the file belvys-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: belvys-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 1.9 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.19

File hashes

Hashes for belvys-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2f1436f0e5e965119ac67e984a1d3434be13c9139dcff1850035a760651c8f64
MD5 fa0fa4bf6ed2d081f1f671d49ddd4ef0
BLAKE2b-256 1c2347d65e65749ed0d2883998a95b12d18f2bc6bb9864c9b6bda4fb3a2e2416

See more details on using hashes here.

Supported by

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