Zip, une extension pour zipper des extensions ou des thèmes de Dotclear 2
Par Moe le samedi 8 septembre 2007, 02:35 - Site / Dév - Lien permanent
TagsMise à jour du 18-02-2008
la dernière version du plugin Packager permet de créer des fichiers zip, Packager remplace donc le plugin Zip qui ne sera plus mis à jour. Vous pouvez télécharger Packager sur bricoland drive.
Cette extension permet de créer et d'installer des archives zip des thèmes ou des extensions. Une version ultérieure permettra peut-être l'installation à partir de fichiers zip, je dois regarder les fonctions ZIP de PHP de plus près pour cela.
Les fonctions utilisées par cette extension ne sont pas présentes sur toutes les installations de PHP, cette extension ne fonctionnera malheureusement pas chez tout le monde ... Voici un test pour savoir si ces fonctions sont disponibles ou non :
<?php if (class_exists('ZipArchive')) { echo('Class ZipArchive is available \o/'); } else { echo('Class ZipArchive isn\'t available :('); } ?>
Ce test est disponible ci-dessous en pièce jointe, dans une archive zip (!). Ce test est aussi effectué par l'extension une fois installée et elle affiche une erreur si la classe n'est pas disponible.
Il est prévu que Dotclear 2 utilise des fichiers .zip et non des paquetages .pkg.zg comme on peut le voir dans ce ticket. Ceci implique de créer une libraire zip, néanmoins il existe déjà une librairie lib.zip.php sous licence GPL. Un portage me semble être hors de mes capacités.
Changements de versions :
- 1.1 (08-09-2007)
- possibilité d'installer des extensions ou des thèmes issus de fichiers zip
- 1.2 (16-02-2008)
- désormais Dotclear utilise des fichiers zip pour les paquetages des plugins et des thèmes :
- les fichiers zip créés sont conformes
- on peut choisir de créer des zip quand on utilise Packager ou créer les anciens packages quand on utilise Zip
- ce plugin n'installe plus de plugins car Dotclear le fait
- il ne peut plus y avoir d'onglet dans l'interface des extensions (ça marchait mal et ça n'apportait pas grand chose)
- passage sous licence GPL
- 1.3 (18-02-2008)
- possibilité d'ignorer les fichiers ou répertoires en définissant une liste de mots interdits (idée de Sacha)
- utilisation de
files::getDirListà la place d'une fonction récursive
Créé grâce aux plugins langOmatic et Packager. Merci à Manu2.07 pour ses conseils.
Copyright 2007 Moe (http://gniark.net/)
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.



Commentaires
Je l'ai testé chez OVH sur un 720Plan et cela n'a pas l'air de fonctionner :(
(idem en local sur wamp)
Plus qu'a attendre une bonne ame qui crée une lib.zip
Enfin les pkg ne me gênent pas mais si la direction de dotclear va vers zip...
Je suis chez Free et j'ai droit à ça :
Si je comprends bien, il n'y a rien à faire...
Non, il n'y a rien à faire, à moi de pouvoir modifier l'installation de PHP.
Moe,
Je n'ai pas eu le temps de regarder de près, mais est-ce que ton plugin pourrait (sinon est-il envisageable de le faire) éliminer les dossier .svn, CVS, Thumbs.db, etc. de l'archive créée ?
Merci ;)
Adopté depuis la récente svn :)
Merci.
Sacha : c'est possible avec la version 1.3 qui ignore les fichiers ou dossiers suivants : CVS Thumbs.db __MACOSX .DS_Store .svn
Merci... Même si comme toi, j'ai lu le message de Pep à propos de la nouvelle version de Packager qui remplace ton plugin.