Project

General

Profile

Anomalie #5655

'eosfunc' n'est pas défini.

Added by Benjamin Bohard almost 8 years ago. Updated over 7 years ago.

Status:
Fermé
Priority:
Haut
Assigned To:
Category:
-
Start date:
06/25/2013
Due date:
% Done:

100%

Spent time:
Distribution:
EOLE 2.4

Description

eosfunc est importé sous le nom eosfunc3 dans var_loader.py.


Related issues

Related to python-pyeole - Evolution #5209: Fournir un namespace python pour le code EOLE Classée sans suite

History

#1 Updated by Benjamin Bohard almost 8 years ago

>>> from creole.loader import creole_loader
>>> conf = creole_loader(load_extra=True)
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/creole/var_loader.py", line 445, in _populate
    getattr(self, 'populate_' + keys)(parse[keys])
  File "/usr/lib/python2.7/dist-packages/creole/var_loader.py", line 333, in populate_checks
    tvalues = eval(check[1][0]['value'])
  File "<string>", line 1, in <module>
NameError: name 'eosfunc' is not defined
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python2.7/dist-packages/creole/loader.py", line 527, in creole_loader
    loader.read_dir(dirs, namespace)
  File "/usr/lib/python2.7/dist-packages/creole/var_loader.py", line 424, in read_dir
    self._populate(parse)
  File "/usr/lib/python2.7/dist-packages/creole/var_loader.py", line 449, in _populate
    raise ConfigError(u"Unable to populate {0}: {1}".format(unicode(keys), unicode(err)))
creole.error.ConfigError: Unable to populate checks: name 'eosfunc' is not defined

#2 Updated by Daniel Dehennin almost 8 years ago

  • Assigned To set to Bruno Boiget
  • Priority changed from Normal to Haut
  • Target version set to Eole 2.4-dev-3

Le commit bfdc9757 a renommé eosfunc en eosfunc3 mais cela cause des soucis comme vu dans le traceback.

Je me demande de plus en plus si la « conteneurisation » de « creole3 » sur un zéphir 2.3 ne serait pas une bien meilleure solution…

#3 Updated by Daniel Dehennin almost 8 years ago

  • Due date set to 06/28/2013
  • Start date set to 06/25/2013

#4 Updated by Daniel Dehennin almost 8 years ago

Le commit 3a24db06 a commenté le « as eosfunc3 », cela ne plante plus pour l’instant.

#5 Updated by Daniel Dehennin almost 8 years ago

  • Due date changed from 06/28/2013 to 07/05/2013

#6 Updated by Daniel Dehennin almost 8 years ago

Il a été suggéré en réunion que qu’un namespace python soit créé afin d’y caser les deux creole.

Il faut voir à quel niveau on sépare :

# Creole 2.3
from creole.parsedico import parse_dico
# Creole 2.4
from eole.creole.loader import creole_loader

#7 Updated by Emmanuel GARETTE almost 8 years ago

A noter que le namespace ne changera pas le problème de cette demande.

Dans le cas du dictionnaire : /usr/share/eole/creole/dicos/10_era.xml, il y a :

<param type="python">eosfunc.list_files

eosfunc existe dans creole et dans eole.creole. Il y aura toujours conflit de nommage.

#8 Updated by Daniel Dehennin almost 8 years ago

  • Due date deleted (07/05/2013)

#9 Updated by Joël Cuissinat over 7 years ago

  • Target version changed from Eole 2.4-dev-3 to Eole 2.4-alpha

#10 Updated by Joël Cuissinat over 7 years ago

  • Target version deleted (Eole 2.4-alpha)

#11 Updated by Bruno Boiget over 7 years ago

  • Status changed from Nouveau to Résolu
  • Target version set to Eole 2.4-beta2

La méthode d'adaptation pour eole 2.3 a changé (sur eole 2.3 la librairie creole 2.4 est renommée en 'creole3')

fonctionnement à vérifier pour le cas des fonctions personnalisées (dans ce cas, la librairie utilise /usr/share/creole/funcs_creole3 au lieu de /usr/share/creole/funcs).

#12 Updated by Bruno Boiget over 7 years ago

  • % Done changed from 0 to 100

#13 Updated by Joël Cuissinat over 7 years ago

  • Status changed from Résolu to Fermé

Plus de traceback, affaire classée :)

Also available in: Atom PDF