Projet

Général

Profil

Development #47935

La sérialisation des snapshots contient un timestamp

Ajouté par Nicolas Roche il y a plus de 3 ans. Mis à jour il y a plus de 3 ans.

Statut:
Rejeté
Priorité:
Normal
Assigné à:
Version cible:
-
Début:
21 octobre 2020
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Non
Planning:
Non

Description

Pour reproduire :
  • je crée un formulaire
  • j'ajoute un champ
  • je vais sur l'historique et je regarde l'id du snapshot dans l'URL du dernier snapshot
  • j'édite le champ, et je valide sans rien modifier
  • je vais sur l'historique et je vois qu'un nouveau snapshot est apparu avec un nouvel id.

via pdb :

---> 62         if label is not None or latest is None or obj.serialization != latest.serialization:
     63             # save snapshot if there are changes or an explicit label was
     64             # given.
     65             obj.store()

ipdb> obj.serialization
... <last_modification user_id="1">2020-10-21 18:04:38 ...
ipdb> latest.serialization
... <last_modification user_id="1">2020-10-21 17:28:39 ...

J'ai l'impression que le champs last_modification_time a été utilisé quelque part à la place de last_modification_user_id mais je ne vois pas où.


Demandes liées

Lié à w.c.s. - Development #47367: historique d'un workflow : le détail est un peu trop laconiqueFermé05 octobre 2020

Actions

Historique

#1

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

Tu peux faire un diff complet des sérialisations ?

#2

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

J'ai l'impression que le champs last_modification_time a été utilisé quelque part à la place de last_modification_user_id mais je ne vois pas où.

Je ne comprends pas cette partie mais peu importe; le truc c'est qu'on fait dans le .store()

        self.last_modification_time = time.localtime()

Ça serait pour moi tout bonnement à retirer, et last_modification_user_id aussi tant qu'à faire, que cette info soit tirée des snapshots. (mais ça pose une petite question par rapport au fait qu'on ne mette pas en snapshot les gros workflows, sans doute que conjointement il faudra changer ça et plutôt adapter comme fonctionnement de ne garder que la dernière version pour ceux-ci).

#3

Mis à jour par Nicolas Roche il y a plus de 3 ans

Voilà :

$ diff latest2.xml obj2.xml 
18c18
<   <last_modification user_id="1">2020-10-21 17:28:39</last_modification>
---
>   <last_modification user_id="1">2020-10-21 18:04:38</last_modification>

(désolé pour l'incompréhension ci-dessus, j'ai mal lu le XML)

#4

Mis à jour par Nicolas Roche il y a plus de 3 ans

  • Description mis à jour (diff)

#5

Mis à jour par Nicolas Roche il y a plus de 3 ans

  • Lié à Development #47367: historique d'un workflow : le détail est un peu trop laconique ajouté
#6

Mis à jour par Nicolas Roche il y a plus de 3 ans

  • Assigné à mis à Nicolas Roche
#7

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

  • Statut changé de Nouveau à Rejeté

J'ai décrit les choses dans #48255, ce ticket sans objectif clair il vaut mieux l'oublier.

#8

Mis à jour par Nicolas Roche il y a plus de 3 ans

Oui, quand j'ai lu :

que cette info soit tirée des snapshots.

j'ai compris de travers que l'on pouvait dégager la notification de dernière modification présentée sur la page principale des objets (formulaire, workflows...), puisque l'on peut également retrouver cette information sur la page des snapshots.
C'est ce que je m’apprêtait à faire ici.

Formats disponibles : Atom PDF