Skip to content

Releases: PnX-SI/GeoNature

2.1.0 - Module validation

02 Jun 11:30
c5a6882
Compare
Choose a tag to compare

🚀 Nouveautés

  • Intégration du module Validation dans GeoNature (développé par @JulienCorny, financé par @sig-pnrnm)
  • Ajout de tables, règles et fonctions permettant de calculer la sensibilité des occurrences de taxon de la synthèse (#284)
  • Occtax - Possibilité d'enchainer les saisies de relevés et de garder les informations du relevé (#633)
  • Occtax - Amélioration de l'ergonomie de l'interface MapList pour clarifier la recherche et l'ajout d'un relevé + ajout compteur (#467)
  • Révision de l'interface du module Métadonnées, listant les cadres d'acquisition et leurs jeux de données (par @jbrieuclp)
  • Ajout d'un mécanisme du calcul des taxons observés par zonage géographique (#617)
  • Les mailles INPN (1, 5, 10km) sont intégrées à l'installation (avec un paramètre)
  • Statistiques de la page d'accueil - Ajout d'un paramètre permettant de les désactiver (#599)
  • Occtax - Date par défaut paramétrable (#351)
  • Support des géometries multiples (MultiPoint, MultiPolygone, MultiLigne) dans la synthèse et Occtax (#609)
  • Synthese - Affichage des zonages intersectés dans un onglet séparé (#579)

🐛 Corrections

  • Révision complète des scripts de migration de GeoNature v1 à v2 (data/migrations/v1tov2)
  • Masquer l'export du module Synthèse si son CRUVED est défini à 0 (#608)
  • Correction de la vérification du CRUVED du module METADONNEES (#601)
  • Correction de la vérification du CRUVED lorsque get_role = False
  • Correction de la traduction sur la page de connexion (par @jbrieuclp)
  • Occtax - Retour du composant GPS permettant de charger un marker à partir de coordonnées X et Y (#624)
  • Correction lors d'import de fichier GPX ayant une altitude (#631)
  • Occtax - Correction du filtre Observateur texte libre (#598)
  • Métadonnées - Inversion des domaines terrestre/marin (par @xavyeah39)
  • Métadonnées - Correction de l'édition des cadres d'acquisition (#654, par @DonovanMaillard)
  • Mise à jour de sécurité de Jinja2 et SQLAlchemy

⚠️ Notes de version

  • Vous pouvez passer directement à cette version, mais en suivant les notes des versions intermédiaires

  • Suivez ensuite la procédure classique de mise à jour de GeoNature (http://docs.geonature.fr/installation-standalone.html#mise-a-jour-de-l-application)

  • Lancer le script de migration de la base de données :

    Cette nouvelle version de GeoNature intègre les mailles INPN métropolitaines (1, 5, 10km) dans le réferentiel géographique. Si vous ne souhaitez pas les installer, lancer le script ci dessous en passant le paramètre no-grid

cd /home/`whoami`/geonature/data/migrations
wget -O 2.0.1to2.1.0_bis.sh https://raw.githubusercontent.com/PnX-SI/GeoNature/master/data/migrations/2.0.1to2.1.0.sh 
chmod +x 2.0.1to2.1.0_bis.sh
# avec les mailles
./2.0.1to2.1.0_bis.sh
# sans les mailles:
# ./2.0.1to2.1.0_bis.sh no-grid

Regarder ensuite les logs de la migration dans le fichier: var/log/migration_2.0.1_to_2.1.0.log

  • Installer le module VALIDATION si vous le souhaitez :

    Se placer dans le virtualenv de GeoNature

cd /home/`whoami`/geonature/backend
source venv/bin/activate

Lancer la commande d'installation du module puis sortir du virtualenv

geonature install_gn_module /home/`whoami`/geonature/contrib/gn_module_validation/ /validation
sudo supervisorctl restart geonature2
deactivate

2.0.1

18 Mar 16:18
Compare
Choose a tag to compare

Nouveautés

  • Développement : ajout d'une fonction de génération dynamique de requête SQL (avec vérification et cast des types)
  • Synthese : Ajout d'un message indiquant que le module affiche les dernières observations par défaut

Corrections

  • Synthese : correction du filtre CRUVED pour les portées 1 et 2 sur la route synthese/for_web (#584)
  • Synthese : correction du bug lorsque la géométrie est null (#580)
  • Synthese : Correction de la redirection vers le module de saisie (#586)
  • Synthese : Correction de la valeur par défaut de la nomenclature STATUT_OBS (Présent au lieu de NSP)
  • Configuration carto : correction du bug d'arrondissement des coordonnées géographiques (#582)
  • Correction du trigger de calcul de la geom locale
  • Recréation de la vue pr_occtax.export_occtax_sinp qui avait été supprimée lors de la migration RC3 vers RC4
  • Correction de la vue pr_occtax.v_releve_list
  • Correction ajout rang et cd_nom sur l'autocomplete de la synthese, absent dans le script de migration
  • DEPOBIO : Correction de la déconnexion au CAS INPN
  • Occtax et Metadata: correction lors de la mise à jour d'un élement (Merge mal géré par SQLAlchemy lorsqu'on n'a pas une valeur NULL) (#588)
  • Composant "jeu de données" : retour à l'affichage du nom long (#583)
  • Amélioration du style du composant multiselect
  • Metadata : formulaire cadre d'acquisition - listage uniquement des cadres d'acquisition parent pour ne pas avoir de cadres d'acquisition imbriqués
  • Ajouts de tests automatisés complémentaires

Notes de version

2.0.0 - La refonte

28 Feb 15:47
Compare
Choose a tag to compare

La version 2 de GeoNature est une refonte complète de l'application.

  • Refonte technologique en migrant de PHP/Symfony/ExtJS/Openlayers à Python3/Flask/Angular4/Leaflet
  • Refonte de l'architecture du code pour rendre GeoNature plus générique et modulaire
  • Refonte de la base de données pour la rendre plus standardisée, plus générique et modulaire
  • Refonte ergonomique pour moderniser l'application

geonature-login

Pour plus de détails sur les évolutions apportées dans la version 2, consultez les détails des versions RC (Release Candidate) ci-dessous.

Nouveautés

  • Possibilité de charger un fichier (GPX, GeoJson ou KML) sur la carte pour la saisie dans le module Occtax (#256)
  • Ajout d'un moteur de recherche de lieu (basé sur l'API OpenStreetMap Nominatim) sur les modules cartographiques (#476)
  • Intégration du plugin leaflet markerCluster permettant d'afficher d'avantage d'observations sur les cartes et de gérer leurs superposition (#559)
  • Synthèse : possibilité de grouper plusieurs types de zonages dans le composant pnx-areas
  • Design de la page de login
  • Intégration d'un bloc stat sur la page d'accueil
  • Ajout d'un export des métadonnées dans la synthèse
  • Centralisation de la configuration cartographique dans la configuration globale de GeoNature (geonature_config.toml)
  • Cartographie : zoom sur l'emprise des résultats après une recherche
  • Migration de la gestion des métadonnées dans un module à part : 'METADATA' (#550)
  • Export vue synthèse customisable (voir doc)
  • Lien vers doc par module (customisables dans gn_commons.t_modules) (#556)
  • Ajout du code du département dans les filtres par commune (#555)
  • Ajout du rang taxonomique et du cd_nom après les noms de taxons dans la recherche taxonomique (#549)
  • Mise à jour des communes fournies lors de l'installation (IGN admin express 2019) (#537)
  • Synthèse : Ajout du filtre par organisme (#531), affichage des acteurs dans les fiches détail et les exports
  • Synthese: possibilité de filtrer dans les listes déroulantes des jeux de données et cadres d'acquisition
  • Filtre de la recherche taxonomique par règne et groupe INPN retiré des formulaires de recherche (#531)
  • Suppression du champ validation dans le schéma de BDD Occtax car cette information est stockée dans la table verticale gn_commons.t_validations + affichage du statut de validation dans les fiches Occtax et Synthèse
  • Ajout d'une vue gn_commons.v_lastest_validation pour faciliter la récupération du dernier statut de validation d'une observation
  • Suppression de toutes les références à taxonomie.bib_noms en vue de le supprimer de TaxHub
  • Séparation des commentaires sur l'observation et sur le contexte (relevé) dans la Synthèse et simplification des triggers de Occtax vers Synthèse (#478)
  • Nouveau logo GeoNature (#346)

geonature-logo

Corrections

  • Améliorations importantes des performances de la synthèse (#560)
  • Synthèse : correction liée aux filtres multiples et aux filtres géographiques de type cercle
  • Ajout d'une contrainte DELETE CASCADE entre ref_geo.li_municialities et ref_geo.l_areas (#554)
  • Occtax : possibilité de saisir un dénombrement égal à 0 (cas des occurrences d'absence)
  • Occtax : retour à l'emprise cartographique précédente lorsqu'on enchaine les relevés (#570)
  • Occtax : correction de l'automplissage du champ hour_max lors de l'édition d'un relevé
  • Divers compléments de la documentation (merci @jbdesbas, @xavyeah39 et @DonovanMaillard)
  • Ajout de contraintes d'unicité sur les UUID_SINP pour empêcher les doublons (#536)
  • Corrections et compléments des tests automatiques
  • Amélioration de l'installation des modules GeoNature

Notes de version

1. Pour les utilisateurs utilisant la version 1 de GeoNature :

Il ne s'agit pas de mettre à jour GeoNature mais d'en installer une nouvelle version. En effet, il s'agit d'une refonte complète.

  • Sauvegarder toutes ses données car l'opération est complexe et non-automatisée
  • Passer à la dernière version 1 de GeoNature (1.9.1)
  • Passer aux dernières versions de UsersHub et TaxHub
  • Installer GeoNature standalone ou refaire une installation complète
  • Adaptez les scripts présents dans /data/migrations/v1tov2 et exécutez-les pas à pas. Attention ces scripts ont été faits pour la version 2.0.0-rc.1 et sont donc à ajuster, tester, compléter et adapter à votre contexte

2. Pour les utilisateurs utilisant une version RC de GeoNature 2 :

Veuillez bien lire ces quelques consignes avant de vous lancer dans la migration.

  • Vous pouvez passer directement à cette version, mais en suivant les notes des versions intermédiaires.
  • Les personnes ayant configuré leur fichier map.config.ts devront le répercuter dans geonature_config.toml, suite à la centralisation de la configuration cartographique. Reprendre la synthaxe présente dans le fichier https://github.com/PnX-SI/GeoNature/blob/2.0.0/config/default_config.toml.example section [MAPCONFIG] et non le fichier map.config.ts (Respectez l'indentation, remplacez les simples quotes par des doubles et les : par des =).
  • La configuration des exports du module synthèse a été modifiée (voir http://docs.geonature.fr/admin-manual.html#module-synthese). Supprimer la variable[SYNTHESE.EXPORT_COLUMNS] dans le fichier geonature_config.toml. Voir l'exemple dans le fichier (voir https://github.com/PnX-SI/GeoNature/blob/2.0.0/config/default_config.toml.example section) pour configurer les exports.
  • Supprimer la variable COLUMNS_API_SYNTHESE_WEB_APP si elle a été ajoutée dans le fichier geonature_config.toml.
  • Pour simplifier son édition, le template personalisable de la page d'accueil (frontend/src/custom/components/introduction/introduction.component.html) a été modifié (la carte des 100 dernière observations n'y figure plus). Veuillez supprimer tout ce qui se situe à partir de la ligne 21 (<div class="row row-0">) dans ce fichier.
  • Exécuter le script de migration SQL: https://github.com/PnX-SI/GeoNature/blob/master/data/migrations/2.0.0rc4.2to2.0.0.sql.
  • Le backoffice de gestion des métadonnées est dorénavant un module GeoNature à part. Le script migration précédemment lancé prévoit de mettre un CRUVED au groupe_admin et groupe_en_poste pour le nouveau module METADATA. Les groupes nouvellement créés par les administrateurs et n'ayant de CRUVED pour l'objet METADATA (du module Admin), se retrouvent avec le CRUVED hérité de GeoNature. L'administrateur devra changer lui-même le CRUVED de ces groupes pour le nouveau module METADATA via le backoffice des permissions.
  • Suivez ensuite la procédure classique de mise à jour de GeoNature (http://docs.geonature.fr/installation-standalone.html#mise-a-jour-de-l-application).

2.0.0-rc.4.2

23 Jan 12:57
Compare
Choose a tag to compare
2.0.0-rc.4.2 Pre-release
Pre-release

Nouveautés

  • Mise en place de logs rotatifs pour éviter de surcharger le serveur
  • Centralisation des logs applicatifs dans le dossier var/log/gn_errors.log de GeoNature

Corrections

  • Synthèse - Correction et amélioration de la gestion des dates (#540)
  • Amélioration des tests automatisés
  • Correction et complément ds scripts d'installation des modules GeoNature
  • Remplacement de gn_monitoring.cor_site_application par gn_monitoring.cor_site_module
  • Complément des documentations de customisation, d'administration et de développement
  • Ajout d'une documentation de migration de données Serena vers GeoNature (https://github.com/PnX-SI/Ressources-techniques/tree/master/GeoNature/migration/serena) par @xavyeah39

Note de version

  • Vous pouvez passer directement à cette version, mais en suivant les notes des versions intermédiaires

  • Exécutez la mise à jour de la BDD GeoNature (https://github.com/PnX-SI/GeoNature/blob/2.0.0-rc.4.2/data/migrations/2.0.0rc4.1to2.0.0rc4.2.sql)

  • Depuis la version 2.0.0-rc.4, on ne stocke plus les modules de GeoNature dans utilisateurs.t_applications. On ne peut donc plus associer les sites de suivi de gn_monitoring à des applications, utilisé par les modules de suivi (Flore, habitat, chiro). Le mécanisme est remplacé par une association des sites de suivi aux modules. La création de la nouvelle table est automatisée (data/migrations/2.0.0rc4.1to2.0.0rc4.2.sql), mais pas la migration des éventuelles données existantes de gn_monitoring.cor_site_application vers gn_monitoring.cor_site_module, à faire manuellement.

  • Afin que les logs de l'application soient tous écrits au même endroit, modifier le fichier geonature-service.conf (sudo nano /etc/supervisor/conf.d/geonature-service.conf). A la ligne stdout_logfile, remplacer la ligne existante par stdout_logfile = /home/<MON_USER>/geonature/var/log/gn_errors.log (en remplaçant <MON_USER> par votre utilisateur linux).
    Exécutez ensuite la commande sudo supervisorctl reread

  • Vous pouvez également mettre en place un système de logs rotatifs (système permettant d'archiver les fichiers de logs afin qu'ils ne surchargent pas le serveur - conseillé si votre serveur a une capacité disque limitée). Créer le fichier suivant sudo nano /etc/logrotate.d/geonature puis copiez les lignes suivantes dans le fichier nouvellement créé (en remplaçant <MON_USER> par votre utilisateur linux)

      /home/<MON_USER>/geonature/var/log/*.log {
      daily
      rotate 8
      size 100M
      create
      compress
      }
    

    Exécutez ensuite la commande sudo logrotate -f /etc/logrotate.conf

  • Suivez ensuite la procédure classique de mise à jour de GeoNature (http://docs.geonature.fr/installation-standalone.html#mise-a-jour-de-l-application)

2.0.0-rc.4.1

21 Jan 09:51
Compare
Choose a tag to compare
2.0.0-rc.4.1 Pre-release
Pre-release

Corrections

  • Mise à jour des paquets du frontend (#538)
  • Correction d'un conflit entre Marker et Leaflet-draw
  • Utilisation du paramètre ID_APP au niveau de l'application
  • Corrections mineures diverses

Note de version

2.0.0-rc.4

15 Jan 16:16
Compare
Choose a tag to compare
2.0.0-rc.4 Pre-release
Pre-release

Nouveautés

  • Intégration de la gestion des permissions (CRUVED) dans la BDD de GeoNature, géré via une interface d'administration dédié (#517)
  • Mise en place d'un système de permissions plus fin par module et par objet (#517)
  • Mise en place d'un mécanimse générique pour la gestion des permissions via des filtres : filtre de type portée (SCOPE), taxonomique, géographique etc... (#517)
  • Compatibilité avec UsersHub version 2
  • L'administration des permissions ne propose que les rôles qui sont actif et qui ont un profil dans GeoNature
  • Ajout du composant Leaflet.FileLayer dans le module Synthèse pour pouvoir charger un GeoJSON, un GPS ou KML sur la carte comme géométrie de recherche (#256)
  • Ajout et utilisation de l'extension PostgreSQL pg_tgrm permettant d'améliorer l'API d'autocomplétion de taxon dans la synthèse, en utilisant l'algorithme des trigrammes (http://si.ecrins-parcnational.com/blog/2019-01-fuzzy-search-taxons.html), fonctionnel aussi dans les autres modules si vous mettez à jour TaxHub en version 1.6.0.
  • Nouvel exemple d'import de données historiques vers GeoNature V2 : https://github.com/PnX-SI/Ressources-techniques/blob/master/GeoNature/V2/2018-12-csv-vers-synthese-FLAVIA.sql (par @DonovanMaillard)
  • Complément de la documentation HTTPS et ajout d'une documentation Apache (par @DonovanMaillard, @RomainBaghi et @lpofredc)

Corrections

  • Correction de l'id_digitiser lors de la mise à jour (#481)
  • Corrections multiples de la prise en compte du CRUVED (#496)
  • Deconnexion apres inactivité de l'utilisateur (#490)
  • Suppression des heures au niveau des dates de l'export occtax (#485)
  • Correction du message d'erreur quand on n'a pas de JDD (#479)
  • Correction du champs commentaire dans les exports d'Occtax séparé entre relevé et occurrence (#478)
  • Correction des paramètres de la fonction GenericQuery.build_query_filter() (par @patkap)
  • Correction de l'administration des métadonnées (#466 #420)
  • Métadonnées (JDD et CA) : ne pas afficher les utilisateurs qui sont des groupes dans les acteurs
  • Ajout d'un champs dans la Synthèse permettant de stocker de quel module provient une occurrence et fonctions SQL associées (#412)
  • Amélioration du style des champs obligatoires
  • Améliorations mineures de l'ergonomie d'Occtax
  • Correction du spinner qui tournait en boucle lors de l'export CSV de la Synthèse (#451)
  • Correction des tests automatisés
  • Amélioration des performances des intersections avec les zonages de ref_geo.l_areas
  • Complément de la documentation de développement
  • Simplification de la configuration des gn_modules
  • Occtax : ordonnancement des observation par date (#467)
  • Occtax : Remplissage automatique de l'heure_max à partir de l'heure_min (#522)
  • Suppression des warnings lors du build du frontend
  • Correction de l'installation des modules GeoNature
  • Ajout d'un message quand on n'a pas accès à une donnée d'un module
  • Affichage du nom du module dans le Header (#398)
  • Correction des outils cartographiques dans Occtax
  • Correction complémentaire des styles des lignes sans remplissage (#458)
  • MaplistService : correction du zoom sur les polygones et polylignes
  • Composant Areas et Municipalities : remise à zéro de la liste déroulante quand on efface la recherche ou remet à jour les filtres
  • Composant Taxonomy : la recherche autocompletée est lancée même si on tape plus de 20 caractères. Le nombre de résultat renvoyé est désormais paramétrable (#518)
  • Limitation du nombre de connexions à la BDD en partageant l'instance DB avec les sous-modules
  • Installation : utilisation d'un répertoire tmp local et non plus au niveau système pour limiter les problèmes de droits (#503)
  • Evolution du template d'exemple de module GeoNature (https://github.com/PnX-SI/GeoNature/tree/master/contrib/module_example) pour utiliser l'instance DB et utiliser les nouveaux décorateurs de permissions (CRUVED)

Note de version

Note développeurs

  • Vous pouvez faire évoluer les modules GeoNature en utilisant l'instance DB de GeoNature pour lancer les scripts d'installation (#498)
  • Il n'est plus nécéssaire de définir un id_application dans la configuration des modules GeoNature.
  • La gestion des permissions a été revue et est désormais internalisée dans GeoNature, il est donc nécessaire d'utiliser les nouveaux décorateurs décrits dans la doc pour récupérer le CRUVED.

2.0.0-rc.3.1

21 Oct 20:47
Compare
Choose a tag to compare
2.0.0-rc.3.1 Pre-release
Pre-release

Corrections

Notes de version

  • Si vous migrez depuis une version 2.0.0-rc.2, installez directement cette version corrective plutôt que la 2.0.0-rc.3, mais en suivant les notes de versions de la 2.0.0-rc.3
  • Pour mettre en place la redirection de TaxHub sans /, consultez sa documentation https://taxhub.readthedocs.io/fr/latest/installation.html#configuration-apache
  • Le script install_all.sh actuel ne semble pas fonctionner sur Debian 8, problème de version de PostGIS qui ne s'installe pas correctement

2.0.0-rc.3

18 Oct 09:47
Compare
Choose a tag to compare
2.0.0-rc.3 Pre-release
Pre-release

Nouveautés

  • Possibilité d'utiliser le MNT en raster ou en vecteur dans la BDD (+ doc MNT) #439 (merci @mathieubossaert)
  • INSTALL_ALL - gestion du format date du serveur PostgreSQL (#435)
  • INSTALL_ALL - Amélioration de la conf Apache de TaxHub pour gérer son URL sans / à la fin
  • Dessin cartographique d'une autre couleur (rouge) que les observations (bleu)
  • Occtax : retour au zoom précédent lors de l'enchainement de relevé (#436)
  • Occtax : observateur rempli par défaut avec l'utilisateur connecté (#438)
  • Prise en compte des géométries nulles dans la fonction serializegeofn
  • Gestion plus complète des données exemple intégrées ou non lors de l'installation (#446)
  • Complément des différentes documentations
  • Complément FAQ (#441)
  • Documentation de la customisation (merci @DonovanMaillard)
  • Amélioration de l'architecture du gn_module d'exemple
  • Clarification de la configuration des gn_modules
  • Lire le fichier VERSION pour l'afficher dans l'interface (#421)
  • Utilisation de la vue export_occtax_sinp et non plus export_occtax_dlb par défaut pour les exports Occtax (#462)
  • Complément et correction des vues export_occtax_sinp et export_occtax_dlb (#462)
  • Mise à jour de Marshmallow (2.5.0 => 2.5.1)
  • Améliorations des routes de gn_monitoring et de la configuration des modules de suivi pour pouvoir utiliser le nom d'une application plutôt que son identifiant
  • Export Synthèse - Remplacement de la barre de téléchargement par un spinner (#451)

Corrections

  • Doc Import niveau 2 : Corrections et compléments
  • Correction du trigger Occtax > Synthèse qui met à jour le champs gn_synthese.observers_txt et les commentaires (#448 et #459)
  • Correction et amélioration de la fonction install_gn_module
  • Correction coquille dans le modèle gn_monitoring et la fonction serializegeofn
  • Installation uniquement sur un environnement 64 bits (documentation + vérification) #442 (merci @jbrieuclp et @sig-pnrnm)
  • Correction et découpage des scripts de mise à jour de la BDD depuis la version Beta5
  • Correction de l'édition des date_debut et date_fin de Occtax (#457)
  • Correction des exports depuis la Synthèse et intégration de la géométrie des observations (#461 et #456)
  • Ne pas remplir pr_occtax.cor_role_releves_occtax si observers_txt = true (#463)
  • Edition d'un relevé Occtax - Ne pas recalculer l'altitude existante (#424)
  • Correction de l'activation du formulaire Occtax après localisation du relevé (#469 et #471)
  • Carte - Enlever le remplissage des lignes (#458)
  • Amélioration du script de mise à jour de GeoNature (install/migration/migration.sh) (#465)
  • Suppression d'un doublon dans le modèle de gn_commons.t_modules (merci @lpofredc)

Autres

Notes de version

2.0.0-rc.2

23 Sep 22:14
Compare
Choose a tag to compare
2.0.0-rc.2 Pre-release
Pre-release

Nouveautés

  • Script install_all.sh compatible Ubuntu (16 et 18)
  • Amélioration du composant Download
  • Amélioration du ShapeService
  • Compléments de la documentation
  • Intégration de la documentation Développement backend dans la documentation
  • Nettoyage du code
  • Mise à jour de la doc de l'API : https://documenter.getpostman.com/view/2640883/RWaPskTw
  • Configuration de la carte (frontend/src/conf/map.config.ts) : OSM par défaut car OpenTopoMap ne s'affiche pas à petite échelle

Corrections

  • Correction du script install/migration/migration.sh
  • Ne pas afficher le debug dans le recherche de la synthèse
  • Correction du bug de déconnexion entre TaxHub et GeoNature (#423)
  • Correction de la fiche info d'Occtax
  • Champs Multiselect : Ne pas afficher les valeurs selectionnées dans la liste quand on modifie un objet
  • Trigger Occtax vers Synthèse : Correction des problèmes d'heure de relevés mal copiés dans la Synthèse
  • Correction des altitudes (non abouti) (#424)
  • Données exemple : Suppression de l'observers_txt dans la synthèse
  • Suppression d'un id_municipality en dur dans une route
  • Suppression de la librairie Certifi non utilisée

Notes de version

  • Suivez la procédure standard de mise à jour de GeoNature
  • Exécuter l'update de la BDD GeoNature (data/migrations/2.0.0rc1-to-2.0.0rc2.sql)

2.0.0-rc.1

21 Sep 08:55
Compare
Choose a tag to compare
2.0.0-rc.1 Pre-release
Pre-release

La version 2 de GeoNature est une refonte complète de l'application.

  • Refonte technologique en migrant de PHP/Symfony/ExtJS/Openlayers à Python3/Flask/Angular4/Leaflet
  • Refonte de l'architecture du code pour rendre GeoNature plus générique et modulaire
  • Refonte de la base de données pour la rendre plus standarde, plus générique et modulaire
  • Refonte ergonomique pour moderniser l'application

Présentation et suivi des développements : #168

Accueil

  • Message d'introduction customisable
  • Carte des 100 dernières observations
  • CSS général de l'application surcouchable

Occtax

Module permettant de saisir, consulter, rechercher et exporter des données Faune, Flore et Fonge de type Contact selon le standard Occurrences de taxon du SINP (https://inpn.mnhn.fr/telechargement/standard-occurrence-taxon).

  • Développement des formulaires de saisie, page de recherche, fiche détail, API, CRUVED et export
  • Possibilité de masquer ou afficher les différents champs dans le formulaire Occtax (#344)
  • Développement du formulaire de manière générique pour pouvoir réutiliser ses différents éléments dans d'autres modules sous forme de composants Angular
  • Configuration possible du module (Niveau de zoom, champs affichées, export...)
  • Ajout des nomenclatures dans les filtres d'Occtax à partir du composant dynamicForm qui permet de créer dynamiquement un formulaire en déclarant ses champs et leur type (#318)
  • Amélioration du composant de recherche d'un taxon en ne recherchant que sur les débuts de mot et en affichant en premier les noms de référence (ordrer_by cd_nom=cd_ref DESC) #334
  • Multilingue fourni avec français et anglais (extensible à d'autres langues)
  • Mise en place d'un export CSV, SHP, GeoJSON paramétrable dans Occtax. #363 et #366
  • Ajout d'un message d'erreur si l'utilisateur n'a pas de jeu de données ou si il y a eu un problème lors de la récupération des JDD depuis MTD
  • Prise en compte du CRUVED au niveau des routes et du front pour adapter les contenus et fonctionnalités aux droits de l'utilisateur
  • Mise en place des triggers alimentant la synthèse à partir des données saisies et modifiées dans Occtax

Synthèse

Module permettant de rechercher parmi les données des différentes sources présentes ou intégrées dans la base de données de GeoNature

  • Mise en place du backend, de l'API et du frontend #345
  • Interface de consultation, de recherche et d'export dans la Synthèse
  • Synthèse : Calcul automatique (trigger) des zonages de chaque observation (communes, zonages réglementaires et naturels)
  • Recherche sur les zonages générique et paramétrable
  • Recherche par taxon, liste de taxons, par rang, groupe, liste rouge, milieu, attribut taxonomique, nomenclature, date, période, commune, zonage, cadre d'acquisition, jeu de données, observateur, polygone, rectange ou cercle dessiné
  • Retour à la fiche source possible si l'observation a été saisie dans un module de GeoNature
  • Affichage de la fiche détail de chaque observation
  • Attributs TaxHub dynamiques et paramétrables
  • Configuration possible du module (colonnes, limites de recherche et d'export, zoom, export...)
  • Export basé sur une vue (observations et statuts)
  • Prise en compte du CRUVED pour définir les données à afficher et à exporter #412
  • Recherche de taxons : Liste basée sur une table alimentée automatiquement par les taxons présents au moins une fois dans la Synthèse

Export

Module permettant de proposer des exports basés sur des vues

  • Mise en place temporaire d'un export unique, basé sur une vue s'appuyant sur les données de Occtax, par jeu de données
  • A remplacer par le module générique https://github.com/PnX-SI/gn_module_export (en cours de développement) permettant de générer des exports à volonté en créant des vues et en les affectant à des utilisateurs ou des groupes. Chaque export sera accompagné de son API standardisée et documentée

Admin

Module d'administration des tables centrales de GeoNature

  • Mise en place d'un module (incomplet) permettant de gérer les métadonnées et les nomenclatures

Gestion des droits

  • Mise en place d'un système baptisé CRUVED permettant de définir globalement ou par module 6 actions sont possibles (Create / Read / Update / Validate / Export / Delete) sur 3 portées possibles (Mes données / Les données de mon organisme / Toutes les données)
  • Ces évolutions ont été intégrées au niveau du schéma utilisateurs de la base de données de UsersHub, de son module (https://github.com/PnX-SI/UsersHub-authentification-module), des routes de l'API GeoNature et des interfaces

Bases de données

  • Développement d'un module et d'une API générique et autonome pour la gestion des nomenclatures (https://github.com/PnX-SI/Nomenclature-api-module). Il permet d'avoir un mécanisme générique de centralisation des listes de valeurs (nomenclatures) pour ne pas créer des tables pour chaque liste : https://github.com/PnX-SI/Nomenclature-api-module. Les valeurs de chaque nomenclature s'adaptent en fonction des regnes et groupe 2 INPN des taxons.
  • Mise en place de tables de stockage verticales (historique, médias et validation) #339
  • Mise en place d'un référentiel géographique avec un schéma dédié (ref_geo), partageable avec d'autres applications comprenant une table des communes, une table générique des zonages, une table pour le MNT et des fonctions pour intersecter point/ligne/polygones avec les zonages et le MNT (#228)
  • Evolution du schéma utilisateurs de UsersHub pour passer d'une gestion des droits avec 6 niveaux à un mécanisme plus générique, souple et complet. Il permet d'attribuer des actions possibles à un rôle (utilisateur ou groupe), sur une portée; dans une application ou un module. 6 actions sont possibles dans GeoNature : Create / Read / Update / Validate / Export / Delete (aka CRUVED). 3 portées de ces actions sont possibles : Mes données / Les données de mon organisme / Toutes les données.
  • Droits CRUVED : La définition du CRUVED d'un rôle (utilisateur ou groupe) sur un module de GeoNature surcouche ses droits GeoNature même si ils sont inférieurs. Si une action du CRUVED n'est pas définie au niveau du module, on prend celle de l'application parente. #292
  • Si un rôle a un R du CRUVED à 0 pour un module, alors celui-ci ne lui est pas listé dans le Menu et il ne lui est pas accessible si il en connait l'URL. #360
  • Développement des métadonnées dans la BDD (schéma gn_meta) sur la base du standard Métadonnées du SINP (http://standards-sinp.mnhn.fr/category/standards/metadonnees/). Elles permettent de gérer des jeux de données, des cadres d'acquisition, des acteurs (propriétaire, financeur, producteur...) et des protocoles. Chaque relevé est associé à un jeu de données.
  • Développement d'un mécanisme de calcul automatique de la sensibilité d'une espèce directement dans la BDD (sur la base des règles nationales et régionales du SINP + locales éventuellement)
  • Intégration du calcul automatique de l'identifiant permanent SINP (#209)
  • Création du schéma gn_monitoring pour gérer la partie générique des modules de suivi (sites et visites centralisés) et les routes associées
  • Mise en place d'un schéma gn_commons dans la BDD qui permet de stocker de manière générique des informations qui peuvent être communes aux autres modules : l'historique des actions sur chaque objet de la BDD, la validation d'une donnée et les médias associés à une donnée. Accompagné de fonctions génériques d'historisation et de validation des données mises en place sur le module Occtax. #339
  • Ajout d'une vue matérialisée (gn_synthese.vm_min_max_for_taxons) et d'une fonction (gn_synthese.fct_calculate_min_max_for_taxon) permettant de renvoyer des informations sur les observations existantes d'un taxon (étendue des observations, date min et max, altitude min et max, nombre d'observations) pour orienter la validation et la saisie (PnX-SI/gn_module_validation#5). Désactivée pour le moment.
  • Ajout d'un trigger générique pour calculer la géométrie dans la projection locale à partir de la géométrie 4326 (#370)
  • Ajout d'un trigger pour calculer automatiquement les zonages des sites de suivi (gn_monitoring.fct_trg_cor_site_area())
  • Gestion des conflits de nomenclatures en n'utilisant plus leur id_type ni leur id_nomenclature lors de la création de leur contenu (code_nomenclature) (#384)
  • Mise en place d'un schéma gn_imports intégrant des fonctions SQL permettant d'importer un CSV dans la BDD et de mapper des champs de tables importées avec ceux d'une table de GeoNature pour générer le script INSERT INTO
  • Début de script de migration GeoNature V1 vers GeoNature V2
  • Nombreuses fonctions intégrées dans les schémas de la BDD

Installation

  • Scripts d'installation autonome ou globale de GeoNature sur Debian (8 et 9) et Ubuntu (16 et 18)
  • Scripts de déploiement spécifiques de DEPOBIO (MTES-MNHN)

Documentation

  • Rédaction d'une documentation concernant l'installation (autonome ou globale), l'utilisation, l'administration et le développement : http://docs.geonature.fr

Développement

  • Découpage de l'application en backend / API / Frontend
  • Multilingue au niveau de l'interface et des listes de valeurs avec français et anglais intégrés mais extensible à d'autres langues (#173)
  • Développement de composants Angular génériques pour pouvoir les utiliser dans plusieurs modules sans avoir à les redévelopper ni les dupliquer (composant CARTE, composant RECHERCHE TAXON, composant OBSERVATEURS, composant NOMENCLATURES, SelectSearch, Municipalities, Observers, DynamicForm, MapList...)
  • Implémentation de la gestion des droits au niveau de l'API (pour limiter les données affichées à un utilisateur en fonction de ses droits) et au niveau du Frontend (pour afficher ou non certains boutons aux utilisa...
Read more