In this article
La licence AGPL est-elle le bon choix pour vos projets open source ?
Les développeurs pensent souvent que les exigences en matière de licences logicielles relèvent exclusivement du service juridique. Étant donné le grand nombre de composants open source disponibles et les conséquences des exigences liées aux licences, chaque développeur devrait au moins comprendre les principes généraux de ces licences et leur impact sur ses logiciels.
Compte tenu des conséquences qu’un projet peut avoir en aval, chaque équipe doit examiner toutes les exigences de licence applicables à ses logiciels. Avant de publier une version mise à jour ou modifiée d’un logiciel, les organisations doivent effectuer un audit complet de conformité des licences. Le faire à chaque étape du projet permet d’éviter des problèmes par la suite. La licence publique générale GNU Affero (AGPL) est l’une des licences que les équipes devraient examiner.
Qu’est-ce que l’AGPL ?
Avant d’aborder la licence AGPL, il est important de comprendre ses origines. En 1988, Richard Stallman a rédigé sa licence publique générale (GPL) afin de garantir le droit des créateurs à garder leurs logiciels open source en permanence. La GPL en est actuellement à sa troisième version (GPLv3), après que des lacunes dans le texte précédent ont créé certaines failles.
Dans le cadre de la GPLv3, la Free Software Foundation (FSF) a proposé deux autres types de licences : la licence publique générale limitée (LGPLv3) et la licence publique générale Affero (AGPLv3). La version AGPL de la licence publique générale vise à appliquer pleinement le principe du copyleft à tous les logiciels qui l’utilisent.
Quels sont les avantages et les inconvénients de la licence AGPL ?
Avec la licence GPL standard, la clause de réciprocité s’applique dès qu’un développeur publie un logiciel. Le principe du copyleft vise à rendre tout le code source accessible à l’ensemble de la communauté open source. Avec l’AGPL, les équipes logicielles peuvent s’assurer que toutes les modifications apportées au code source sont rendues publiques, y compris pour les applications côté serveur.
Pour déterminer si l’AGPL 3.0, la LGPL 3.0 ou la GPL 3.0 standard convient le mieux à l’équipe, il faut tenir compte de l’objectif final du logiciel. Les licences copyleft sont idéales pour les développeurs qui souhaitent que toutes les modifications ultérieures soient accessibles à la communauté. Les licences permissives, comme la licence MIT, offrent davantage de liberté pour rendre des modifications propriétaires à l’avenir.
Voici quelques avantages de l’AGPL :
Elle oblige les équipes à réfléchir tôt à leur philosophie en matière de licences et à assumer leur décision.
Elle garantit que tout extrait de code créé par la communauté open source reste accessible et empêche d’autres personnes de reconditionner et de vendre des logiciels open source.
Les inconvénients de l’AGPL :
Elle peut dissuader certaines équipes d’utiliser des packages open source, car elle impose que tout le code associé soit soumis à la GPL.
Certains la jugent excessive, car tout module d’un package dépendant qui utilise l’AGPL soumet les autres logiciels à des restrictions similaires.
Elle prive les équipes de la possibilité de rendre leur logiciel propriétaire à l’avenir.
Les entreprises peuvent-elles utiliser des logiciels sous AGPL ?
Bien que tout le monde puisse utiliser la licence AGPL V3, celle-ci n’est pas populaire auprès des organisations. Les restrictions imposées aux versions ultérieures des logiciels sous AGPL rendent leur adoption difficile lorsque des intérêts commerciaux concurrents sont en jeu.
La plupart des entreprises préfèrent les licences permissives, qui leur permettent d’utiliser des composants open source tout en gardant la possibilité de transformer leur version du logiciel en produit commercial. C’est l’inverse avec une licence copyleft comme l’AGPL.
Qu’est-ce qu’une licence copyleft ?
Les licences copyleft appliquent un principe défendu pour la première fois par Stallman dans son manifeste GNU. Dans les années 1960, les développeurs partageaient couramment et librement tout code source utile à d’autres, ce qui a favorisé un esprit de communauté et de collaboration. Dans les années 1980, cette tendance s’est essoufflée lorsque les organisations ont commencé à appliquer des droits d’auteur à leur code source. Le copyleft est l’opposé du copyright : il garantit le droit d’utiliser, de modifier et de redistribuer tout code source couvert par une licence copyleft comme la GPL.
Peut-on utiliser l’AGPL avec des applications à code source fermé ?
La licence AGPL V3 est une licence copyleft forte qui impose l’open source à tous les composants dérivés d’un travail antérieur. Elle comble la faille concernant les applications côté serveur, pour lesquelles le code source n’est pas rendu disponible si le logiciel n’est pas publié. L’AGPL considère comme utilisateur toute personne qui accède à une application côté serveur accessible au public. Pour les applications hébergées sur le réseau interne d’une organisation, l’AGPL n’impose pas la publication du code source.
La licence AGPLv3 est-elle compatible avec la GPLv3 ?
Les utilisateurs qui combinent des travaux sous licence GPLv3 avec des logiciels sous AGPL peuvent conserver les droits associés à la GPLv3 sur les travaux non modifiés. Toute version modifiée du travail sous GPLv3 devra utiliser la licence AGPLv3.
En raison de ses exigences radicales en matière de licences open source, l’AGPL n’est actuellement utilisée que dans moins de 1 % des projets open source.
Assurez une gestion efficace de la conformité des licences avec Snyk
Snyk peut aider les équipes qui doivent assurer une maîtrise efficace de leur conformité aux licences. Notre outil de gestion des licences conçu pour les développeurs offre une vue claire des packages et des dépendances présents dans leur code source. En aidant les développeurs à comprendre et à gérer la conformité des licences, cet outil évite au projet de rencontrer des problèmes imprévus. Avec la solution de gestion de la conformité des licences de Snyk, vous pouvez vous assurer que tous les composants dérivés de travaux open source sont compatibles avec les exigences de licence de votre entreprise.
Pour découvrir comment Snyk peut aider vos équipes à gérer les licences AGPL version 3,planifiez une démo ou commencez votre essai gratuit dès aujourd’hui.
Lancez-vous dans les compétitions Capture The Flag
Apprenez à résoudre des défis de capture du drapeau en regardant à la demande notre atelier virtuel d’initiation.