release : 0.9.85
Thursday 28 May 2026 - 14:04:51

Proof of concept of an instrumental and plateform databases at CNRS


Echanger avec l'équipe


Réunion de travail du 04/03/2026

Avec Adrien et Wilfrid

Changement d'hébergment pour Infranalytics Data / Instru & plateforme / portail Projet (Sylvain) --> Wilfrid: Voir avec GRICAD pour un devis 2 VM

Réunion de travail du 25/02/2026

Avec Adrien et Wilfrid

  • correction dans le formulaire eLabFTW pour la RMN

Proposition d'amélioration pour la génération des liens, non plus dans une page indépendante, mais en face de chaque instrument avec une coche pour indiquer les pages déjà générées.

Suite à la réunion de travail du 14/01/2026

Avec Adrien et Wilfrid

  • Travailler sur l'update du mapping pour qu'il prenne en compte aussi les modifications des variables et pas uniquement les ajouts.
  • exclure les fichiers non conforme de l'import multi csv (exclure le dossier archive)
  • informations sur les update de base
  • corrige formulaire de liens

Suite à la réunion de travail du 07/01/2026

Avec Adrien et Wilfrid

1°/ les liens vers les métadonnées des instruments des plateformes labélisées: - terminer le formulaire de création de lien ; - mettre en place sur la page de génération des liens, la liste des liens déjà créés

2°/ Reprise du projet datas à partir du 12 janvier 2026 - remettre en fonctionnement la plateforme datas

Suite à la réunion de travail du 09/09/2025

Avec Adrien et Wilfrid (en visio)

  • Le travail de présentation des instruments en fonction des techniques se fait sur la pre-prod.

  • Pour la publication des instruments sur la page des plateformes Labélisées il faut faire une recherche filtrante des unités des techniques.

Un test est prévu sur la "Spectroscopie analytique" avec la technique "RMN", Adrien doit apporter des précisions sur les métadonnées en place sur la pré-prod.

  • Pour la présentation des métadonnées, faire une liste de tous les instruments liés à une ou plusieurs techniques en fonction de la classification indiquée sur le site des plateformes labélisées. Idéalement, inscrire les différents instruments dans des "collapses" (comme des menus deroulant en pleine page)

Suite à la réunion de travail du 02/09/2025

Avec Richard, Adrien et Wilfrid

1° Mettre en place un contrôle sur les 'main ID' pour qu'il soit unique

2° Organiser les données des techniques avec les experts - TEM et FIB et SEM(MEB) : (Richard) - MOB ...

3° Identifier le nom de la machine (Richard) propose de le faire pour TEM FIB et Mossbauer

4° Pour la plateforme de données mettre en place les pages pour la RMN en priorité. (Wilfrid)

Suite à la réunion de travail du 26/08/2025

1° Réfléchir à la solution technique pour insrire un lien vers les instruments qui sont liés à une plateforme donnée : https://www.inc.cnrs.fr/fr/plateformes-labellisees

2° L'approche pandas est bien pour l'affichage de la ville dans le tableau des instruments - les deux chose à mettre en place : remplir la case city (Afficher dans le tableau des resultats instrument.html la ville de la plateforme à laquelle l'instrument appartient...)

3° Pour les plateformes intéroger avec l'id pour les instruments associés (pas besoin de croiser les bases) - plateforme, avoir une icone des instruments avec liste des instruments

4° On garde sous le coude la possibilité de associer les deux index via une clef identique : > pousser une clef dans plateforme qui existe dans instru

5° Afficher les plateformes des unités et associer les instruments pour chaque plateforme. Pour lister les instruments d'une plateforme, nous utilisons l'icone "microscope" (revoir la présentation des plateformes pour y inscrire les plateformes dans les unités)

Notes:

  • mettre un garde-fou sur l'ID pour l'upgrade
  • mettre en place un bouton retour sur la page de resultat d'import de données
  • (priorité !) Mise à jour du mapping sans supprimer les documents


Last release 0.9.85

  • (fait) [Instrument & Plateforme] Intégration de lien 'haute de page' et 'bas de page' sur les pages 'Instrument' et 'Plateforme'.
  • (fait) [Indexation] Modification des menus déroulants sur les index: automatisation par rapport à la liste défini dans la liste de la variable 'self.indexes' dans indexation.py.
  • (fait) [Plateformes labellisées] Modification de l'affichage des liens déjà générés : l'URI intègre l'URL en rapport au status du service (Test, Dev, Prod).
  • (fait) [Plateformes labellisées] Correctifs sur la page de génération des liens
  • (fait) [Plateformes labellisées] Correctifs sur la page HTML générée

0.9.84

  • (fait) [Instrument] Ne pas mettre le lien vers les plateformes lorsque la plateforme ne se trouve pas dans la base. (traitement de l'anomalie d'un lien mort)
  • (fait) [Plateforme] Lister les liens vers les instruments associés
  • (fait) [Indexation] corriger l'anomalie dans la partie de la génération des liens pour la plateforme labellisée et l'absence d'instrument

0.9.83

  • (fait) [Instrument] liste des liens URI affichée
  • (fait) [Instrument] correctif sur la génération des URI
  • (fait) [Instrument] intégration de la description globale de chaque instrument, sur la page de détail des instruments
  • (fait) [Instrument] ajout d'un indicateur sur le status de la plateforme : test, dev, prod
  • (fait) [Instrument] correctif sur l'affichage de la date et version de plateforme

0.9.82

  • (fait) [Instrument] Création d'un générateur de liens pour les plateformes labélisées ;
  • (fait) [Instrument] Affichage brut des données des différents instruments dans la base ;
  • (fait) [Instrument] Affichage brut des données des différents instruments dans la base ;

0.9.81

  • (fait) [Instrument] Mettre un message lorsqu'aucun mapping est enregistré
  • (fait) [Platforme] Mettre un message lorsqu'aucun mapping est enregistré
  • (fait) [Instrument] modifier la visualisation des instruments sur la page d'accueil des instruments |-> mise en place du trie des colonnes dans l'ordre ascendant ou descendant |-> augmentation de la liste des instruments sur une page à 200 lignes.
  • (fait) [Accueil] Amélioration de la page d'accueil avec une présentation du travail à faire après les réunions.

0.9.80

  • (fait) [Instrument] La description de l'instrument est organisée par technique.

0.9.7

  • (fait) [Instrument] Correctif sur les valeurs de 'unitId' qui ne sont pas toujours bien formées (UMR 0000, UMR-0000, UMR_0000) : Uniformasition sans caractère de séparation entre lettres et chiffres (UMR0000).
  • (fait) [Instrument] Mise en forme de de la page de présentation d'un instrument avec ces périphériques.
  • (fait) [Platforme] Mise en forme de de la page de présentation d'une Unité avec ses plateformes.

0.9.6

  • (fait) [Platforme] Mise en place d'un champ d'enregistrement multi-fichiers depuis un dossier
  • (fait) [Platforme] Réorganisation des formulaires pour l'intégration des documents de manière unitaire, et de manière groupée pour les instruments.
  • (fait) [Instrument] Mise en place d'un champ d'enregistrement multi-fichiers depuis un dossier
  • (fait) [Instrument] Réorganisation des formulaires pour l'intégration des documents de manière unitaire, et de manière groupée pour les instruments.
  • (fait) [Instrument] Suppression des formats XLSX et ODT pour l'intégration des documents pour les instruments.

0.9.5

  • (fait) Grand nettoyage du code.

0.9.4

  • (fait) Améliorer le moteur de recherche pour faire les recherches aussi dans les sous-rubriques (nested)
  • (fait) Désactivation dans le menu général des parties tests : test-instrument et test-plateform

0.9.3

  • (fait) Changement du format d'import json vers csv plus stable au niveau de elabftw
  • (fait) Changement du format des colonnes pour les tableaux de instrument et plateforme

0.9.2

  • (fait) La recherche avancé.

0.9.1

  • (fait) Fix du problème de type dans l'acquisition des données dans le fichier donnees.py.

0.9.0

  • [En cours] Ajout d'une fonctionnalité sur l'évolution du mapping sans perdre les documents déjà enregistrés et l'index.

0.8.8

  • (fait) Correctif sur le fichier instrument.py

0.8.7

  • (fait) Ajout d'une zone de test sur les bases instrument et plateform : test-instrument et test-plateform
    • adpatation d'une zone dans le menu
    • permettre les mêmes fonctionnalités que pour les bases officielles

0.8.6

  • (fait) Mise à jour du fichier donnees.py par Adrien
  • (fait) Correctif elasticsearch : problème de version sur la 8.14.0 corrigé par la version 8.14.1

0.8.5

  • (fait) Correction code pour la fonction elab_json()

0.8.4

  • (fait) Bug : problème lors de l'import de plateformes
  • (fait) Modification de la fonction du fichier "donnees.py" : elab_json()

0.8.3

  • (fait) Bug : problème lors de l'import d'instruments.

0.8.2

  • (fait) Bug : l'indexation plateforme ou instrument ne fonctionnaient plus dans l'ajout ou la suppression de l'Index.

0.8.1

  • (fait) Bug avec accès Elasticsearch via python.

0.8.0

  • (fait) Permettre l'importation de données avec le format JSON d'import pour ElabFTW (afin de passer outre l'export généré par ElabFTW)

0.7.0

  • (fait) Modification majeur de l'ergonomie de la plateforme

    • suppression de la rubrique Données qui sert à injecter des données dans la base Elasticsearch ;
    • dans la rubrique Instrument, ajout de la fonction ins
  • (fait) Ajout d'une zone de test sur les bases instrument et plateform : test-instrument et test-plateform

    • adpatation d'une zone dans le menu
    • permettre les mêmes fonctionnalités que pour les bases officielles ertion de données dans la base instrument ;
    • dans la rubrique Plateform, ajout de la fonction insertion de données dans la base plateform ;

Cette modification permet aussi d'ajouter pour chaque instrument ou plateforme d'éfection une mise à jour du document.


0.6.2

  • (fait) Correction : suppression des fichiers .xlsx et .json en même temps qu'on supprime une base ;
  • (fait) Amélioration : indication sur l'état de l'index lors de l'importation : vide ou non, c'est-à-dire en erreur 400 ou pas avec l'affichage du message d'erreur ;

0.6.1

  • (fait) Nouveau correctif de la fonction elab_json(self, jsondata) du fichier donnees.py (faite par Adrien)

0.6.0

  • (fait) Correctif de la fonction elab_json(self, jsondata) du fichier donnees.py (faite par Adrien)

0.5.0

  • (fait) Recherche multi-critères : -> Les opérateurs utilisés en test sont OR et AND Par exemple :
    GLACIOS AND IBS laserbox
    manufacturer=bruker AND technic=Mössbauer
    technic=NMR spectroscopy AND manufacturer=FEI
    technic=NMR spectroscopy OR manufacturer=FEI
    

N'hésitez pas à signaler les éventuelles requètes présentant des anomalie.


0.4.9

  • (fait) Correction : booleans dans le fichier donnees.py la fonction elab_json.

0.4.82

  • (fait) Synchoniser pour les description d'instrument la base instrument avec la base plateforme.
  • (fait) Remplacement du modules flask-navigation par flask-nav-current
  • (fait) Correction de flask-markdown : modification dans le fichier ../lib/python3.9/site-packages/flaskext/markdown.py
    #from flask import Markup
    from markupsafe import Markup
    

0.4.81

  • (fait) Évolution de version de flask en version 3.0.0. Cette évolution a un impact sur d'autres modules associés comme flask_navigation et flaskext.markdown. J'ai appliqué un correctif local et j'ai contacté la communauté de flask sur github pour soulever le problème afin qu'une solution durable puisse être envisagé par la communauté.

0.4.8

  • (fait) Modification du menu principal : diviser la base des plateformes avec la base des instruments ;
  • (fait) Correction pour instruments et plateforme : affichage du catalogue, des données descriptives, et la suppression des objets.

0.4.71

  • (fait) Correction/amélioration dans l'indexation du mapping (index);
  • (fait) Correction/amélioration dans l'intégratrion des données avec un correctif de valeur sur les booleans ;
  • (fait) Correction sur les menus déroulant sélectionnant la base d'utilisation (plateform / instrument) dans la page d'indexation (mapping) ;
  • (fait) Correction sur les menus déroulant sélectionnant la base d'utilisation (plateform / instrument) dans la page d'intégration de données (datas) ;

0.4.6

  • (fait) Ajout: message d'erreur dans la rubrique "Donnees" ;
  • (fait) Ajout: menu déroulant pour la base elasticsearch dans "Indexation" et "Donnees".

0.4.5

  • (fait) Ajout: permettre la suppression d'un document de l'index d'Elasticsearch depuis l'interface catalogue : une icone "poubelle" a été ajoutée et la fonction associée pour la suppression.
  • (fait) Correction : tri des clefs pour l'affichage des métadonnées d'un document (instrument)

0.4.4

  • (fait) Correction : changer "Manufactured" par "Manufacturer" et remplacer la valeur dans la colonne par manufacturer et non spectroNMR.manufacturer

0.4.3

  • (fait) Correction de "données" : fonction elab_json

0.4.2

  • (fait) Correction intégration données dans "Donnees" (Métadonnées)
  • (fait) Correction tableau dans le catalogue avec les entêtes suivantes : id, manufactured, Technic, Institution, City
  • (fait) Lien vers le détail des métadonnées du catalogue

0.4.1

  • (fait) Intégration d'une option pour fixer le mapping : {dynamic: strict, false, runtime}
  • (fait) Permettre l'intégration de données issues de eLabFTW

0.4

  • (fait) Ajout d'un bouton pour la suppression de l'index et suppression par conséquent des données (sur la page "Indexation") ;
  • (fait) Remplacement dans l'index de la valeur 'equipments' par la valeur machine ;
  • (fait) Mise en place d'un format effaçant les espaces à la fin d'une propriété dans le mapping ;
  • (fait) correctif sur _id (l'id est transféré sur l'_id du document)
  • (fait) modification des propriétés de l'index machine.spectroNMR.probe.accessories par machine.spectroNMR.accessories
  • (fait) modification des propriétés de l'index machine.spectroNMR.lamorFrequency par machine.spectroNMR.1H_frequency

0.3

  • (fait) Ajout du mapping accessible en JSON (sur la page "Indexation")
  • (fait) Ajout des datas accessible en JSON (sur la page "catalogue")
  • (fait) Différents correctifs sur import du mapping et des données

0.2

  • (fait) Correctif sur l'import du mapping ;
  • (fait) Correctif pour l'affichage du catalogue

Configuration du serveur :

  • (fait) Notification anomalie sur le fichier Wheel.

0.1

Première version avec interface Web.

  • (fait) Création des rubriques "Home", "indexation", "données", "catalogue" ;
  • (fait) Importation d'un mapping pour le catalogue via les modèles de fichiers structurés ods, xlsx ;
  • (fait) Importation de nouvelles donnnées dans le catalogue via les modèles de fichier structuré ods, xlsx ;

Configuration du serveur :

  • (fait) définition d'une adresse accessible depuis l'extérieur à l'adresse http://instru.infranalytics.ibs.fr
  • (fait) test pour l'intégration d'un module python Wheel

Top