[ecrire ↪ issue_5095] 20 commits

spip/ecrire | 20 commits

Par Matthieu Marcillaud, le 8 février 2026 à 16h37min :

style: fix coding style

Modifié
inc/config.php

Détails : style: fix coding style (5592ce12) · Validations · spip / ecrire · GitLab

==============================
Par Matthieu Marcillaud, le 8 février 2026 à 16h37min :

feat: utiliser spip-league/serializer plutôt que de tout laisser dans ecrire

Supprimé
src/Utils/JsonSerializer.php
src/Utils/Serializer.php
tests/Utils/SerializerTest.php
tests/integration/Fixtures/A.php
tests/integration/Fixtures/Awithwakeup.php
tests/integration/Fixtures/B.php
Modifié
composer.json
inc/config.php

Détails : feat: utiliser spip-league/serializer plutôt que de tout laisser dans ecrire (1d10bf9f) · Validations · spip / ecrire · GitLab

==============================
Par Maïeul Rouquette, le 8 février 2026 à 16h36min :

change: utiliser spip_logger

Modifié
src/Utils/Serializer.php

Détails : change: utiliser `spip_logger` (4096d04a) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 8 février 2026 à 16h36min :

fix: ajouter un final construc sur les Fixtures A et B pour sécuriser le new static() (Solving PHPStan error "Unsafe usage of new static()" | PHPStan)

Modifié
tests/integration/Fixtures/A.php
tests/integration/Fixtures/B.php

Détails : fix: ajouter un final construc sur les Fixtures A et B pour sécuriser le new... (b8ecee95) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 8 février 2026 à 16h36min :

styles: composer fix-cs

Modifié
src/Utils/JsonSerializer.php
src/Utils/Serializer.php
tests/Utils/SerializerTest.php
tests/integration/Fixtures/A.php
tests/integration/Fixtures/Awithwakeup.php
tests/integration/Fixtures/B.php

Détails : styles: composer fix-cs (b547986e) · Validations · spip / ecrire · GitLab

==============================
Par Matthieu Marcillaud, le 8 février 2026 à 16h36min :

tests: Add tests for Serializer

Report adapté de

Ajouté
tests/Utils/SerializerTest.php
tests/integration/Fixtures/A.php
tests/integration/Fixtures/Awithwakeup.php
tests/integration/Fixtures/B.php

Détails : tests: Add tests for Serializer (ec3c3568) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 8 février 2026 à 16h36min :

fix: mauvais nom de variable

Modifié
src/Utils/Serializer.php

Détails : fix: mauvais nom de variable (5f8a29e6) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 8 février 2026 à 16h36min :

fix: typo dans l’option allowed_classes

Modifié
src/Utils/Serializer.php

Détails : fix: typo dans l'option allowed_classes (4d989cc2) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 8 février 2026 à 16h36min :

fix: il ne faut pas serializer le tableau de la valeur unique car en cas de charset incorrect Zumba\JsonSerializer\JsonSerializer transforme le tableau en tableau associatif, ce qui est un objet json et plus un array, et la deserialization echoue. On serialize donc la valeur telle quelle, et on l’encapsule dans un crochet, ce qui est le signe distinctif d’une données json serializée

Modifié
src/Utils/Serializer.php

Détails : fix: il ne faut pas serializer le tableau de la valeur unique car en cas de... (274de02c) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 8 février 2026 à 16h36min :

refactor: utiliser Spip\Utils\Serializer pour serializer/deserializer les données de configuration

Modifié
inc/config.php

Détails : refactor: utiliser Spip\Utils\Serializer pour serializer/deserializer les données de configuration (f5264aec) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 8 février 2026 à 16h36min :

build: une classe Spip\Utils\Serializer pour gérer

  • la serialization safe de données qui peuvent être stockées en base en json_encode (qui ne casse pas en cas d’edition manuelle, ou de soucis de charset ou planes utf8), via une version étendue de json_encode qui prend en charge les charsets non utf et
    les objets PHP
  • deserialization safe via un json_decode qui n’autorise qu’une liste de classes explicites

Refs: #5095

fix: deszerializer avec Utils\JsonSerializer()

Ajouté
src/Utils/Serializer.php

Détails : build: une classe Spip\Utils\Serializer pour gérer (b26a87d3) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 8 février 2026 à 16h36min :

build: une classe Spip\Utils\JsonSerializer pour surchargcer \Zumba\JsonSerializer\JsonSerializer et prendre en charge allowed_classes

Ajouté
src/Utils/JsonSerializer.php

Détails : build: une classe Spip\Utils\JsonSerializer pour surchargcer... (eecacf54) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 8 février 2026 à 16h36min :

build: require zumba/json-serializer GitHub - zumba/json-serializer: Serialize PHP variables, including objects, in JSON format. Support to unserialize it too.

Modifié
composer.json

Détails : build: require zumba/json-serializer https://github.com/zumba/json-serializer (f914740d) · Validations · spip / ecrire · GitLab

==============================
Par Maïeul Rouquette, le 8 février 2026 à 13h27min :

fix: colorer le background du <code> indiquant l’url de l’iframe échappée

Modifié
inc/texte_mini.php

Détails : fix: colorer le background du `<code>` indiquant l'url de l'iframe échappée (c600e3b2) · Validations · spip / ecrire · GitLab

==============================
Par Maïeul Rouquette, le 8 février 2026 à 13h27min :

docs: peut être remplacer une constante par pipeline

Modifié
inc/texte_mini.php

Détails : docs: peut être remplacer une constante par pipeline (527f46af) · Validations · spip / ecrire · GitLab

==============================
Par Maïeul Rouquette, le 8 février 2026 à 13h27min :

remove: ne pas considérer que youtube est par principe safe

Modifié
inc/texte_mini.php

Détails : remove: ne pas considérer que youtube est par principe safe (48888dfd) · Validations · spip / ecrire · GitLab

==============================
Par Matthieu Marcillaud, le 8 février 2026 à 13h27min :

fix: Typages des nouveaux paramètres et fonctions

Refs: !163

Modifié
inc/texte_mini.php

Détails : fix: Typages des nouveaux paramètres et fonctions (52b99b66) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 8 février 2026 à 13h27min :

styles: fix ecs

Modifié
inc/texte_mini.php

Détails : styles: fix ecs (f0ad8b84) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 8 février 2026 à 13h27min :

fix: inspecter également le contenu si on a des urls de type javascript, y compris un peu cachée

Modifié
inc/texte_mini.php

Détails : fix: inspecter également le contenu si on a des urls de type javascript, y compris un peu cachée (adfd765c) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 8 février 2026 à 13h27min :

fix: inspecter également le contenu si il y a un attribut formaction

Modifié
inc/texte_mini.php

Détails : fix: inspecter également le contenu si il y a un attribut formaction (18215bcb) · Validations · spip / ecrire · GitLab