[spip ↪ issue_5095] 20 commits

spip/spip | 20 commits

Par Matthieu Marcillaud, le 21 novembre 2024 à 11h26min :

tests: Add tests for Serializer

Report adapté de

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

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

==============================
Par Cerdic, le 21 novembre 2024 à 11h26min :

fix: mauvais nom de variable

Modifié
ecrire/src/Utils/Serializer.php

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

==============================
Par Cerdic, le 21 novembre 2024 à 11h26min :

fix: typo dans l’option allowed_classes

Modifié
ecrire/src/Utils/Serializer.php

Détails : fix: typo dans l'option allowed_classes (69402af3) · Validations · spip / spip · GitLab

==============================
Par Cerdic, le 21 novembre 2024 à 11h26min :

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é
ecrire/src/Utils/Serializer.php

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

==============================
Par Cerdic, le 21 novembre 2024 à 11h26min :

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

Modifié
ecrire/inc/config.php

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

==============================
Par Cerdic, le 21 novembre 2024 à 11h26min :

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é
ecrire/src/Utils/Serializer.php

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

==============================
Par Cerdic, le 21 novembre 2024 à 11h26min :

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

Ajouté
ecrire/src/Utils/JsonSerializer.php

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

==============================
Par Cerdic, le 21 novembre 2024 à 11h26min :

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
composer.lock

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

==============================
Par Maïeul Rouquette, le 21 novembre 2024 à 10h57min :

remove: balise #LARGEUR_ECRAN

Modifié
ecrire/public/balises.php

Détails : remove: balise `#LARGEUR_ECRAN` (c4c6d9c8) · Validations · spip / spip · GitLab

==============================
Par tcharlss, le 21 novembre 2024 à 10h50min :

feat: balise #LAYOUT_PRIVE en remplacement de #LARGEUR_ECRAN

La balise va servir à choisir des dispositions d’écran, et non pas uniquement des largeurs.
L’ancienne balise reste fonctionnelle mais elle est dépréciée.

Refs: #5560

Modifié
ecrire/public/balises.php
ecrire/public/fonctions.php

Détails : feat: balise `#LAYOUT_PRIVE` en remplacement de `#LARGEUR_ECRAN` (9fa0cd32) · Validations · spip / spip · GitLab

==============================
Par touti, le 20 novembre 2024 à 16h38min :

feat: Pouvoir indiquer une qualification sur les actions ajouter_lien & supprimer_lien

Fix: #5933

Modifié
ecrire/action/ajouter_lien.php
ecrire/action/supprimer_lien.php

Détails : feat: Pouvoir indiquer une qualification sur les actions `ajouter_lien` & `supprimer_lien` (526f5769) · Validations · spip / spip · GitLab

==============================
Par Maïeul Rouquette, le 20 novembre 2024 à 15h06min :

docs(upgrade 5.0): spip/prive#1

Modifié
UPGRADE_5.0.md

Détails : docs(upgrade 5.0): spip/prive#1 (de39a39c) · Validations · spip / spip · GitLab

==============================
Par Maïeul Rouquette, le 20 novembre 2024 à 11h28min :

remove: phraser_boucle_placeholder() et public_generer_boucle_placeholder()

Modifié
ecrire/public/phraser_html.php

Détails : remove: `phraser_boucle_placeholder()` et `public_generer_boucle_placeholder()` (d3c9f54f) · Validations · spip / spip · GitLab

==============================
Par Maïeul Rouquette, le 20 novembre 2024 à 11h22min :

docs(phpdoc): sur phraser_placeholder_memoriser_ou_reinjecter()

Modifié
ecrire/public/phraser_html.php

Détails : docs(phpdoc): sur `phraser_placeholder_memoriser_ou_reinjecter()` (e3223714) · Validations · spip / spip · GitLab

==============================
Par Maïeul Rouquette, le 20 novembre 2024 à 11h20min :

docs: commentaire redondant avec PHPdocs

Modifié
ecrire/public/phraser_html.php

Détails : docs: commentaire redondant avec PHPdocs (1215f2da) · Validations · spip / spip · GitLab

==============================
Par Maïeul Rouquette, le 20 novembre 2024 à 11h18min :

style: or||

Modifié
ecrire/public/balises.php
ecrire/public/phraser_html.php

Détails : style: `or` -> `||` (0f0ea8a5) · Validations · spip / spip · GitLab

==============================
Par Maïeul Rouquette, le 20 novembre 2024 à 11h17min :

docs(phpdoc): .....

Modifié
ecrire/public/balises.php

Détails : docs(phpdoc): `..` -> `...` (af7cb1ee) · Validations · spip / spip · GitLab

==============================
Par Cerdic, le 20 novembre 2024 à 11h12min :

refactor: separer les 2 usages de #TRAD :

  • la balise #TRAD a usage public utilise une syntaxe avec #ARRAY en second argument et 3eme argument optionnel
  • la balise #TRAD_IDIOME a usage interne uniquement supporte la syntaxe type #INCLURE pour faciliter la conversion par le compilateur
    Refs: !5633

Modifié
ecrire/public/balises.php
ecrire/public/phraser_html.php
ecrire/tests/Squelettes/Idiomes/IdiomesTest.php

Détails : refactor: separer les 2 usages de `#TRAD` : (a67888c4) · Validations · spip / spip · GitLab

==============================
Par Cerdic, le 20 novembre 2024 à 11h12min :

refactor: mutualiser le calcul du placeholder unique dans une fonction phraser_placeholder_hash()

Modifié
ecrire/public/phraser_html.php

Détails : refactor: mutualiser le calcul du placeholder unique dans une fonction `phraser_placeholder_hash()` (ebcc0cbb) · Validations · spip / spip · GitLab

==============================
Par Cerdic, le 20 novembre 2024 à 11h12min :

refactor: 2 fonctions phraser_placeholder_memoriser() et phraser_placeholder_reinjecter() pour simplifier la lecture du code,
qui appellent la fonction interne phraser_placeholder_memoriser_ou_reinjecter() + retablir les fonctions phraser_boucle_placeholder() et public_generer_boucle_placeholder() en deprecated

Modifié
ecrire/public/phraser_html.php

Détails : refactor: 2 fonctions `phraser_placeholder_memoriser()` et... (83e6867d) · Validations · spip / spip · GitLab