Apache Foundation proscrit l'utilisation de licence Facebook comme celle de React
à compter du 31 août 2017

Le , par Stéphane le calme, Chroniqueur Actualités
En 2013, Facebook a proposé React (aussi appelé React.js ou ReactJS), une bibliothèque JavaScript que le réseau social avait utilisée en interne depuis deux ans déjà et dont l’objectif est de faciliter la conception d’interfaces utilisateur interactives. Sur le dépôt GitHub dédié à React, Facebook indique qu’il vous suffit de concevoir des vues simples pour chaque état dans votre application afin que React mette efficacement à jour les bons composants lorsque vos données vont changer. Et de préciser que les vues déclaratives rendent votre code plus prévisible et plus facile à déboguer.

La bibliothèque est utilisée notamment par Netflix, Yahoo, Airbnb, Sony, Atlassian, Instagram, Whatsapp et, bien entendu, par les équipes de Facebook, appliquant le dogfooding sur le réseau social.

React a été publié sous licence Apache 2.0 le 29 mai 2013. En octobre 2014, la version 0.12.0 est publiée sous licence BSD modifiée, avec une note associée PATENTS permettant l'utilisation des brevets de Facebook associé à React. Cependant, la licence BSD est mise à jour en avril 2015, avec la version 0.13.1, pour éviter les confusions.

Au fil des années, React a su gagner en popularité, notamment grâce à sa modularité et sa simplicité d’utilisation. Si les mérites techniques de React sont difficiles à contester, la bibliothèque a été au centre de vives discussions au sein de communautés de développeurs. Plus précisément, nombreux sont ceux qui ont estimé que l’octroi de licences n’était pas très clair (BSD + PATENTS) à telle enseigne que les communautés FOSS (Free and open-source software) ont appelé à une résistance aux « sociétés du mal ».

En raison d’une des clauses du brevet, les communautés ont souligné que vous n'êtes pas autorisé à faire tout ce qui constitue une concurrence avec Facebook en vous servant de React. Si vous engagez des actions en justice ou, d'une autre manière, défiez Facebook, votre licence d'utilisation de React est immédiatement révoquée. Votre licence est également révoquée si vous avez des litiges juridiques avec toute autre entreprise utilisant React.

Ce à quoi Facebook a voulu vite réagir en déployant une FAQ en juillet 2016 qui tentait de démentir ces assertions. Elle comprenait notamment quatre questions :
  • est-ce que l’accord de brevet dans la licence Facebook BSD + PATENTS se termine si je crée un produit concurrent ?
  • est-ce que l’accord de brevet dans la licence Facebook BSD + PATENTS se termine si je poursuis Facebook pour quelque chose d'autre que la violation de brevet ?
  • est-ce que l’accord de brevet dans la licence Facebook BSD + PATENTS se termine si Facebook me poursuit d'abord pour contrefaçon de brevet, puis je réponds avec une demande de brevet contre Facebook ?
  • est-ce que la résiliation de l’accord de brevet dans la licence Facebook BSD + PATENTS entraîne la fin de la licence de copyright ?

À toutes ces questions, Facebook a répondu par la négative, apportant une nuance à la réponse à la troisième question.
Toutefois, un an plus tard, il semblerait que la Fondation Apache a pris une position contre l'utilisation de React.js et d'autres logiciels populaires qui s’appuient sur cette licence.

Dans un ticket JIRA, un système de suivi de bogues, de gestion des incidents et de gestion de projets développé par Atlassian et proposé gratuitement aux projets open source ainsi qu’aux organisations non commerciales, un utilisateur a partagé une note émanant d'Apache qui formule les recommandations suivantes contre la licence :
  • aucun nouveau projet, sous-projet ou base de code, qui n'a pas utilisé les brevets Facebook BSD + PATENT jars (ou des licences similaires), n’est autorisé à les utiliser. En d'autres termes, si vous ne les utilisez pas, vous ne pouvez pas commencer. C'est Cat-X ;
  • si vous l'utilisez et que vous l'avez fait dans une * version *, vous avez une exclusion temporaire de la classification Cat-X jusqu'au 31 août 2017. À ce moment-là, TOUTE utilisation de ces brevets Facebook BSD + PATENT sera DÉSACTIVÉE. Vous devez soit trouver un remplacement dûment autorisé, soit vous en occuper. Il n'y aura pas d'exception ;
  • toute situation qui n'est pas couverte par ce qui précède est un DÉCALAGE implicite de l'utilisation.

Ce ticket spécifique s'adresse à RocksDB, un moteur de base de données de Facebook. En fait, RocksDB est déjà en train de faire migrer ses licences vers Apache 2.0. React.js est un projet distinct et il semble que Facebook ait l'intention de conserver la clause controversée du brevet.

Alors que les entités commerciales sont maintenant à l'aise avec l'utilisation du code React dans les produits, il semble que les communautés open source sont lasses de cette licence particulière que Facebook a défendue et tenté de clarifier au fil du temps. Pourtant, de nombreux projets open source populaires comme WordPress continuent de promouvoir React.

Source : note d'Apache, Facebook, clause à l'origine du problème

Et vous ?

Qu'est-ce qui peut, selon vous, expliquer le fait que la communauté open source ne voudrait plus progresser dans son adoption de React ?


Vous avez aimé cette actualité ? Alors partagez-la avec vos amis en cliquant sur les boutons ci-dessous :


 Poster une réponse

Avatar de abriotde abriotde - Membre éclairé https://www.developpez.com
le 18/07/2017 à 13:58
Pour moi, qui suis un fervent défenseur du libre, je trouve la position de Facebook raisonnable. En tant que libriste, on ne peux qu'être contre les procès des patents trolls (Rappel les pattent troll rachètent des entreprises pour leurs brevets, coulent l'entreprise ou la revendent sans brevets et attaquent en justices tous ceux qui utilisent leurs brevets). Et je pense que l'on peux voir la mention de la licence Facebook comme une protection contre ces arnaqueurs. A ceci plusieurs raisons : D'une part car il est précisé que c'est dans le cas d'une attaque contre Facebook et non pas dont Facebook serait à l'origine qu'il y a révocation de la licence. D'autre part car Facebook c'est, jusqu'ici, toujours montré plutôt favorable à l'Open-Source. Il y contribue, et n'engage pas de procès type "pattent troll". Je qualifierait la clause Facebook de clause donnant/donnant (Je vous donne ReactJS mais ne me réclamez pas de trop en retour). Si Facebook abusait une association externe n'aurait pas de mal a l'attaquer.

L'Open Source est un esprit et il faut le défendre mais il ne faut pas oublier la nécessité de construire un modèle économique à côté. Apporter certaines clauses ce justifie surtout une si petite.
Offres d'emploi IT
Développeur WEB PHP F/H
VACALIANS GROUP - Languedoc Roussillon - SETE (34)
RESPONSABLE WEB ANALYTICS F/H
VACALIANS GROUP - Languedoc Roussillon - SETE (34)
Développeur Web FULL-STACK
VACALIANS GROUP - Languedoc Roussillon - SETE (34)

Voir plus d'offres Voir la carte des offres IT
Contacter le responsable de la rubrique Accueil