Evolution #3819
Pouvoir demander un module PHP dans paquet.xml
0%
Description
Actuellement, paquet.xml permet de requérir un plugin SPIP.
Par contre il n'est pas possible de dire qu'il y a besoin d'un module php particulier (par exemple curl pour le plugin twitter).
ne pourrait-on pas ajouter une balise qui conditionnerait l'activation d'un plugin à l'existence d'un module (à l'aide de la fonction get_loaded_extensions) ?
History
#1
Updated by marcimat 🌻 about 4 years ago
Oué, on vient d'avoir une surprise aussi en changeant de serveur, il manquait Soap pour un plugin.
Peut être qu'une écriture telle que <necessite nom="php:soap">
pourrait le faire ?
#2
Updated by Maïeul Rouquette about 4 years ago
ca me paraît bien comme syntaxe. Faudra juste pas oublier de packporter dans toutes les branches maintenues, histoire qu'on puisse quand même installer le plugin partout.
#3
Updated by marcimat 🌻 about 4 years ago
- File necessite_php_lib.patch View added
Hum ça ça n'ennuie plus de backporter par contre.
Par ailleurs ce n'est pas compliqué à intégrer. Ci-joint un patch rapide.
J'ai testé en mettant dans z-core :
- <necessite nom="php:curl" />
OK
- <necessite nom="php:CURL" />
OK
- <necessite nom="php:curly" />
Pas OK (normal)
- Impossible d’activer le plugin ../plugins/zone/z-core
- Nécessite le plugin PHP:CURLY
- Le plugin Z-core dépend de PHP [8.0;]
Donc il faudrait ajouter une chaine de langue pour les extensions PHP aussi je suppose.
#4
Updated by Maïeul Rouquette about 4 years ago
Il faudrait a minima que 3.0 et 3.1 l'ait (ou alors il faut que les plugins pensent à dire "cette partie là des nécessites est conditionné à une version de SPIP")
#5
Updated by marcimat 🌻 about 4 years ago
Oui mais…
1) c'est pas une correction de bug à proprement parler, et
2) ça fait ajouter une chaine de langue (or on en n'ajoute qu'en 3.2)
#6
Updated by Maïeul Rouquette about 4 years ago
ok, bah on n'utilisera pour une fois la balise <spip>
#7
Updated by marcimat 🌻 about 4 years ago
<necessite nom="php:curly" compatibilite="[8.0;]" />
j'obtiens :
- Le plugin Z-core dépend de PHP:CURLY [8.0;]
Ce qui est déjà lisible sans chaîne de langue en plus. C'est juste si tu mets pas de version que c'est étrange du coup.
Pour une extension php ça sera le cas le plus fréquent d'ailleurs.
#8
Updated by marcimat 🌻 about 4 years ago
En fait il y a 2 textes d'erreurs différents.
- 1 dans SPIP si le plugin est déjà actif et que ses dépendances ne deviennent plus satisfaites («Nécessite le plugin PHP:CURLY en version ≥ 8.0.»)
- 1 dans SVP lorsqu'on tente d'activer le plugin («Le plugin Z-core dépend de PHP:CURLY [8.0;]»)
#9
Updated by marcimat 🌻 about 4 years ago
Première partie avec r23396
#10
Updated by marcimat 🌻 about 4 years ago
- Status changed from Nouveau to Fermé
- Resolution set to fixed
Seconde partie avec https://zone.spip.org/trac/spip-zone/changeset/102745
Je pense que c'est bon. À tester.
#11
Updated by b b over 3 years ago
Heu, je viens de réaliser que cette modification permet de connaître pas mal de choses sur la machine qui héberge le site, exemple :
https://www.spip.net/local/config.txt
Et on retrouve une partie de ces infos dans le header des pages forcément.
Si l'admin d'une machine la configure pour qu'elle utilise des header silencieux en mode prod, cela ne servira presque à rien puisque SPIP va tout dévoiler sur la config PHP. Peut-être faudrait-il exclure ces infos d'une manière ou d'une autre, non ?
#12
Updated by marcimat 🌻 over 3 years ago
Ah… Zut ! C'est nul effectivement !
#13
Updated by marcimat 🌻 over 3 years ago
Bon, r23604 tord le cou à ce problème. Merci du signalement b_b :)