Utilizatorii React fac o petiție pentru Facebook să re-licențeze React.js după ce Apache Software Foundation interzice licența BSD+Patents în dependențe
Publicat: 2017-07-18
Apache Software Foundation a emis o notificare în weekend, indicând că a adăugat licența Facebook BSD+Patents la lista sa de Categoria X de licențe nepermise pentru membrii Apache PMC. Aceasta este licența pe care Facebook o folosește pentru majoritatea proiectelor sale open source.
Un reprezentant al echipei RocksDB de la Facebook a comentat postarea Fundației Apache pentru a anunța că proiectul va îndeplini termenul limită de 31 august pentru reautorizare, pentru a fi în conformitate cu cerințele membrilor Apache PMC, iar schimbarea a fost comisă astăzi:
Echipa RocksDB ajustează licențele astfel încât să fie licențiată dublă sub licențe Apache 2 și GPL 2 (pentru compatibilitatea MySQL). Acest lucru ar trebui să se întâmple în scurt timp și cu mult înainte de 31 august. Voi lăsa istoria și filosofia în jurul licențelor în pace, deoarece este în general o discuție complexă și nu sunt sigur că a fost de fapt surprinsă pe deplin în acest thread, în special în ceea ce privește intenția Facebook.
Sperăm că îndrumările de azi dimineață pentru PMC-uri pot fi ajustate, deoarece nu cred că niciunul dintre noi consideră un efort suplimentar de inginerie ca un lucru de dorit în proiectele ASF care folosesc deja RocksDB.
În lumina deciziei Comitetului ASF pentru Afaceri Juridice de a respinge Licența BSD+Patent în proiectele Apache, membrul ASF Joan Touzet a deschis o problemă cu privire la depozitul React, îndemnând Facebook să ia în considerare re-licențierea React.js sub Licența Apache v2.0 și GPL 2 :
Acest lucru a dus la multă supărare și frustrare în comunitatea Apache, în special din cauza proiectelor care necesită cod cu licență similară ca dependențe directe - șeful acestora fiind RocksDB.
Noi (Apache Software Foundation) tocmai am primit vestea că RocksDB își va re-licenția codul sub licența duală Apache License v2.0 și GPL 2.
În calitate de utilizator al React.JS într-un proiect de nivel superior ASF (Apache CouchDB), vă rugăm să luați în considerare re-licențierea React.JS în condiții similare. În caz contrar, multe proiecte ASF, cum ar fi al nostru, vor trebui să înceteze să se bazeze și să construiască cu React.
Deși re-licențiarea RocksDB rezolvă problema acelui proiect, interzicerea de către ASF a licenței Facebook BSD+Patents înseamnă că alte tehnologii utilizate pe scară largă de la Facebook, inclusiv React.js, sunt încă interzise. Acest lucru este probabil să cauzeze probleme pentru multe proiecte open source.
Harshavardhana, din echipa Minio, a comentat în sprijinul petiției către Facebook pentru re-licențierea React.
„Interfața noastră de utilizare a browserului de stocare a obiectelor se bazează pe React și avem licență Apache 2.0”, a spus el. „Migrarea ar fi nefericită și consumatoare de timp, dar va trebui să facem asta în locul unor noi informații despre incompatibilitatea Apache. Vă rugăm să luați în considerare re-licențierea React.”
Colaboratorii la Om, o interfață ClojureScript pentru React, discută și dacă noile cerințe ale ASF le vor afecta sau nu proiectul. Greg Stein, comentând în numele ASF, a clarificat motivele din spatele deciziei organizației de a interzice licența Facebook BSD+Patents:
Vă rugăm să rețineți că ASF a ales această cale din motive de politică, mai degrabă decât „incompatibilitatea licenței”. Nu dorim ca utilizatorii din aval ai codului Apache să fie surprinși de acordarea BREVETE care (era) în RocksDB și (este) în React. Utilizatorii ar trebui să urmeze doar ALv2, fără alte constrângeri.
Aceste licențe pot funcționa împreună (IMO) și pur și simplu oferă două seturi de restricții pentru utilizatori.
Stein a spus că nu avocații ASF au luat decizia, ci mai degrabă decizia de politică a organizației de a „interzice ca licența FB/BSD+Patent să fie amestecată în software-ul pe care Fundația îl eliberează utilizatorilor”.
Facebook discută la nivel intern chestiunea re-licențelor
Dan Abramov, coautor al lucrărilor Redux, Create React App și React Hot Loader, s-a alăturat discuției de pe GitHub cu privire la re-licențiere, cu un rezumat scurt și ambiguu despre modul în care Facebook gestionează petiția de re-licențiere.

„Pentru a vă oferi o mică actualizare, vor fi mai multe discuții interne despre asta timp de aproximativ o săptămână”, a spus Abramov. „Acesta este cam cât pot spune. Nu aș fi prea optimist cu privire la această schimbare pentru React, dar vom vedea. @daveman692 a fost de acord să ofere o actualizare când aceste discuții se vor termina.”
Renunțarea completă a acordării brevetului, care ar fi cea mai convenabilă modalitate de a rezolva această problemă pentru proiectele open source, este puțin probabil să se întâmple. React a trecut deja prin re-licențiere de două ori în timpul scurtei sale istorii. Inițial a fost licențiat sub Apache 2.0, dar acesta a fost schimbat în octombrie 2014 cu Licența BSD plus acordarea brevetului, care includea o prevedere de reziliere extrem de controversată. În aprilie 2015, acordarea brevetului a fost ușor modificată pentru a permite licențiaților să continue să utilizeze software-ul în cazul în care un proces de brevet nu include o cerere reconvențională împotriva Facebook sau a afiliaților săi într-o chestiune care nu are legătură cu React.js.
Prevederea de reziliere din licența BSD+Patent a Facebook continuă să fie nepopulară și este privită în mod suspect de mulți întreținători de proiecte open source. Când proiectul Drupal a început să ia în considerare un cadru la nivelul clientului pentru a înlocui Backbone.js, Dries Buytaert a transmis React pe baza a ceea ce a spus că este „o clauză de brevet potențial inacceptabilă”, invocând respingerea colaboratorilor Calypso și React de la WordPress.com.
Proiectul WordPress open source nu și-a anunțat oficial decizia cu privire la cadru JavaScript care va fi inclus în core, dar toate semnele indică React. Viitorul editor Gutenberg al WordPress este construit pe React, iar contribuatorii săi principali sunt angajații Automattic care lucrează la produse bazate pe React pentru WordPress.com. Gutenberg continuă să avanseze într-un ritm vertiginos, fără nicio indicație de rescrie, iar co-creatorul WordPress Matt Mullenweg a fost deschis cu privire la preferința sa de a folosi React.
Deși consilierul juridic al Automattic a spus că compania este confortabilă să folosească React pentru produsul său sub licența actuală a proiectului, alții din comunitatea WordPress nu sunt la fel de predispuși să includă cadrul în bază.
Open Source Initiative (OSI) include o licență generică BSD+Patent listată printre licențele sale aprobate, dar licența particulară BSD+Patent a Facebook nu a fost trimisă. Robert Pierce, partener la El Camino Legal, susține că prevederea de reziliere a licenței ar trebui să fie nepermisă într-o licență open source, deoarece există pentru a proteja Facebook de litigiile legate de brevete care nu au nicio legătură cu codul React:
Facebook prezintă React.js drept software open source. Dar, în opinia mea, prevederea de reziliere a licenței din acordarea suplimentară a drepturilor de brevet duce oferta în afara domeniului software-ului open source.
Licența de brevet oferită în Acordarea suplimentară a drepturilor de brevet (v.2) este condiționată de faptul că titularul licenței nu inițiază un proces pentru încălcarea brevetului împotriva Facebook sau a afiliaților săi. Astfel, licențiatul plătește un preț pentru a utiliza biblioteca. Nu este un preț plătit cu bani. Prețul cerut de Facebook pentru utilizarea bibliotecii este ca licențiatul să se abțină de la exercitarea vreunui drept de brevet împotriva Facebook sau a afiliaților săi.
Pierce consideră că publicarea de către Facebook a codului sursă React este o pârghie pentru a câștiga o anumită protecție împotriva proceselor de brevet, despre care el consideră a fi „o abordare prea lacomă pentru ca Facebook să revendice statutul de open source”.
Comunitatea open source a speculat pe scară largă cu privire la implicațiile includerii licenței BSD+Patent a Facebook ca dependență, dar licența nu a fost încă testată în instanță. Apache Software Foundation este prima organizație majoră care a luat o poziție dură cu privire la licența controversată și acest lucru a atras atenția Facebook. Reprezentanții Facebook au promis o actualizare cu privire la petiția de re-licențiere după încheierea discuțiilor sale interne.
