J'ai fait une jolie mise à jour de mon ordinateur local, et j'ai relancé mon spip après avoir installé apache, php5, php5-sqlite.
La page d'accueil du site marchait bien, et puis une page d'article était toute vide.
Aucune erreur a priori ni dans `/var/log/apache2/error.log` ni dans `tmp/log/spip.log`
J'ai tenté de me connecter dans `/ecrire/`, le formulaire s'affichait mais ensuite au moment de la soumission, il s'affichait partiellement (juste la liste déroulante de langues) puis s'arrêtait là.
Là encore, zéro erreur dans les logs.
Alors j'ai procédé à l'ancienne, en virant tout et en rajoutant ligne à ligne. C'est #LOGO_AUTEUR qui me posait problème. Et donc ça me faisait des plantages silencieux comme qui rigole.
Pour voir si ça vient des images, j'installe php5-gd et php5-imagick. Et bam, tout marche et je peux entrer dans `/ecrire/`.
Donc j'en déduis que SPIP 3.0.18-dev ne marche plus sans une lib image.
C'est une régression connue ou j'ai raté une étape ?
En fait, tu as relancé un site existant sur lequel GD était configuré (et donc dans spip_meta), mais sur un nouvel environnement sans php-gd, c'est bien ça ?
Quelqu'un a eu exactement le même problème l'autre jour sur IRC.
C'est effectivement assez violent parce qu'il n'y a aucun log.
Donc j'en déduis que SPIP 3.0.18-dev ne marche plus sans une lib image.
En fait, tu as relancé un site existant sur lequel GD était configuré
(et donc dans spip_meta), mais sur un nouvel environnement sans php-gd,
c'est bien ça ?
Ouep. Mais j'avais vidé tout le tmp etc. par sécurité, donc je ne sais pas trop où le spip_meta avait stocké ça.
Quelqu'un a eu exactement le même problème l'autre jour sur IRC.
C'est effectivement assez violent parce qu'il n'y a aucun log.
Voui.
Est ce qu'il y a un ticket à ce sujet ?
Chépo, j'avoue que depuis le temps je ne sais même plus où sont les tickets.
Dans l'espace privé, on ne voit pas d'erreur (même si l'affichage des
erreurs PHP sont activées) car elles tombent dans un buffer là https://core.spip.net/projects/spip/repository/
entry/spip/ecrire/exec/fond.php#L48
Si c'est qu'à un endroit, on pourrait peut être mettre un test d'existence
de la fonction en question, loguer une erreur et s'en aller proprement
On pourrait tester les error_reporting et afficher l'erreur brute PHP
non ?