SPIP 4 : bugs et PHP 8

Bonjour,

Les plugins suivants sont installés : bonux, accès restreint, champs extras interface et champs extras API, Verifer, YAML, saisies

Je viens d’installer SPIP 4 sur un serveur PHP 8. Pour informations, j’ai noté les soucis suivants qui disparaissent en php 7.4 :

  • Le message apparait partout dans le backoffice : Warning : Undefined array key « i18n_ecrire_fr@temporaire » in /home/clients/b292ffee5cda953d5b1dfadcf99de260/dev/BackStore/inc/traduire.php on line 168

  • Quand j’active un plugin avec le menu « activer », j’ai un message d’erreur « Oups. Une erreur inattendue a empêché de soumettre le formulaire. Vous pouvez essayer à nouveau. ». Je dois recliquer sur « Activer » pour l"activer. Cela ne ce produit pas en php 7.4

Au-delà du PHP 8, j’ai l’habitude de changer le nom du dossier ecrire pour plus de sécurité, mais la fonction medias_upgrade_logo_objet de medias_administrations.php à garder la valeur brute. Dans les mises à jour suivantes, est-il envisageable de faire en sorte que la fonction prenne la valeur définie dans inc_version.php si c’est bien là que la variable pour tout SPIP est définie.

Merci en tout cas pour ces évolutions de SPIP et ce CMS toujours aussi agréable à utiliser.

Salut,

Le warning ne devrait pas être bloquant, d’ailleurs je te conseille de désactiver leur affichage en production. Par contre, tu peux le signaler dans un ticket sur https://git.spip.net/spip/spip/issues/ afin qu’on le corrige ?

Pour le second point, essaye de nouveau après avoir désactivé les warnings, si ça se présente toujours fais nous un retour ici.

Qu’entends-tu par là ? Peux-tu détailler ? Je ne vois pas de trace de « ecrire » en dur dans la fonction qui migre es logos en base cf ecrire/action/editer_logo.php · master · spip / spip · GitLab

Hello,

Merci pour la réponse.

Pour les warnings, je sais qu’ils ne sont pas bloquants. Je les précise juste pour informations au cas où :slight_smile:
J’essaie de le rajouter sur git mais la connexion ne marche pas avec mes accès SPIP, je n’ai pas de bouton créer un compte et lien GitHub pour la connexion ne marche pas non plus.

Pour le second en effet, cela remarche avec les warnings désactivés. Est-ce normal que cela ne marche pas avec les warnings activés ?

Pour augmenter la sécurité, je change le nom de écrire. Mais dans le plugin « Medias », il y a la fonction medias_upgrade_logo_objet (fichier medias_administrations.php) qui utilise le nom du dossier en dur.

/**

  • Upgrader les logos objet vers des documents
  • @param $objet
    */
    function medias_upgrade_logo_objet($objet) {
    $GLOBALS[‹ logo_migrer_en_base ›] = true;
    include_spip(‹ ecrire/action/editer_logo ›);
    logo_migrer_en_base($objet, _TIME_OUT);
    unset($GLOBALS[‹ logo_migrer_en_base ›]);
    }

Pour s’inscrire sur git.spip.net c’est par ici que ça se passe SPIP-Contrib cf « Contribuer au développement » :wink:

Ha oui bien vu, ça vient de ce commit #4512 : on fait l'upgrade des logos depuis le plugin medias pour etre sur que... (477e97d2) · Commits · spip / medias · GitLab et je ne sais pas pourquoi on ne fait pas un simple include_spip('action/editer_logo'); peut-être que @cerdic pourra nous en dire plus ?

Cedric il sait pas plus mais il a remonté les commits :slight_smile:
ça vient donc de

en lien avec

Mais sans doute on pourrait utiliser la constante _DIR_RESTREINT_ABS à la place de ecrire/ en dur

Merci pour le retour :slight_smile:

Calro que si !

1 « J'aime »

De rien. Si je peux contribuer à améliorer ce très bon SPIP.

···

| Logo Certifié Conforme
|
| - |

|



| | DAMIEN VIROT
Webdesigner/Développeur
Formateur | | | | +33 6 62 63 92 37
iNf | | | | contact@certifie-conforme.com
www.certifie-conforme.com | |



|
| - | - | - | - | - | - | - | - | - | - | - | - | - |

Le 20/10/2021 à 09:52, b_b via Discuter de SPIP a écrit :

b_b
Octobre 20

Merci pour le retour :slight_smile:

cerdic:

Mais sans doute on pourrait utiliser la constante _DIR_RESTREINT_ABS à la place de ecrire/ en dur

Calro que si !


Voir le sujet ou répondre à ce courriel pour répondre.

Pour se désabonner de ces courriels, cliquez ici.

1 « J'aime »

Bonsoir,

Je reprends cette discussion, car après plusieurs essais, via mon ID GitHub ou en demandant « mot de passe oublié » sur mon mail utilisé ici ou en utilisant mes identifiants de discuter.spip.net, je n’arrive pas à me connecter sur Issues - spip - SPIP on GIT pour laisser des tickets sur ce que je remarque.

Alors en SPIP 4.0.4, PHP 8 et les plugins suivants installés : bonux, couteau suisse, SCSS et Image responsive :

  1. Le bug Warning toujours là. Le message apparait partout dans le backoffice en haut des pages :
    Warning : Undefined array key « i18n_ecrire_fr@temporaire » in /home/clients/b292ffee5cda953d5b1dfadcf99de260/dev/BackStore/inc/traduire.php on line 169.
    Et si je vais dans le menu de navigation rapide par exemple, il réapparait régulièrement à plusieurs endroits.
    Pour rappel : Je sais que c’est des warning qui n’impactent pas le fonctionnement. C’est juste pour prévenir s’il y a juste un truc à modifier pour l’enlever. C’est sur mon serveur de prod. Je laisse mon client en 7.4 pour l’instant.

  2. Toujours là aussi et pour ceux qui comme moi on l’habitude de changer le nom du dossier ecrire pour plus de sécurité, la fonction medias_upgrade_logo_objet de medias_administrations.php à garder dans le code le dossier ecrire en brut (/ecrire) ou lieu éventuellement de mettre comme suggérer dans cette discussion _DIR_RESTREINT_ABS. C’est un problème certainement ponctuel lors de mise à jour ou de transfert de site et lié, je le répète aux gens qui change ecrire comme moi.
    PS y a t il un plugin pour changer ce dossier sans passer par spip.php et inc_version ?

NOUVEAUX BUGS DEPUIS PASSAGE EN 4.0.0 et 4.0.4

  1. Quand j’utilise le changement rapide de statut (les petits carrés de couleur), cela change bien le statut, MAIS ça m’ouvre un nouvel onglet about:blank. Je dois le fermer et recharger la page pour voir le changement.

  2. BEAUCOUP PLUS GÊNANT surtout sur mes sites multilingues. Concernant les DOCUMENTS. Même document lié à 2 articles en même temps (tester aussi avec 3 dont un article pas lié par les langues, juste l’image commune aux 3). Si je fais MODIFIER sur l’image puis dans la POPIN > Changer. Ça me change bien l’image pour l’article depuis lequel j’ai fait la modif ,mais ça me fait sauter l’image sur tous les autres articles. Obligé de le relier à nouveau.

  3. Je ne sais pas si c’est général, mais depuis BigUpload sur Chrome (dernière version) et Windows 10. Si je « glisse » 3 fichiers. Il y a au moins 4 à 10 secondes avant le début du upload et que 2 en même temps. Le troisième part 2 à 3 secondes après encore. Quand je glisse 20 images, on est proche de la minute avant que tout soit chargé.

  4. Documents, toujours. Quand je veux charger sur un article un document de la médiathèque. Je fais « parcourir », cela m’ouvre la popin et dans le champ « rechercher », si je tape « Enter », ça ferme ma popin et ça m’envoie dans la médiathèque. On doit cliquer sur la loupe. Pas ultra dérangeant, mais gênant, car pour moi et pas mal de mes clients, le réflexe, c’est de faire "Enter.

Voilà les bugs vus pour le moment le plus gênant étant les images qui se délient.

Bonne soirée
Bon WE

Et toujours merci pour ce SPIP :slight_smile:

PS niveau design et pour rebondir sur les commentaires vus à ce sujet sur le plugin Makicatta et qui concernant les clients qui utilisent les sites fait sous SPIP. Y-a-t-il un projet se basant sur ce plugin pour changer l’interface admin qui une bonne partie des clients trouve en effet plus « viellot » que celles d’autres CMS. Mais le redesign de SPIP 4.0 fait déjà un très bon effet :wink:

Ce sont surtout les circonstances dans lesquelles cela arrive qui me turlupine… Tu n’aurais pas un fichier de langue vide ? sans déclaration dedans ? ou avec une déclaration qui n’utilise pas la $GLOBALS['idx_lang'] (hum) dedans ? Parce que je ne l’avais jamais vu encore celle là.

Bonjour Matthieu,

Merci pour cette précision. En effet, à force de copier-coller des structures de site, on laisse trainer quelques vieux fichiers de langues vides. Je n’y avait pas pensé.

Ce léger petit Warning est une affaire classée. Merci.

Et je n’avais pas vu les liens pour m’inscrire sur git.spip.net pour éviter de rallonger cette discussion ici.

J’ai pu m’inscrire à contrib en recevant un email. J’ai rempli le formulaire pour la Forge mais pas encore reçu de mail. Inscription a posteriori ?

Bon WE

Je ne vois pas d’info sur ça dans Contrib. Tu avais bien validé le formulaire de Forge ?

Cette fois je l’ai vu :slight_smile:

Je viens de refaire la manip et en effet cette fois, j’ai le message vert : « L’inscription a bien été prise en compte. Un administrateur ou une administratrice va s’en occuper rapidement et vous recevrez un email pour vous avertir de la mise à disposition de votre compte. »

Je ne l’avais pas eu la première fois. Et je viens de recevoir un mail.

Merci Matthieu

Ok, je crois que je reproduis effectivement. Et je viens de voir pourquoi a priori : Lorsqu’on change le fichier le champ « Ce document est lié à » ne conserve QUE l’identifiant de l’article en cours ! Du coup en enregistrant il délie les anciens articles…

Si tu veux faire un ticket ça serait chouette. J’en ai fait un pour le warning des fichiers de langue par ailleurs.

Pour

    1. c’est effectivement à faire
    1. je ne reproduis pas
    1. pas eu de retour en ce sens non plus.

Tu n’aurais pas un JS qui interférerait ?

Avec plaisir pour le ticket, (merci pour l’autre) mais souci de connexion.

J’ai bien eu le message vert comme quoi j’étais inscrit. Puis le mail « Welcome to Gitea » qui me disait :

" Hi CallMeDams, this is your registration confirmation email for SPIP on GIT!
You can now login via username: CallMeDams.

If this account has been created for you, please set your password first.
© SPIP on GIT"

J’y suis allé en essayant de me connecter avec mes accès contrib. Mais non. J’ai utilisé le lien du mail et celui « mot de passe » oublié de la page, mais aucun mail n’est arrivé.

Merci pour les tickets finalement :wink:

Pour 2. dès que mes accès fonctionne, je peux rajouter un ticket
Pour 3. je vais regarder mes JSs
Pour 5. de mémoire, je vais retester, ca le faisait sur certains navigateurs

Merci pour le reste Matthieu