Librairies ROK4 Python
Ces librairies facilitent la manipulation d'entités du projet ROK4 comme les Tile Matrix Sets, les pyramides ou encore les couches, ainsi que la manipulation des stockages associés.
Installer la librairie
Installations système requises :
- debian :
apt install python3-rados python3-gdal
Depuis PyPI : pip install rok4
Depuis GitHub : pip install https://github.com/rok4/core-python/releases/download/1.7.1/rok4-1.7.1-py3-none-any.whl
L'environnement d'exécution doit avoir accès aux librairies système. Dans le cas d'une utilisation au sein d'un environnement python, précisez bien à la création python3 -m venv --system-site-packages .venv
.
Utiliser la librairie
from rok4.TileMatrixSet import TileMatrixSet
try:
tms = TileMatrixSet("file:///path/to/tms.json")
except Exception as exc:
print(exc)
Plus d'exemple dans la documentation développeur.
Contribuer
-
Installer les dépendances de développement :
sh python3 -m pip install -e[dev]
-
Consulter les directives de contribution
Compiler la librairie
apt install python3-venv python3-rados python3-gdal
python3 -m venv .venv
source .venv/bin/activate
python3 -m pip install --upgrade build bump2version
bump2version --allow-dirty --current-version 0.0.0 --new-version 1.7.1 patch pyproject.toml src/rok4/__init__.py
# Run unit tests
python3 -m pip install -e .[test]
# To use system installed modules rados and osgeo
echo "/usr/lib/python3/dist-packages/" >.venv/lib/python3.10/site-packages/system.pth
python3 -c 'import sys; print (sys.path)'
# Run tests
coverage run -m pytest
# Get tests report and generate site
coverage report -m
coverage html -d dist/tests/
# Build documentation
python3 -m pip install -e .[doc]
pdoc3 --html --output-dir dist/ rok4
# Build artefacts
python3 -m build
Remarque :
Lors de l'installation du paquet apt python3-gdal
, une dépendance, peut demander des interactions de configuration. Pour installer dans un environnement non-interactif, définir la variable shell DEBIAN_FRONTEND=noninteractive
permet d'adopter une configuration par défaut.
Publier la librairie sur Pypi
Configurer le fichier $HOME/.pypirc
avec les accès à votre compte PyPI.
python3 -m pip install --upgrade twine
python3 -m twine upload --repository pypi dist/rok4-1.7.1-py3-none-any.whl dist/rok4-1.7.1.tar.gz