Faire un fork de piwigo ?
Par Nicolas le vendredi 9 septembre 2011, 20h48 - Développement - Lien permanent
Un énorme avantage d'un logiciel libre est que sa licence permet le fork. Mais est-ce une bonne idée de faire un fork ?
Pendant plusieurs années j'ai contribué à Piwigo. Pour diverses raisons, je me suis un peu éloigné de l'équipe. Je maintiens tout de même le package debian de piwigo, ainsi que celui de pLoader.
Je continue à faire évoluer piwigo dans mon coin, soit par l'intermédiaire de plugins, soit par des modifications dans le code. Personne n'en profite mis à part ma galerie photos personnelle ! Une évolution de piwigo qui me tenait particulièrement à cœur était la gestion multi-bases. On pouvait au choix utiliser MySQL, PostgreSQL ou SQLite.
Les changements ne sont pas encore dans une version publique mais déjà quelques commits (Juste MySQL à l'installation, Optimisation pour MySQL, ...) dans le gestionnaire de version montrent clairement que le changement est programmé. La prochaine version de piwigo ne fonctionnera plus qu'avec MySQL.
Le fait de rendre piwigo compatible avec plusieurs bases de données n'a pas nécessairement était fait dans les règles de l'art. Il aurait été plus simple d'utiliser une abstraction de base de données telle que PDO. Mais quoi qu'il en soit, je pense qu'avoir fait cette pseudo abstraction aurait pu améliorer la partie d'accès aux données. Confronter un logiciel à des environnements différents et hétérogène ne peut que le rendre meilleur.
Depuis que j'ai fait cette abstraction, j'utilise piwigo avec PostgreSQL pour ma galerie photos et je n'ai pas rencontré de problèmes majeurs. Je continuerais à faire évoluer ma galerie dans mon coin. La question que je me pose : est-ce que je rends mes modifications ou évolutions publiques ? En clair, est-ce que je crée un fork de Piwigo ?
Commentaires
Pour avoir essayé d'utiliser Piwigo avec PostgreSQL et m'être confronté aux très nombreux couacs de celui ci, si une version de Piwigo supportant totalement PostgreSQL est disponible, tu peux être sûr que je l'utiliserai. :)
@mathieu : puis-je avoir une idée des "couacs" que tu as rencontrés ?
C'était des erreurs au moment d'effectuer certains opérations batch, je ne sais plus exactement lesquelles, l'erreur qui était sortie était :
ERREUR: erreur de syntaxe sur ou près de « ) » LINE 5: WHERE id IN () ^ in /include/dblayer/functions_pgsql.inc.php on line 193
Et donc comme j'ai lu que le support de PostgreSQL était expérimental, j'ai abandonné là. En parcourant le tracker de Piwigo, je ne suis finalement pas certain que l'erreur vienne directement de PostgreSQL.