Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 6 additions & 5 deletions .github/workflows/build-and-release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -73,36 +73,36 @@ jobs:
echo "/usr/lib/python3/dist-packages/" >.venv/lib/python${{ matrix.python-version }}/site-packages/system.pth

- name: Run unit tests
if: "(${{ matrix.os }}=='ubuntu-20.04')&&(${{ matrix.python-version }}=='3.8')"
if: "matrix.os == 'ubuntu-20.04' && matrix.python-version == '3.8'"
run: |
source .venv/bin/activate
pip install -e .[test]
coverage run -m pytest
coverage report -m

- name: Build unit tests report
if: "(${{ matrix.os }}=='ubuntu-20.04')&&(${{ matrix.python-version }}=='3.8')"
if: "matrix.os == 'ubuntu-20.04' && matrix.python-version == '3.8'"
run: |
source .venv/bin/activate
coverage html -d dist/tests/
rm dist/tests/.gitignore

- name: Build package
if: "(${{ matrix.os }}=='ubuntu-20.04')&&(${{ matrix.python-version }}=='3.8')"
if: "matrix.os == 'ubuntu-20.04' && matrix.python-version == '3.8'"
run: |
source .venv/bin/activate
python3 -m build

- name: Build documentation
if: "(${{ matrix.os }}=='ubuntu-20.04')&&(${{ matrix.python-version }}=='3.8')"
if: "matrix.os == 'ubuntu-20.04' && matrix.python-version == '3.8'"
run: |
source .venv/bin/activate
pip install -e .[doc]
pdoc3 --html --output-dir dist/ rok4
cp README.md CHANGELOG.md dist/

- name: Upload packages, tests results and documentation
if: "(${{ matrix.os }}=='ubuntu-20.04')&&(${{ matrix.python-version }}=='3.8')"
if: "matrix.os == 'ubuntu-20.04' && matrix.python-version == '3.8'"
uses: actions/upload-artifact@v3
with:
name: dist-py3
Expand Down Expand Up @@ -189,6 +189,7 @@ jobs:
cat artifact/CHANGELOG.md >>docs/versions/${{ github.ref_name }}/CHANGELOG.md
sed "s#__version__#${{ github.ref_name }}#" templates/README.template.md >docs/versions/${{ github.ref_name }}/README.md
cat artifact/README.md >>docs/versions/${{ github.ref_name }}/README.md
sed -i "s#x.y.z#${{ github.ref_name }}#g" docs/versions/${{ github.ref_name }}/README.md
sed "s#__version__#${{ github.ref_name }}#" templates/index.template.md >docs/index.md
echo "# Versions" >docs/versions.md
echo "" >>docs/versions.md
Expand Down
21 changes: 13 additions & 8 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,23 +1,28 @@
## Summary

Fonction de lecture d'une tuile vecteur décodée.
Lecture par système de fichier virtuel avec GDAL

## Changelog

### [Added]

* Pyramid
* Décodage d'une tuile vecteur avec `get_tile_data_vector` (le pendant vecteur de `get_tile_data_raster`) : le résultat est un "dictionnaire GeoJSON", et les coordonnées sont en relatif à la tuile (souvent entre 0 et 4096)
* Utils
* Ajout d'un cache pour la création de spatial reference (via la fonction `srs_to_spatialreference`)
* Storage
* Fonction `get_osgeo_path` permettant de configurer le bon sytème de fichier virtuel en fonction du chemin fourni, et retourne celui à utiliser dans le Open de gdal ou ogr

### [Changed]

* Storage
* La lecture d'un fichier ou objet qui n'existe pas émet toujours une exception `FileNotFoundError`
* Pyramid
* Si la tuile que l'on veut lire est dans une dalle qui n'existe pas, on retourne `None`
* la récupération d'un client S3 (`__get_s3_client`) permet de récupérer le client, l'hôte, les clés d'accès et secrète, ainsi que le nom du bucket sans l'éventuel hôte du cluster

### [Fixed]

* Storage
* Lecture binaire S3 : mauvaise configuration du nom du bucket et de l'objet et mauvaise lecture partielle

### [Removed]

* Exceptions
* `NotImplementedError` est une exceptions native
<!--
### [Added]

Expand Down
3 changes: 3 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,11 @@ Installations système requises :
* debian : `apt install python3-rados python3-gdal`

Depuis [PyPI](https://pypi.org/project/rok4/) : `pip install rok4`

Depuis [GitHub](https://github.com/rok4/core-python/releases/) : `pip install https://github.com/rok4/core-python/releases/download/x.y.z/rok4-x.y.z-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

```python
Expand Down
8 changes: 0 additions & 8 deletions src/rok4/Exceptions.py
Original file line number Diff line number Diff line change
Expand Up @@ -37,11 +37,3 @@ def __init__(self, expected_format, content, issue):
self.content = content
self.issue = issue
super().__init__(f"Expected format {expected_format} to read '{content}' : {issue}")

class NotImplementedError(Exception):
"""
Exception raised when a feature could be provided but is not implemented yet
"""

def __init__(self, issue):
super().__init__(issue)
Loading