web-dev-qa-db-fra.com

GPL et plugins

Le centre de développeurs de plugins indique "Votre plugin doit être compatible avec GPLv2.". Mais j'ai trouvé que le plugin Topsy est sous GPLv3. http://www.gnu.org/licenses/rms-why-gplv3.html indique que GPLv2 et GPLv3 sont incompatibles. Donc, cela devrait-il être autorisé? Je veux utiliser du code du plugin Topsy. Alors, devrais-je libérer mon plugin sous GPLv2 ou GPLv3 ??

3
User

Si vous suivez les règles (vous ne voulez jamais commencer par les casser ), le plug-in WordPress que vous écrivez et que vous soumettez au référentiel doit être sous licence GPLv2. Il y a eu une tempête de discussions au cours de l'année écoulée, car l'exemple de fichier Lisez-moi, à tort, disait "GPL, version 2 ou toute version ultérieure" ... c'est pourquoi certains plug-ins sont passés par la route GPLv3.

Une fois, il a été signalé que les plug-ins devaient faire l'objet d'une licence pour la version 2 afin de se conformer à la licence de WordPress Core, de nombreux plug-ins ayant une nouvelle licence. vers la version 2 et plusieurs refusant ont été retirés du référentiel. Malheureusement, quelques-uns ont volé sous le radar et ont raté la mise à jour.

Ma suggestion serait de:

  1. Contactez les développeurs de Topsy et demandez-leur de relancer le plug-in ou de vous donner la permission explicite d'utiliser une partie de leur code et d'octroyer une licence pour votre publication sous GPLv2.
  2. Attendez d’obtenir l’affirmation de Topsy avant d’utiliser leur code dans votre propre système.

Techniquement , Topsy enfreint la licence principale de WordPress, et il incombe à la WordPress Foundation de poursuivre dans cette voie (et non la vôtre). Cependant, pour vous assurer de garder votre propre code en conformité et d'éviter toute répercussion légale s'ils poursuivaient l'action en justice contre Topsy, vous devez soit obtenir l'autorisation d'utiliser le code de manière appropriée ou trouver quelque chose d'autre avec lequel travailler.

Mettre à jour

Après de nombreuses discussions par e-mail, sur des forums, sur IRC et sur Trac, l'équipe principale a précisé que tous les plug-ins hébergés dans le référentiel WP doivent être concédés sous une licence compatible avec GPLv2 . . Cela signifie que, pour la plupart, vos plugins doivent être explicitement GPLv2 ou GPLv2 + ("ou toute version ultérieure").

Ceci afin d'éviter la possibilité de faire rouler accidentellement du code de plugin dans le noyau. Core est explicitement concédé sous licence GPLv2 +. Par conséquent, tout code intégré au projet doit pouvoir être concédé sous licence de la même manière.

Cependant, vous pouvez toujours utiliser la licence GPLv3 pour vos plugins hébergés de manière privée. Ceci est toujours compatible avec les stipulations de base de "ou toute version ultérieure" tout en restant séparé (puisqu'il n'est pas hébergé au même endroit).

4
EAMann

Ceci a été clarifié ici: http://core.trac.wordpress.org/browser/trunk/license.txt WordPress Core est GPLv2 +

L'exigence de repo "Votre plugin doit être compatible GPLv2" est arbitraire et ne repose sur aucune conséquence en termes de licence. En outre, cela s'applique uniquement à l'hébergement du plug-in sur le dépôt wordpress.org, pas à déterminer si le plug-in est légal ou non. Un plugin GPLv3 n'est pas "faux" ou ne viole aucune licence. (On répond donc à la première partie de votre question.)

(Il existe une clause spécifique dans la GPL elle-même qui dit que si vous ne limitez pas spécifiquement et explicitement les termes à une version particulière, elle est implicitement "évolutive". La version de la licence liée n'est pas une limite spécifique ou explicite à cet égard.)

Si vous utilisez les codes GPLv2 + (et non "GPLv2 uniquement") et le code GPLv3, vous devez libérer le code GPLv3, si vous le libérez.

Concernant votre question: Si vous utilisez une partie de Topsy , votre code doit être publié GPLv3 (et éventuellement ultérieurement) si vous le publiez.

Mise à jour: WordPress.org vous permet d'héberger des plugins GPLv3 dans leur dépôt maintenant (depuis au moins mai 2012).

https://make.wordpress.org/plugins/2012/05/11/cross-posted-from-the-main-development-blog-the/

3
WraithKenny

Bonne question. Techniquement, GPLv3 n'est pas compatible avec GPv2. Si vous prenez la position de Matt Mullenweg, alors les plugins de Topsy sont faux. J'imagine que si Matt savait qu'il extrairait les plug-ins de Topsy du référentiel jusqu'à ce qu'ils les redéfinissent via GPLv2.

Cependant, vous ne pouvez pas forcer Topsy à se redonner une licence (bien que vous puissiez le lui demander; cela pourrait être le meilleur choix.) En ce qui concerne " Devrait-il être autorisé? "La question est" Qui ferait le refus? "Les seuls qui pourraient le refuser seraient quelqu'un qui poursuivrait Topsy pour le changer. Bien sûr, Matt pourrait exercer une pression marketing en le tirant du référentiel de plug-ins. Mais à moins que et/ou jusqu'à ce que l'une de ces choses se produise ...

Donc, vous êtes dans un endroit difficile. Vous ne pouvez pas vraiment utiliser le code Topsy sans octroyer de licence à la GPLv3. Sinon, vous ne pouvez pas vraiment créer de plug-in WordPress car il ne serait pas compatible avec la GPLv2 (selon l'interprétation de Matt de la GPLv2.)

OTOH, et ce n'est pas un conseil seulement me pontifier, vous pouvez probablement ignorer les préoccupations de la GPLv3, utiliser le code de Topsy et laisser les puces tomber où elles peuvent . Il est très peu probable que vous soyez poursuivi en justice ou même que quelqu'un se plaint de l'avoir été à moins que de l'argent ne soit attribué à votre plugin. Je suppose que cela ne serait pas le cas? Et si vous obteniez un cesser-et-s'abstenir de Topsy, Matt deviendrait certainement votre allié et mettrait la pression du marché sur Topsy. Au moins, ce serait ma supposition. :)

2
MikeSchinkel

GPL indique que si votre code a besoin du noyau d'origine pour s'exécuter, il doit suivre la même licence.

Cependant, si vous divisez votre code en deux parties, une qui exécute la fonctionnalité principale (et qui peut idéalement être utilisée avec n’importe quel framework, un peu comme une bibliothèque), et la seconde qui interagit avec wordpress et votre bibliothèque, vous pouvez utiliser la licence de votre choix. Seule la partie avec wordpress doit suivre la même licence.

Un bon exemple est que Google Reader utilise le flux (qui est une API), mais comme il s’agit d’un fichier binaire séparé, il peut utiliser n’importe quelle licence.

2
Sudhanshu