[SPIP Zone] Noizetier-v3 : noisette conteneur bloque les variables d'environnement

Bonjour,

Sous Spip 3.2.4, N-Core 0.9.4, NoiZetier 3.0.87, la noisette Conteneur bloque les variables d’environnement.
Hors noisette conteneur, un [(#ENV**|unserialize|print_r{1})] dans une noisette code spip libre renvoie bien l’environnement:

    [rubrique2] => 
    [id_rubrique] => 2
    [type-page] => rubrique
    [date] => 2019-05-07 07:27:55
    [date_default] => 1
    [date_redac] => 2019-05-07 07:27:55
    [date_redac_default] => 1
    [id_secteur] => 2
    [composition] => 
    [lang] => fr
    [id_conteneur] => content/rubrique
    [bloc] => content
    [fond_compilation_noizetier] => 1
    [id_noisette] => 78
    [rang_noisette] => 3
    [profondeur_noisette] => 0

Dans une noisette conteneur, la même requête renvoie les données de la noisette conteneur :

    [plugin] => noizetier
    [id_conteneur] => conteneur|noisette|70
    [stockage] => 
    [lang] => fr
    [date] => 2019-05-07 07:27:55
    [date_default] => 1
    [date_redac] => 2019-05-07 07:27:55
    [date_redac_default] => 1
    [id_noisette] => 77
    [rang_noisette] => 1
    [profondeur_noisette] => 1

Quelqu’un reproduit ?

Dom

Oui c’est voulu, pour des questions de performance vraisemblablement.

Les variables d’environnement à transmettre peuvent être spécifiées pour chaque type de noisette dans le yaml.
Pour la noisette conteneur, par défaut aucune n’est transmise.
Cf. :

Oui, comme le dit Charles c’est la configuration du YAML qui fait ça explicitement.
Mais ce que je ne vois pas dans ton message c’est est ce que ça te gêne ?
Il est possible de créer une autre noisette conteneur avec env.

Non, ça ne me gêne plus… avec une nouvelle noisette conteneur.

J’ai pourtant lu la copieuse doc N-Core et Noizetier V3… mais j’avais zappé.

Merci
dom

Je souhaitais juste passer l’id_objet dans une page objet. J’ai tenté de créer une noisette conteneur avec

contexte: [‹ id_rubrique ›]
mais pas mieux. Si en plus, ça affecte les performances, je vais m’en passer.

Cdlt

Dom

j’ai essayé de passer un contexte, autre (aucun) ou en tableau mais ça retourne la meme chose. du coup est-ce fonctionnel ? j’ai loupé un truc ?

Hello,

Bon je viens de regarder et oui vous avez raison ce n’est pas normal de ne pas transmettre l’environnement au travers des conteneurs.
Ca réduit son intérêt puisque les noisettes incluses ne peuvent plus s’en servir et comme le conteneur est inclus comme une capsule il ne se comporte pas comme une vraie noisette avec la configuration contexte: xxxx.
Donc je viens de faire une correction, dites moi si cela fonctionne et si c’est transparent en termes de performances (version N-Core 0.9.7 à venir).

Le 12/11/2019 à 21:13, Eric Lupinacci a écrit :

Hello,

Bon je viens de regarder et oui vous avez raison ce n'est pas normal de ne pas transmettre l'environnement au travers des conteneurs.
Ca réduit son intérêt puisque les noisettes incluses ne peuvent plus s'en servir et comme le conteneur est inclus comme une capsule il ne se comporte pas comme une vraie noisette avec la configuration contexte: xxxx.
Donc je viens de faire une correction, dites moi si cela fonctionne et si c'est transparent en termes de performances (version N-Core 0.9.7 à venir).

++
Eric

Hello,

Merci pour la mise à jour ça change tout :wink: Pour ce qui est des performances, je te ferais de retours dès que j'aurais avancé un peut plus sur le squelette et la collection de noizettes.

Bonne journée

Arnaud B.