React Users Pétition Facebook to re-license React.js after Apache Software Foundation Bans BSD+Patents License in Dependencies
Publié: 2017-07-18
L'Apache Software Foundation a publié un avis au cours du week-end, indiquant qu'elle avait ajouté la licence BSD+Patents de Facebook à sa liste de catégories X de licences non autorisées pour les membres d'Apache PMC. C'est la licence que Facebook utilise pour la plupart de ses projets open source.
Un représentant de l'équipe RocksDB de Facebook a commenté le message de la Fondation Apache pour informer que le projet respectera la date limite du 31 août pour la nouvelle licence afin d'être en conformité avec les exigences des membres Apache PMC, et que le changement a été engagé aujourd'hui :
L'équipe RocksDB ajuste les licences de sorte qu'elles seront à double licence sous les licences Apache 2 et GPL 2 (pour la compatibilité MySQL). Cela devrait se produire sous peu et bien avant le 31 août. Je vais laisser l'histoire et la philosophie autour des licences seules car c'est généralement une discussion complexe à avoir et je ne suis pas sûr qu'elle ait été entièrement capturée dans ce fil, en particulier vis-à-vis de l'intention de Facebook.
J'espère que les conseils de ce matin aux PMC pourront être ajustés car je ne pense pas qu'aucun d'entre nous ne considère un effort d'ingénierie supplémentaire comme une chose souhaitable dans les projets ASF qui utilisent déjà RocksDB
À la lumière de la décision du comité des affaires juridiques d'ASF de refuser la licence BSD + brevets dans les projets Apache, Joan Touzet, membre d'ASF, a ouvert un problème sur le référentiel React exhortant Facebook à envisager de renouveler la licence React.js sous Apache License v2.0 et GPL 2 :
Cela a provoqué beaucoup de mécontentement et de frustration dans la communauté Apache, en particulier à cause de projets nécessitant un code sous licence similaire en tant que dépendances directes - le principal étant RocksDB.
Nous (l'Apache Software Foundation) venons d'apprendre que RocksDB renouvellera la licence de son code sous les licences doubles Apache License v2.0 et GPL 2.
En tant qu'utilisateur de React.JS dans un projet de niveau supérieur ASF (Apache CouchDB), veuillez envisager de renouveler la licence de React.JS sous des conditions similaires. Sinon, de nombreux projets ASF tels que le nôtre devront cesser de s'appuyer sur et de construire avec React.
Bien que la nouvelle licence de RocksDB résolve le problème de ce projet particulier, l'interdiction par ASF de la licence BSD+Patents de Facebook signifie que d'autres technologies largement utilisées de Facebook, y compris React.js, sont toujours interdites. Cela est susceptible de causer des problèmes pour de nombreux projets open source.
Harshavardhana, de l'équipe Minio, a commenté en faveur de la pétition adressée à Facebook pour une nouvelle licence de React.
"Notre interface utilisateur de navigateur de stockage d'objets est basée sur React et nous sommes sous licence Apache 2.0", a-t-il déclaré. "Ce serait malheureux et long de migrer, mais nous devrons le faire au lieu de nouvelles informations concernant l'incompatibilité d'Apache. Veuillez envisager de renouveler la licence de React.
Les contributeurs à Om, une interface ClojureScript pour React, discutent également de l'impact ou non des nouvelles exigences de l'ASF sur leur projet. Greg Stein, commentant au nom d'ASF, a clarifié les raisons de la décision de l'organisation d'interdire la licence BSD+Patents de Facebook :
Veuillez noter que l'ASF a choisi cette voie pour des raisons politiques, plutôt que « incompatibilité de licence ». Nous ne voulons pas que les utilisateurs en aval du code Apache soient surpris par la subvention PATENTS qui (était) dans RocksDB et (est) dans React. Les utilisateurs doivent uniquement suivre l'ALv2, sans aucune autre contrainte.
Ces licences peuvent fonctionner ensemble (IMO) et fournir simplement deux ensembles de restrictions aux utilisateurs.
Stein a déclaré que ce n'étaient pas les avocats d'ASF qui avaient pris la décision, mais plutôt la décision politique de l'organisation de « interdire que la licence FB/BSD+Patent soit mélangée dans le logiciel que la Fondation met à la disposition des utilisateurs ».
Facebook discute en interne de la question des nouvelles licences
Dan Abramov, co-auteur de Redux, Create React App et React Hot Loader, a rejoint la discussion sur GitHub concernant la nouvelle licence avec un résumé bref et ambigu sur la façon dont Facebook gère la demande de nouvelle licence.

"Pour vous donner une petite mise à jour, il y aura plus de discussions internes à ce sujet pendant environ une semaine", a déclaré Abramov. « C'est à peu près tout ce que je peux dire. Je ne serais pas trop optimiste quant à ce changement pour React, mais nous verrons. @daveman692 a gentiment accepté de fournir une mise à jour lorsque ces discussions seront terminées.
Il est peu probable que l'abandon total de la délivrance du brevet, qui serait le moyen le plus pratique de résoudre ce problème pour les projets open source, se produise. React a déjà subi deux renouvellements de licence au cours de sa courte histoire. Il était à l'origine sous licence Apache 2.0, mais cela a été changé en octobre 2014 en licence BSD plus la délivrance du brevet, qui comprenait une disposition de résiliation très controversée. En avril 2015, la délivrance du brevet a été légèrement modifiée pour permettre aux titulaires de licence de continuer à utiliser le logiciel dans le cas où une poursuite en matière de brevet n'inclurait pas de demande reconventionnelle contre Facebook ou ses sociétés affiliées dans une affaire sans rapport avec React.js.
La clause de résiliation de la licence BSD+Patents de Facebook continue d'être impopulaire et est considérée de manière suspecte par de nombreux mainteneurs de projets open source. Lorsque le projet Drupal a commencé à envisager un framework côté client pour remplacer Backbone.js, Dries Buytaert a transmis React sur la base de ce qu'il a qualifié de "clause de brevet potentiellement inacceptable", citant le refus des contributeurs Calypso et React de WordPress.com.
Le projet open source WordPress n'a pas officiellement annoncé sa décision sur le framework JavaScript qui sera inclus dans le noyau, mais tous les signes pointent vers React. Le prochain éditeur Gutenberg de WordPress est basé sur React et ses principaux contributeurs sont des employés d'Automattic qui travaillent sur des produits basés sur React pour WordPress.com. Gutenberg continue d'avancer à un rythme effréné sans aucune indication de réécriture, et le co-créateur de WordPress Matt Mullenweg a été franc sur sa préférence pour l'utilisation de React.
Bien que le conseiller juridique d'Automattic ait déclaré que la société était à l'aise avec React pour son produit sous la licence actuelle du projet, d'autres membres de la communauté WordPress ne sont pas aussi disposés à inclure le framework dans le noyau.
L'Open Source Initiative (OSI) inclut une licence générique BSD+Patent répertoriée parmi ses licences approuvées, mais la licence BSD+Patent particulière de Facebook n'a pas été soumise. Robert Pierce, associé chez El Camino Legal, soutient que la clause de résiliation de la licence devrait être interdite dans une licence open source car elle existe pour protéger Facebook contre les litiges en matière de brevets qui n'ont aucun rapport avec le code React :
Facebook vante les mérites de React.js en tant que logiciel open source. Mais dans mon esprit, la clause de résiliation de la licence de la concession supplémentaire de droits de brevet fait sortir l'offre du domaine des logiciels open source.
La licence de brevet offerte dans l'octroi supplémentaire de droits de brevet (v.2) est conditionnée par le fait que le titulaire de la licence n'intente pas de poursuite en contrefaçon de brevet contre Facebook ou ses sociétés affiliées. Ainsi, le licencié paie un prix pour utiliser la bibliothèque. Ce n'est pas un prix payé avec de l'argent. Le prix exigé par Facebook pour l'utilisation de la bibliothèque est que le titulaire de la licence s'abstienne d'exercer l'un de ses droits de brevet contre Facebook ou ses sociétés affiliées.
Pierce considère la publication par Facebook du code source de React comme un levier pour obtenir une certaine protection contre les poursuites en matière de brevets, qu'il juge être "une approche trop gourmande pour que Facebook revendique le statut de source ouverte".
La communauté open source a largement spéculé sur les implications de l'inclusion de la licence BSD+Patent de Facebook en tant que dépendance, mais la licence n'a pas encore été testée devant les tribunaux. L'Apache Software Foundation est la première grande organisation à adopter une position dure sur la licence controversée et cela a attiré l'attention de Facebook. Les représentants de Facebook ont promis une mise à jour sur la demande de renouvellement de licence après la fin de ses discussions internes.
