Projet

Général

Profil

Development #4739

Stockage des formdefs/workflows en xml

Ajouté par Frédéric Péters il y a presque 10 ans. Mis à jour il y a environ 7 ans.

Statut:
Nouveau
Priorité:
Normal
Assigné à:
-
Version cible:
-
Début:
25 avril 2014
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Non
Planning:

Description

Ces objets peuvent s'apparenter à de la configuration et vu sous cet angle il devient pratique de les imaginer dans des fichiers textes plutôt que dans des pickle; ça pourrait aussi aider, peut-être, à en regarder les différences avant de les écraser d'une instance à l'autre.

Sur le format, on a à la fois déjà du xml utilisé pour les fonctions d'import et d'export, et un peu de json (pour l'export "web service"); c'est sans doute plus rapide d'aller vers de l'xml, mais ce n'est pas tip top dans l'air du temps (mais quand on se retrouve à parler d'interopérabilité du format des formulaires, il y a des avantages à dire que c'est du XML).

Concrètement, il s'agirait d'ajouter une classe intermédiaire entre FormDef et StorableObject, mettons XmlStorableObject, qui spécialiserait les méthodes get_filename, store et remove_object (qui seraient un rien refactorisées pour minimiser la duplication). Le get_filename aurait un fallback sur le fichier pickle, ce qui assurera le travail de migration. Le remove_object devra lui bien enlever les deux fichiers, xml ou json + pickle.


Fichiers


Demandes liées

Bloqué par w.c.s. - Development #5348: Import JSON de formdefFermé29 août 2014

Actions
Bloqué par w.c.s. - Development #5349: Import/export JSON de workflowRejeté29 août 2014

Actions

Historique

#1

Mis à jour par Frédéric Péters il y a presque 10 ans

Après discussion avec Thomas, xml.

#2

Mis à jour par Frédéric Péters il y a presque 10 ans

Un premier patch, parce qu'à vouloir utilisé autre chose que le pickle, on doit blinder la (dé)sérialisation. Pour ce patch j'ai passé en revue les attributs pour qu'ils soient bien tous inclus dans l'xml, et j'ai ajouté une série de tests.

#4

Mis à jour par Thomas Noël il y a presque 10 ans

J'ai relu ces deux premiers patches, ça me parait tout bon.

#5

Mis à jour par Frédéric Péters il y a presque 10 ans

Poussés.

commit 1bbb5bdb16b1b3cc1fbabf2b21520f8598c99d47
Author: Frédéric Péters <fpeters@entrouvert.com>
Date:   Fri Apr 25 15:50:25 2014 +0200

    workflows: add more attributes to the XML export

commit 01f7d953d60a78f2f4a40633a659cccadcb28e6e
Author: Frédéric Péters <fpeters@entrouvert.com>
Date:   Fri Apr 25 12:57:16 2014 +0200

    formdefs: add more attributes to the XML export, and tests
#6

Mis à jour par Frédéric Péters il y a plus de 9 ans

  • Statut changé de Nouveau à En cours
  • Patch proposed mis à Oui

Un patch innocent, qui permettra par la suite aux objets cités de gérer différemment leur stockage.

#8

Mis à jour par Thomas Noël il y a plus de 9 ans

Frédéric Péters a écrit :

Deux autres patchs innocents, pour avoir le code d'import/export des catégories.

Ack pour ceux-ci.

#10

Mis à jour par Frédéric Péters il y a plus de 9 ans

Et la modification pour les catégories, pour que celles-ci soient stockées en XML sur le disque.

#11

Mis à jour par Thomas Noël il y a plus de 9 ans

Frédéric Péters a écrit :

Le patch innocent du commentaire 6, que j'avais oublié.

Ack

#12

Mis à jour par Thomas Noël il y a plus de 9 ans

Frédéric Péters a écrit :

Et la modification pour les catégories, pour que celles-ci soient stockées en XML sur le disque.

Ack aussi

#13

Mis à jour par Frédéric Péters il y a plus de 9 ans

  • Patch proposed changé de Oui à Non

Je viens de pousser ces affaires.

commit dfe463ae481e622a733ae1daf4a4722ce84719e5
Author: Frédéric Péters <fpeters@entrouvert.com>
Date:   Tue Nov 25 13:33:58 2014 +0100

    categories: change on-disk storage to be XML (#4739)

commit 9cbdb2da56b1469c28c0e0d7424d1fc2f41b4d8b
Author: Frédéric Péters <fpeters@entrouvert.com>
Date:   Tue Nov 25 12:13:40 2014 +0100

    categories: add xml import/export (#4739)

commit 3be51c00d28f363c11096dadff7f342ed918e8b0
Author: Frédéric Péters <fpeters@entrouvert.com>
Date:   Tue Nov 25 11:46:02 2014 +0100

    misc: move xml indenting function to a better place (#4739)

commit 7c592ad9d232b3371bfb7653edf420fef755c612
Author: Frédéric Péters <fpeters@entrouvert.com>
Date:   Mon Nov 24 16:14:58 2014 +0100

    storage: move load/dumps into their own class methods (#4739)
#14

Mis à jour par Frédéric Péters il y a plus de 7 ans

  • Sujet changé de Stockage des formdefs/workflows/categories en xml/json à Stockage des formdefs/workflows en xml

Les catégories c'est fait, et c'est du xml.

#15

Mis à jour par Frédéric Péters il y a environ 7 ans

  • Statut changé de En cours à Nouveau
  • Assigné à Frédéric Péters supprimé

Formats disponibles : Atom PDF