Projet

Général

Profil

Bug #13185

Mieux vérifier la syntaxe des templates..

Ajouté par Benjamin Dauvergne il y a plus de 7 ans. Mis à jour il y a plus de 7 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
-
Version cible:
Début:
14 septembre 2016
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:

Description

Sur une erreur de syntaxe [is xxx] où il manque le deuxième élément à comparer on reçoit ce genre de trace:

IndexError: list index out of range
  File "quixote/publish.py", line 275, in process_request
    output = self.try_publish(request)
  File "wcs/publisher.py", line 227, in try_publish
    return QommonPublisher.try_publish(self, request)
  File "qommon/publisher.py", line 623, in try_publish
    return Publisher.try_publish(self, request)
  File "quixote/publish.py", line 253, in try_publish
    output = self.root_directory._q_traverse(components)
  File "modules/root.py", line 823, in _q_traverse
    return Directory._q_traverse(self, path)
  File "quixote/directory.py", line 63, in _q_traverse
    return obj._q_traverse(path)
  File "wcs/backoffice/root.py", line 78, in _q_traverse
    return super(RootDirectory, self)._q_traverse(path)
  File "quixote/directory.py", line 91, in _q_traverse
    return super(AccessControlled, self)._q_traverse(path)
  File "quixote/directory.py", line 63, in _q_traverse
    return obj._q_traverse(path)
  File "wcs/backoffice/management.py", line 397, in _q_traverse
    return super(ManagementDirectory, self)._q_traverse(path)
  File "quixote/directory.py", line 63, in _q_traverse
    return obj._q_traverse(path)
  File "quixote/directory.py", line 63, in _q_traverse
    return obj._q_traverse(path)
  File "wcs/forms/common.py", line 727, in _q_traverse
    return super(FormStatusPage, self)._q_traverse(path)
  File "quixote/directory.py", line 67, in _q_traverse
    return obj()
  File "wcs/backoffice/management.py", line 1713, in _q_index
    return self.status()
  File "wcs/forms/common.py", line 559, in status
    r += htmltext(self.workflow_messages())
  File "wcs/forms/common.py", line 165, in workflow_messages
    workflow_messages = self.filled.get_workflow_messages()
  File "wcs/formdata.py", line 366, in get_workflow_messages
    message = item.get_message(self)
  File "wcs/workflows.py", line 2224, in get_message
    tmpl.parse(self.message, base_format=ezt.FORMAT_HTML)
  File "wcs/qommon/ezt.py", line 311, in parse
    self.program = self._parse(text_or_reader, base_printer=printer)
  File "wcs/qommon/ezt.py", line 412, in _parse
    args[2] = _prepare_ref(args[2], for_names, file_args)

C'est quelque chose qui devrait sortir dès la définition du template, et même si ce n'était pas le cas il faudrait pouvoir remonter une erreur plus précise du style SyntaxError: "[is xxx]" is invalid syntax.


Fichiers

Révisions associées

Révision e08cad24 (diff)
Ajouté par Frédéric Péters il y a plus de 7 ans

misc: validate [is varname ...] syntax (#13185)

Révision 7c9addcc (diff)
Ajouté par Frédéric Péters il y a plus de 7 ans

workflows: validate ezt syntax of displayed messages (#13185)

Historique

#3

Mis à jour par Benjamin Dauvergne il y a plus de 7 ans

Ack.

#4

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

  • Statut changé de En cours à Résolu (à déployer)
commit 7c9addcc860d871ad6b870d4e248d1c8d78d7a79
Author: Frédéric Péters <fpeters@entrouvert.com>
Date:   Mon Sep 19 09:02:14 2016 +0200

    workflows: validate ezt syntax of displayed messages (#13185)

commit e08cad24076e3aae2a63475f334009b9e5eb6e45
Author: Frédéric Péters <fpeters@entrouvert.com>
Date:   Mon Sep 19 08:55:22 2016 +0200

    misc: validate [is varname ...] syntax (#13185)
#5

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

  • Version cible mis à v1.59
#6

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

  • Statut changé de Résolu (à déployer) à Fermé

Formats disponibles : Atom PDF