Conversation
…r public pour l'utiliser directement dans le widget et pas le charger à chaque fois
…pv toutes les semaines
fflorent
left a comment
There was a problem hiding this comment.
Merci Camille, est-ce que tu peux rajouter une description ?
C'est très important même pour des petites PRs pour avoir du contexte quand on reviewe le code.
| // Fichier GeoJSON hébergé localement pour éviter les problèmes CORS | ||
| // Le fichier est servi depuis GitHub Pages dans le dossier public/ | ||
| // https://www.data.gouv.fr/fr/datasets/r/942d4ee8-8142-4556-8ea1-335537ce1119 | ||
| const QPV_DATA_URL = "/qp-politiques-ville.geojson"; |
There was a problem hiding this comment.
Ça me paraît bourrin de vouloir mettre le JSON dans le repo Git, même pour corriger un souci de CORS.
Est-ce que c'est pas plutôt envisageable de télécharger le JSON soit au moment du démarrage du serveur soit au moment du build de l'app ?
There was a problem hiding this comment.
Je suis pas certaine de comprendre ce que tu veux dire ? Si tu veux pas le mettre dans le repo git c'est pas une question de quand on le fait mais où on le stock, et le démarrage du serveur ou le build peuvent être très espacé si on fait pas de mise à jour du code pendant un temps
Enfait je comprends pas le soucis de le mettre dans le repo git tant qu'on le met dans le gitignore
There was a problem hiding this comment.
Je trouve de plus que le comportement du widget est bien mieux qu'avant parce qu'il est tout de suite opérationnel, avant on chargeait les données à chaque rechargement du widget et donc c'était très lent au début et ça l'était pour chaque utilisateur
There was a problem hiding this comment.
La je vois que la dernière mise à jour de ce fichier est même le 5 fev 2025 donc potentiellement il y a besoin de le mettre à jour qu'une fois par an ou tous les 6 mois (ou tous les mois si on veut être certains d'avoir la dernière version)
https://www.data.gouv.fr/datasets/quartiers-prioritaires-de-la-politique-de-la-ville-qpv
|
|
||
| - **Fichier** : `public/qp-politiques-ville.geojson` | ||
| - **Source** : [data.gouv.fr](https://www.data.gouv.fr/fr/datasets/r/942d4ee8-8142-4556-8ea1-335537ce1119) | ||
| - **Configuration** : `.github/workflows/update-qpv-data.yml` |
There was a problem hiding this comment.
Je pense que c'est pas le truc à faire avec un repo Git, ça va rendre très difficile les pulls
Je ne dis absolument pas que c'est ce qu'il faut mettre ça en place, mais regarde les motivations derrière ce projet : https://git-lfs.com/
There was a problem hiding this comment.
Pour les pull on peut mettre le fichier dans le gitignore en effet.
Mais à part ce soucis j'ai déjà vu des projets faire des trucs similaires ça me choc pas particulièrement
| - name: Download QPV GeoJSON file | ||
| run: | | ||
| echo "Téléchargement du fichier QPV depuis data.gouv.fr..." | ||
| curl -L "https://www.data.gouv.fr/fr/datasets/r/942d4ee8-8142-4556-8ea1-335537ce1119" \ |
There was a problem hiding this comment.
Cet UUID (942d4ee8-8142-4556-8ea1-335537ce1119) correspond exclusivement au jeu de données suivant :
Perimètre des quartiers prioritaires de la politique de la ville 2024 (format geojson)
Ce fichier peut bouger ? J'ai l'impression que ça correspond exclusivement à l'année 2024
Contexte
Il y a un soucis avec l'url utilisé pour télécharger les paramètres QPV, l'url envoie un code 301 (redirection) et ne permet pas de requêtes cross-origin. Il est étonnant que ça fonctionnait auparavant. L'url utilisé est https://www.data.gouv.fr/fr/datasets/r/942d4ee8-8142-4556-8ea1-335537ce1119 qu'on peut aussi retrouvé depuis ce lien :
https://www.data.gouv.fr/datasets/quartiers-prioritaires-de-la-politique-de-la-ville-qpv
Il faut noter que ces données changent très rarement et que dans le comportement précédent les données étaient téléchargées à l'ouverture du widget ce qui ralentissait son usage notamment à l'initialisation.
Réalisé
On charge le geojson directement dans le git en le mettant dans le fossier /public. Il ne vaut mieux pas compter sur une action humaine pour la mise à jour de ce fichier, on crée donc un cron qui va charger ce fichier à interval régulier pour s'assurer d'utiliser la dernière version. Ce changement permet d'avoir une utilisation plus rapide du widget.