Les articles publiés sur le site

  • Evolution #2822 : HTML des modèles de pagination

    10 avril 2021, par nicod _

    Moi je mettrais bien un

  • Evolution #2822 : HTML des modèles de pagination

    10 avril 2021, par RastaPopoulos ♥

    À priori

  • Evolution #2822 : HTML des modèles de pagination

    10 avril 2021, par nicod _

    Ce serait pas mal d'avoir un role="navigation" systématique sur le conteneur du ul.pagination-items (mais pas sur le ul lui même, qui a un rôle de liste pour l'énumération).

    Donc soit on préconise d'utiliser systématiquement : <[nav|div] class="pagination" role="pagination">#PAGINATION, mais il y a risque d'oubli, soit on encapsule par défaut toute la pagination générée dans un

  • Anomalie #4717 : Erreurs nombre d’argument des filtres

    10 avril 2021, par jluc -

    La PR récupère l'erreur PHP, évite le crash blank et délivre le message d'erreur PHP dans la jolie box d'erreur SPIP. Le pire est évité, et donc il faut intégrer cette PR qui fait du bien.

    Mais l'internaute SPIPien se retrouve avec un message d'erreur en anglais et portant sur le code compilé PHP. Ce code compilé, même le commun des devs PHP ne le connait pas, car à part XRay qui le rend accessible et les core-développeurs qui débuguent le code d'une nouvelle structure SPIP, personne ne va scruter et n'a connaissance du code php généré par le compilateur.

    Pour faire mieux, il y a la piste de la déclaration des arités des filtres. $arite_des_filtres = [['implode', 2, 2], ['affdate', 1, 2]...]. Cette déclaration peut probablement être utilisée au moment de la compilation d'un appel de filtre lorsque le compilateur convertit la structure SPIP #XXX|filtre... en appel PHP.
    Ça permet de détecter une erreur d'argumentcount AVANT l'appel PHP et de fournir un joli message d'erreur SPIP qui fait référence au source SPIP.

    Dans ce cas, la détection d'erreur peut se faire à la compilation.

    Mais il se peut que d'autres erreurs PHP doivent être gérées, avec la strictisation croissante de PHP. Il faudra donc de nouvelles déclarations permettant la détection préventive des erreurs.

    Peut être sur d'autres structures de données que les filtres aussi ?

    Il faut donc développer la capacité d'introspection de SPIP.

    Mais parfois l'erreur n'est pas détectable au moment de la compilation. J'ai évoqué plus haut l'erreur relative au typage des arguments. S'il se confirme que le pb se pose aussi, et vu qu'on peut passer à un filtre un argument calculé dynamiquement, c'est pas lors de la compilation que ça pourra être détecté, mais lors de l'exécution du code compilé.

    Il faut alors prendre chaque erreur PHP possible et voir si/comment le compilateur peut la prévenir.

    Une alternative serait de "traduire" cette erreur PHP de manière à aiguiller le webmestre SPIP.

    Par exemple le message d'erreur de https://www.mail-archive.com/spip@rezo.net/msg81110.html , qui fait référence au source compilé, peut être traduit, par reconnaissance (regexp), analyse du message d'erreur, et calcul du message d'erreur SPIP en « Erreur : dans votre source SPIP, il y un appel au filtre |implode qui n'a pas le bon nombre d'arguments. Ça se passe dans la boucle 'BOUCLE_contenu_article' : veuillez examiner le code et corriger. » Là en plus, ce serait bien de pouvoir associer le nom du fichier source à la boucle dont on connait le nom. Une capacité d'introspection déjà présente ? ou à développer ?

  • Evolution #4720 : [css vars] Utiliser nos variables CSS dans le thème de l’espace privé

    9 avril 2021

    Ça simplifie énormément la vie et ça permet pleins de choses sympas, merci marcimat.
    En plus des couleurs il y aura quelques autres variables d'utilité publique à ajouter par la suite pour homogénéiser aussi les espacements, les gouttières, etc.