adimas - Fotolia
Redis Labs bride le caractère open source de ses modules (et les fournisseurs de cloud sont ciblés)
La société qui commercialise une édition entreprise de Redis ne veut plus faciliter la tâche des fournisseurs de cloud faisant commerce de ses modules gratuitement, sans même les modifier. En ajoutant des clauses limitatives, il veut monnayer ses développements, mais perd au passage une partie de son caractère open source.
Rififi de fin d’été dans la communauté open source. Redis Labs, société commerciale derrière la base de données clé/valeur open source Redis , a fait le choix de modifier les termes de la licence qui encadrait jusqu’alors les modules annexes à la technologie, en limitant les possibilités commerciales. D’une licence AGPL (Affero GPL) ces modules, qui apportent des fonctions supplémentaires à la base Redis, se retrouvent désormais régis par une licence certes open source (la licence Apache 2.0), mais bridée par des clauses limitatives, définies par les Common Clauses. Ces modules greffent des fonctions de recherche plein texte, ajoutent un index secondaire à la base (RediSearch), apportent un moteur de graphes (Redis Graph), le format JSON (ReJSON), des types de données (ReBloom) et des composants de Machine Leaning (Redis-ML). A ce jour, le cœur Redis est toujours encadré par une licence open source BSD.
En fait, ces clauses, définies à l’origine par des éditeurs open source, constituent « un premier pas pour amorcer des discussions sur l’état de l’open source moderne », est-il mentionné. En ajoutant cette clause à une licence open source, on cherche à en limiter l’usage commercial par des tiers. Une clause qui, comme le précise le texte, est contraire à l’open source, comme spécifiée dans les critères de l’Open Source Definition de l’OSI (Open Source Initiative). « Appliquer la-dite clause à un projet open source le transforme en un projet ‘source-available’ (dont la source est disponible, NDLR) », est-il précisé.
« Les fournisseurs de cloud profitent de la communauté open source »
Dans le cas de Redis Labs, en appliquant cette clause à ses modules, la société cherche à éviter que les fournisseurs de services cloud (AWS est notamment cité) bâtissent des services sur ces modules open source, sans les modifier, et en fassent commerce en l’état. Sans que Redis Labs, au final, n’ait la capacité de récupérer un peu de sa mise. C’est du moins l’argument Yiftach Shoolman, le co-fondateur et CTO de Redis Labs, qui, dans un billet de blog, explique : « Les fournisseurs de cloud profitent de la communauté open source depuis des années en vendant (pour des centaines de millions de dollars) des services cloud basés sur du code open source qu'ils n'ont pas développé (par exemple Docker, Spark, Hadoop, Redis, Elasticsearch). Cela décourage la communauté d'investir dans le développement de code open source, parce que tous les gains potentiels vont aux fournisseurs de cloud plutôt qu'aux développeurs ou à leurs sponsors. » Selon lui, la licence AGPL, qui encadrait jusqu’alors les modules de la société, n’apportait pas ce niveau de protection.
Avec ce nouveau modèle de licence, « vous pouvez développer des produits internes, externes et commerciaux sur nos modules et les vendre, mais vous ne pouvez pas vendre directement les modules originaux », précise-t-il plus loin.
Redis Labs n’est pas le seul à avoir ajouté ces clauses commercialement limitatives à la licence qui encadre certains de ses outils. Neo4J, qui développe une base de données graphe open source, a aussi pris ce virage en mai dernier, comme il est indiqué sur Github.
Les fournisseurs de services cloud sont des grands utilisateurs de logiciels open source qu’ils rendent accessibles aux utilisateurs en mode cloud, depuis leur propre infrastructure. Cela a notamment pour effet d’en faciliter l’usage – les utilisateurs n’ont plus à s’occuper des problèmes de configurations de l’infrastructure. Mais Redis Labs reproche justement qu’un partage n’ait pas lieu.
Ces modules « ont une valeur ajoutée que Redis Labs veut fournir uniquement aux utilisateurs prêts à compiler et installer le système par eux-mêmes, ou aux clients de Redis Labs. Mais ce n'est pas correct de donner cette valeur à tous ceux qui sont prêts à la revendre », ajoute à son tour Salvatore Sanfilippo, le créateur de la base Redis, sur son blog.
De quoi alors susciter l’ire de la sphère open source, pour qui greffer ces clauses à une licence open source en fait tout bonnement un logiciel propriétaire. « Pas de zone grise entre l’open source et le propriétaire », rappelle d’ailleurs Simon Phipps, le directeur de l’Open Source, sur son flux Twitter. Selon lui, ce qui ne correspond pas aux critères qui définissent précisément l’open source est propriétaire. La notion d’open core (qui consiste à ouvrir à l’open source le moteur d’une technologie mais de rendre propriétaire les modules connexes – ce que fait Redis Labs) est par essence « propriétaire ».