Public python SDK for the CEMS PileCore web-API
This repository is created by CEMS BV and is a public python wrapper around the CEMS PileCore web-API.
To install a package in this repository run:
$ pip install py-pilecore
To use py-pilecore add the follow ENV vars to your environment. Or provide them when asked.
* NUCLEI_TOKEN
- Your NUCLEI user token
You can obtain your NUCLEI_TOKEN on NUCLEI.
Go to personal-access-tokens and create a new user token.
We recommend developing in Python3.11 with a clean virtual environment (using virtualenv or conda), installing the requirements from the requirements.txt file:
Example using virtualenv and pip to install the dependencies in a new environment .env on Linux:
python -m venv .env
source .env/bin/activate
python -m pip install --upgrade pip setuptools
pip install -r requirements.txt
pip install -e .Build the docs:
python -m pip install --upgrade pip setuptools
pip install -r requirements.txt
pip install .
sphinx-build -b html docs publicWe format our code with black and isort.
black --config "pyproject.toml" src/pypilecore tests notebooks
isort --settings-path "pyproject.toml" src/pypilecore tests notebooksTo maintain code quality we use the GitHub super-linter.
To run the linters locally, run the run_super_linters.sh bash script from the root directory.
Test the software with the use of coverage:
python -m pip install --upgrade pip setuptools
pip install -r requirements.txt
pip install -e .
coverage run -m pytestRequirements are autogenerated by the pip-compile command with python 3.11
Install pip-tools with:
pip install pip-toolsGenerate requirements.txt file with:
pip-compile --extra=test --extra=lint --extra=docs --output-file=requirements.txt pyproject.tomlUpdate the requirements within the defined ranges with:
pip-compile --upgrade --extra=test --extra=lint --extra=docs --output-file=requirements.txt pyproject.tomlNote that pip-compile might run from your global path. You can also invoke the compile
command from the piptools module on a specific python installation (e.g. within a virtualenv):
python -m piptools compile