MerginMaps / MerginMaps/python-api-client
Client fails to pull on windows (when installed from pip)
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- Python
- Estrellas
- 23
- Forks
- 12
- Merge medio
- 2 d 13 h
- PR fusionados (30 d)
- 7
Descripción
When using the client on Windows outside of QGIS (e.g. installed through pip), it does not work correctly when trying to pull a new version that involves geodiff operations:
import mergin
client = mergin.MerginClient (login='john', password='topsecret')
client.download_project('john/project', 'C:/Data/Project')
# now do some modifications to a GeoPackage on the server
client.pull_project('C:/Data/Project')
It fails with the following traceback:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Users\XYZ\AppData\Roaming\Python\Python38\site-packages\mergin\client.py", line 546, in pull_project
return pull_project_finalize(job)
File "C:\Users\XYZ\AppData\Roaming\Python\Python38\site-packages\mergin\client_pull.py", line 553, in pull_project_finalize
raise ClientError("Cannot patch basefile {}! Please try syncing again.".format(basefile))
mergin.common.ClientError: Cannot patch basefile C:\Data\Project\.mergin\test.gpkg! Please try syncing again.
It looks like the underlying issue is in geodiff as client-log.txt contains this error:
GEODIFF: Unable to enable sqlite3/gpkg extensions
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
Comienza con client.py:546 y client_pull.py:553, y después inspecciona client-log.txt en busca del error de la extensión GEODIFF. Reproduce el flujo de trabajo de Windows con pip instalado descrito en el issue y sigue el paso de pull del GeoPackage. Se considera completado cuando pull_project se completa para un GeoPackage modificado sin el ClientError indicado.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- python, sqlite
- Área
- databases, operating-systems
- Tipo de issue
- Error
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 35/100