Je n’ai trouvé nulle part l’indication du fonctionnement ou pas de var_profile dans l’espace privé. Mais sur spip 4.3 c’est clair que cela ne fonctionne pas.
Est-ce un comportement normal et si oui y a-t-il une raison pour cela et serait-il possible de pouvoir l’utiliser à terme aussi dans l’espace privé ?
Après petite analyse, ça se passe dans ecrire/public.php#L177
et suivantes, c’est l’appel à echo erreur_squelette(false)
qui appelle public_debusquer_dist() qui va créer l’affichage.
L’espace privé appelle aussi ce fichier, mais… sur ?var_profile=1
, la variable $tableau_des_temps
reste vide, alors que $GLOBALS['tableau_des_temps']
est bien remplie.
En fait l’espace privé est chargé de la sorte :
- ecrire/index.php
-
charger_fonction('fond', 'exec')
=> exec_fond_dist() - cette fonction ne fait rien, mais charge exec/fond.php qui exécute l’include
public.php
- mais dans ce contexte, vu qu’on a été appelé dans une fonction,
$tableau_des_temps
n’est plus une variable globable (elle n’est pas déclarée telle).
Bref…
- les globales, c’est le mal
- différents routeurs, c’est pas top (spip.php, ecrire/index.php … )
fix: Affichage du mode `var_profile=1` dans l’espace privé (!6016) · Requêtes de fusion · spip / spip · GitLab @eric_tonton donc.
Ah ben merci @marcimat !
C’était donc bien un oubli.
Je suppose que tu as fait une PR sur le version de dev de spip 5 ?
Peut-on espérer un report sur la 4.3 rapidement ?
De toute façon je vais expérimenter sur un 4.3 en local avec une branche locale.