[ecrire ↪ feat_env_request] 20 commits

spip/ecrire | 20 commits

Par Cerdic, le 18 août 2026 à 09h00min :

feat: une balise #REQUEST pour accéder aux valeurs postées.
Pour une valeur envoyée en GET ou en POST

  • #REQUEST{x} n’est disponible que dans le squelette de premier niveau ou dans une inclusion avec {env} sinon elle renverra du vide
  • #REQUEST{x} renvoie la valeur avec entites filtrées (< en <, & en &…)
  • #REQUEST*{x} renvoie la valeur brute (mais qui passe dans interdire_scripts)
  • #REQUEST**{x} renvoie la valeur brute sans aucune sécurité

Dans tous les cas #ENV{x} renverra une valeur sanitizée et ne permettra jamais d’avoir la valeur envoyée intacte.
Si on ne s’attends pas à avoir du html dans la variable envoyée, alors il est bien de continuer à utiliser #ENV{x} pour ne pas prendre de risque.

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

Détails : feat: une balise #REQUEST pour accéder aux valeurs postées. (1297c9a5) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 18 août 2026 à 08h58min :

fix: calcul du contexte

Modifié
public/assembler.php

Détails : fix: calcul du contexte (e4cd398a) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 18 août 2026 à 08h58min :

fix: les __request sont stockées dans $Pile[request] et transmises lors des inclusions qui ont un {env}

Modifié
public/balises.php
public/compiler.php

Détails : fix: les __request sont stockées dans $Pile[request] et transmises lors des... (d20fe9c5) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 18 août 2026 à 08h56min :

fix: quand on calcule le contexte, les valeurs qui seront dans #ENV sont anitizées pour ne jamais avoir de valeur malicieuse dans #ENV
Les valeurs brutes sont urlencodees et stockées dans une cle __request pour être lue via une balise #REQUEST dédiée

Refs: Connexion · GitLab

Modifié
public/assembler.php

Détails : fix: quand on calcule le contexte, les valeurs qui seront dans #ENV sont... (370b6811) · Validations · spip / ecrire · GitLab

==============================
Par Matthieu Marcillaud, le 17 août 2026 à 12h03min :

build: Version 4.4.20

Modifié
CHANGELOG.md
inc_version.php
paquet.xml

Détails : build: Version 4.4.20 (74a3d926) · Validations · spip / ecrire · GitLab

==============================
Par Matthieu Marcillaud, le 17 août 2026 à 11h20min :

build: Up spip_version_code

Modifié
inc_version.php

Détails : build: Up spip_version_code (564fdad8) · Validations · spip / ecrire · GitLab

==============================
Par cerdic, le 17 août 2026 à 11h16min :

Merge branch ‹ fix_safe_export_env › into ‹ 4.4 ›

Fonction safe_export_env() pour exporter l’env des inclusions

See merge request spip/ecrire!311

Modifié
public/compiler.php
public/fonctions.php

Détails : Merge branch 'fix_safe_export_env' into '4.4' (b59f1393) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 17 août 2026 à 11h06min :

fix: une fonction safe_export_env() pour exporter l’env de manière un peu sécurisée dans les code d’inclusion

Modifié
public/compiler.php
public/fonctions.php

Détails : fix: une fonction safe_export_env() pour exporter l'env de manière un peu... (c787eae1) · Validations · spip / ecrire · GitLab

==============================
Par marcimat, le 17 août 2026 à 11h06min :

Merge branch ‹ fix_collecteur_php › into ‹ 4.4 ›

Utiliser un collecteur de <?php .. ?>

See merge request spip/ecrire!309

Ajouté
src/Texte/Collecteur/HtmlPhp.php
Modifié
inc/texte_mini.php
public/composer.php
public/sandbox.php
src/Texte/Collecteur/AbstractCollecteur.php
src/Texte/Collecteur/HtmlComment.php
src/Texte/Collecteur/HtmlTag.php
src/Texte/Collecteur/Idiomes.php
src/Texte/Collecteur/Liens.php
src/Texte/Collecteur/Modeles.php
src/Texte/Collecteur/Multis.php

Détails : Merge branch 'fix_collecteur_php' into '4.4' (e053fb66) · Validations · spip / ecrire · GitLab

==============================
Par Matthieu Marcillaud, le 17 août 2026 à 10h37min :

docs: correction et format des options sur les collecteurs

Modifié
src/Texte/Collecteur/AbstractCollecteur.php
src/Texte/Collecteur/HtmlComment.php
src/Texte/Collecteur/HtmlTag.php
src/Texte/Collecteur/Idiomes.php
src/Texte/Collecteur/Liens.php
src/Texte/Collecteur/Modeles.php
src/Texte/Collecteur/Multis.php

Détails : docs: correction et format des options sur les collecteurs (805f463b) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 17 août 2026 à 10h37min :

refactor: utiliser un collecteur PHP plutot qu’une regexp

Modifié
inc/texte_mini.php

Détails : refactor: utiliser un collecteur PHP plutot qu'une regexp (9fc2f858) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 17 août 2026 à 10h37min :

fix: utiliser un collecteur PHP pour echapper le php avant de filtrer un squelette

Refs: Connexion · GitLab

Modifié
public/sandbox.php

Détails : fix: utiliser un collecteur PHP pour echapper le php avant de filtrer un squelette (f5e53d2c) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 17 août 2026 à 10h37min :

fix: utiliser un collecteur PHP pour collecter les balises envois de headers venant de balises SPIP

Refs: Connexion · GitLab

Modifié
public/composer.php

Détails : fix: utiliser un collecteur PHP pour collecter les balises envois de headers venant de balises SPIP (d369f5a4) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 17 août 2026 à 10h37min :

feat: un collecteur de blocs <?php ... ?> dans une page html

Repose sur le parser interne PHP via token_get_all()

Ajouté
src/Texte/Collecteur/HtmlPhp.php

Détails : feat: un collecteur de blocs <?php ... ?> dans une page html (a03a523e) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 17 août 2026 à 10h37min :

feat: si la callback de remplacement renvoi null alors on ne remplace pas l’occurence et on continue

Modifié
src/Texte/Collecteur/AbstractCollecteur.php

Détails : feat: si la callback de remplacement renvoi null alors on ne remplace pas... (66465138) · Validations · spip / ecrire · GitLab

==============================
Par Matthieu Marcillaud, le 16 août 2026 à 23h11min :

fix: Ne pas redéfinir spip_interdire_cache (pouvant arriver sur des traitements longs, spécifiques mysql)

En cas d’erreur sur un traitement long finissant en mysql gone away,
certains cas de figures pouvaient entrer plusieurs fois de suite dans spip_mysql_errno(),
entrainant une erreur sur la redéclaration de la constante spip_interdire_cache.

Closes: #164
(cherry picked from commit 70cc52fe6dc2e6efa29753ec79b6c653bffd7e15)

Modifié
req/mysql.php

Détails : fix: Ne pas redéfinir spip_interdire_cache (pouvant arriver sur des... (7d39c258) · Validations · spip / ecrire · GitLab

==============================
Par Matthieu Marcillaud, le 12 août 2026 à 11h18min :

build: Version 4.4.19

Modifié
CHANGELOG.md
inc_version.php
paquet.xml

Détails : build: Version 4.4.19 (caf95af2) · Validations · spip / ecrire · GitLab

==============================
Par marcimat, le 12 août 2026 à 10h46min :

Merge branch ‹ fix_version_installee › into ‹ 4.4 ›

fix: si pas de meta version_installee déclencher un upgrade à partir d’une version arbitraire

See merge request spip/ecrire!306

Modifié
base/upgrade.php
index.php

Détails : Merge branch 'fix_version_installee' into '4.4' (6a36c15a) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 12 août 2026 à 09h59min :

fix: si pas de meta version_installee déclencher un upgrade à partir d’une version arbitraire

Modifié
base/upgrade.php
index.php

Détails : fix: si pas de meta version_installee déclencher un upgrade à partir d'une version arbitraire (314967f4) · Validations · spip / ecrire · GitLab

==============================
Par marcimat, le 12 août 2026 à 08h21min :

Merge branch ‹ fix_timeout_update › into ‹ 4.4 ›

fix: ne pas timeout sur l’update des signature de jobs

See merge request spip/ecrire!301

Modifié
maj/2026.php

Détails : Merge branch 'fix_timeout_update' into '4.4' (7611ebc0) · Validations · spip / ecrire · GitLab