Librairies obsolètes #4415

Closed
opened 1 year ago by marcimat · 12 comments
marcimat commented 1 year ago
Owner

Les librairies utilisées derrières sont obsolètes.

Notamment la lib/ pcltar contient des instructions qui font des fatales en PHP 8, tel que $g_pcl_trace_entries[$i][name] = "";name n’est pas une constante.

Les librairies utilisées derrières sont obsolètes. Notamment la lib/ pcltar contient des instructions qui font des fatales en PHP 8, tel que `$g_pcl_trace_entries[$i][name] = "";` où `name` n’est pas une constante.
Owner

morbleu

morbleu
Eric commented 1 year ago
Owner

On est en 2.8.2 pour Pclzip et je vois le log sur github:

Version 2.8.4 :

  • Update composer.json to indicate that pclzip/pclzip is replaced

Version 2.8.3 :

  • Fix compatibility with PHP v7.1

Donc coté compatibilité c'est pas très rassurant.

Pour Pcltar je ne trouve même pas la librairie.

On est en 2.8.2 pour Pclzip et je vois le log sur github: Version 2.8.4 : - Update composer.json to indicate that pclzip/pclzip is replaced Version 2.8.3 : - Fix compatibility with PHP v7.1 Donc coté compatibilité c'est pas très rassurant. Pour Pcltar je ne trouve même pas la librairie.
Owner

quel log ?

quel log ?
Eric commented 1 year ago
Owner

Celui-là qui est le mainteneur il me semble (phpconcept.net) : https://github.com/chamilo/pclzip

Celui-là qui est le mainteneur il me semble (phpconcept.net) : https://github.com/chamilo/pclzip
Owner

faudrait s'appuyer sur la classe ci dessous pour remplacer pcltar :

faudrait s'appuyer sur la classe ci dessous pour remplacer pcltar : * https://www.php.net/manual/en/class.phardata.php * https://www.php.net/manual/en/phar.constants.php
Poster
Owner

Donc sinon il semble que https://www.php.net/manual/fr/class.phardata.php puisse nous satisfaire (indiqué par James) car ça gère les zip et les tar…

Donc sinon il semble que https://www.php.net/manual/fr/class.phardata.php puisse nous satisfaire (indiqué par James) car ça gère les zip et les tar…
Eric commented 1 year ago
Owner

faudrait s'appuyer sur la classe ci dessous pour remplacer pcltar :

Je dirais même qu'il faudrait l'utiliser pour remplacer Tar et Zip. Par contre, ça nécessite une communication vers les plugins pour une mise à jour.
Après, je ne me rappelle plus si on a une API complète dans archiviste relativement aux besoins des plugins.

> faudrait s'appuyer sur la classe ci dessous pour remplacer pcltar : > > * https://www.php.net/manual/en/class.phardata.php > * https://www.php.net/manual/en/phar.constants.php > Je dirais même qu'il faudrait l'utiliser pour remplacer Tar et Zip. Par contre, ça nécessite une communication vers les plugins pour une mise à jour. Après, je ne me rappelle plus si on a une API complète dans archiviste relativement aux besoins des plugins.
Poster
Owner

Il faudra certainement nécessiter l’extension php ext-zip parce que https://www.php.net/manual/fr/class.ziparchive ou PharData en ont besoin pour gérer les zips.

Il faudra certainement nécessiter l’extension php `ext-zip` parce que https://www.php.net/manual/fr/class.ziparchive ou PharData en ont besoin pour gérer les zips.
Owner

et ext-zip n'est pas préinstallée par défaut, ni dans les images officielles docker de PHP, ni sur debian...

Requérir cette extension est un Breaking Change. Donc, pas trop conseillé de le faire sur une release mineure... Mais pour SPIP5, ce serait une bonne idée.

Bref, PharData pour les tar et les gz, oui, c'est un bon remplacement de PclTar qui peut être fait pour une 4.1, si les tgz sont encore très utilisés.

Pour PclZip, soit on trouve un remplaçant pas trop lourd (sans autre lib php requise), mais ça court pas les rues, soit on corrige notre version...

et `ext-zip` n'est pas préinstallée par défaut, ni dans les images officielles docker de PHP, ni sur debian... Requérir cette extension est un Breaking Change. Donc, pas trop conseillé de le faire sur une release mineure... Mais pour SPIP5, ce serait une bonne idée. Bref, PharData pour les tar et les gz, oui, c'est un bon remplacement de PclTar qui peut être fait pour une 4.1, si les `tgz` sont encore très utilisés. Pour PclZip, soit on trouve un remplaçant pas trop lourd (sans autre lib php requise), mais ça court pas les rues, soit on corrige notre version...
Owner

Celui-là qui est le mainteneur il me semble (phpconcept.net) : https://github.com/chamilo/pclzip

🙂

> Celui-là qui est le mainteneur il me semble (phpconcept.net) : https://github.com/chamilo/pclzip > * https://github.com/ivanlanin/pclzip (référencé sur packagist) * https://github.com/phpconcept/PclZip (surement Vincent) * https://github.com/search?q=pclzip * ... 🙂
Eric commented 1 year ago
Owner

Ah oui cool, si je prends celui de phpconcept dont on peut estimer que c'est l'original il est ne 2.8.3 marqué compatible et testé PHP 7.3.
C'est mieux mais loin de PHP 8 ou 8.1.

Ah oui cool, si je prends celui de phpconcept dont on peut estimer que c'est l'original il est ne 2.8.3 marqué compatible et testé PHP 7.3. C'est mieux mais loin de PHP 8 ou 8.1.
Poster
Owner

Juste pour dire que le mini-sondage https://discuter.spip.net/t/mini-sondage-sur-quelques-extensions-php-7-4-zip-zlib-phar-curl/157817 indique pour le moment que TOUS les hébergements >= 7.4 ont ZIP, ZLIB, PHAR et CURL.

Donc a priori, on n’a pas d’inquiétude à avoir de ce côté là.

Juste pour dire que le mini-sondage https://discuter.spip.net/t/mini-sondage-sur-quelques-extensions-php-7-4-zip-zlib-phar-curl/157817 indique pour le moment que TOUS les hébergements >= 7.4 ont ZIP, ZLIB, PHAR et CURL. Donc a priori, on n’a pas d’inquiétude à avoir de ce côté là.
JamesRezo closed this issue 1 year ago
JamesRezo referenced this issue from a commit 1 year ago
Sign in to join this conversation.
No Milestone
No Assignees
4 Participants
Notifications
Due Date

No due date set.

Dependencies

This issue currently doesn't have any dependencies.

Loading…
There is no content yet.