一年之後,React.js 許可協議再起爭端

9 贊 回覆發表於2017-07-29

在 2016 年 7 月,Facebook 公司的 React.js 開源許可協議曾引起激烈爭論。一年過後,該協議再次成為開源社群的頭條新聞。

背景介紹

React.js 是 Facebook 推出的一個用來構建使用者介面的 JavaScript 庫,起源於 Facebook 的內部專案,用來架設 Instagram 的網站。

  • 2013 年 5 月,Facebook 將 React.js 開源
  • 2016 年 7月,React.js 開源許可協議中的附加專利條款引發爭議。
  • 2016 年 11 月,Facebook 釋出官方問答,對附加專利條款進行澄清。
  • 2017 年 7 月,Apache 基金會禁止使用遵循 BSD 許可證 + 專利開源協議的 JAR 包。 

Apache 基金會的立場

2017 年 7 月,針對 Facebook 公司的 BSD 許可證 + 專利開源協議,Apache 基金會提出瞭如下建議:

  1. 任何新專案、子專案或程式碼庫都不允許使用遵循 Facebook 公司 “BSD 許可證 + 專利開源協議”的 jar 包。換句話說,如果你之前沒有使用過,之後也不允許去使用。這種許可協議被 Apache 基金會列為 X 類別(Cat-X)。
  2. 如果你一直在使用,並且在 release 中已經這麼做了,那麼在 2017 年 8 月 31 日之前,你將暫時從 X 類別中被排除。在此之後,任何和所有使用 Facebook 公司 “BSD 許可證+專利開源協議”的產品都將被 Apache 基金會禁止使用,你必須找到採用了合適許可證的替代品,或者放棄使用。這種情況沒有例外。
  3. 上述條款沒有涵蓋的任何其他情形也禁止使用。

X 類別被定義為“Apache 產品中可能不允許的許可證”,目前包括 GNU GPL、GNU LGPL、BCL、BSD-4-Clause 等許可證。有關禁用許可證列表可以在 Apache 基金會網站上查詢

Facebook 的 “BSD 許可證 + 專利開源協議”

React 是一種流行的用於建立豐富使用者介面的 JavaScript 技術,最初來源於 Facebook,並被廣泛使用。該技術依據 BSD 許可證進行開源,但是,它的附加專利條款需要特別注意(以下為節選)。

Facebook, Inc.(Facebook)特此授予軟體的每個接收人(“你”)基於任何“必要權利要求”Necessary Claims的永久的、全球範圍的、免版稅的、非排他的、不可撤銷的許可(遵守以下終止條款),可以製造、曾經制造、使用、銷售、許諾銷售、進口以及轉移軟體。

如果您(或任何您的子公司、關聯方或代理商)直接或間接地啟動了專利主張,或從專利主張中直接獲取經濟利益,本協議授予的許可將自動終止,恕不另行通知:(i)針對 Facebook 或其任何子公司或關聯方;(ii)全部或部分來自於 Facebook 或其任何子公司或關聯方的任何軟體、技術、產品或服務的專利主張針對任何一方;或(iii)與軟體相關的任何一方。儘管如此,如果 Facebook 或其任何子公司或關聯方首先對你提起專利侵權訴訟指控,你在該訴訟中針對與軟體無關的一方提起專利侵權反訴,你所被授予的許可不會因反訴而在本段第(i)款的規定下終止。

如果你的專案中正在使用或打算使用 React,你可能需要去諮詢律師了。由於專利條款的限制,你不能做任何構成與 Facebook 競爭的事情。如果你採取法律行動或者以其他方式挑戰 Facebook,那麼你使用 React 的許可會被立即撤銷。

如果你與其他使用 React 的公司發生法律糾紛,那你使用 React 的許可也會被撤銷。Aurelia 框架建立者、Angular 2 開發團隊前成員 Rob Eisenberg 表示,這就是 Google 公司和 Microsoft 公司的員工在工作中不允許使用 React.js 的原因。

雖然這只是在理論上對大多數採用 React 的專案可能產生的影響,但仍然值得特別注意,並且,類似 WordPress Calypso 這種已經與 React.js 建立了深刻聯絡的專案,可能會受到限制。運營 WordPress 的 Automattic 公司對一些小官司並不陌生,但這次很可能成為 Facebook 這個大公司的訴訟物件。

Drupal 和 WordPress 等許多開源產品都在採用 Facebook 公司的 React.js 技術。對於 Automattic 公司這種擁有開源產品的公司來說,未來如果被 Facebook 認定與 Facebook 構成競爭,將會是一個棘手的問題。

目前 Facebook 正如日中天,以上可能性發生的機率比較小,但如同 Yahoo 公司一樣,Facebook 總有一天會從神壇跌落。到那時,Facebook 公司很有可能會從競爭角度充分利用許可協議所賦予的權利。所以,如果你打算利用 React.js 建立一個有可能終結 Facebook 神話的產品,最好先諮詢你的律師。

但是,美國專利法非常複雜,尤其是在智慧財產權相關問題上,往往難以解釋。從 Google 和 Oracle 公司有關安卓使用 Java 的爭議可以看出,解決此類問題往往需要好幾年時間。這意味著你必須要財大氣粗,即使是你最後贏了官司。

Facebook 公司的官方問答

React 的技術優勢難以挑戰。從開發者構建 web 使用者介面方面來說,React 引發了一場變革。Facebook 在某些方面不太清楚的許可協議(BSD 許可證+專利)在開源開發者中間引發了激烈爭論。開源社群繼續堅持對“邪惡公司”的抵制,而 Facebook 很容易被歸為此類公司。

2016 年 11 月,Facebook 澄清了其在 React、React Native 和其他許多專案中廣泛採用的開源許可協議方面的立場。與任何法律文字一樣,軟體許可協議非常難以解釋。Facebook 提供了一個 FAQ 來回應經常被問到的問題。其中包括:

  1. 如果我建立了一個競爭性產品,那麼 Facebook 公司 “BSD 許可證+專利許可協議”中的附加專利授權是否會被終止?
  2. 如果我用專利侵權以外的理由起訴 Facebook,那麼 Facebook 公司 “BSD許可證+專利許可協議”中的附加專利授權是否會被終止?
  3. 如果 Facebook 公司首先起訴我專利侵權,而我反訴 Facebook 公司專利侵權,那麼 Facebook 公司 “BSD許可證+專利許可協議”中的附加專利授權是否會被終止?
  4. Facebook 公司 “BSD 許可證+專利許可協議”中的附加專利授權的終止是否也會導致版權許可的終止?

對 1、2、4 的回答是明確的“”,而對於第 3 個問題,FAQ 中規定,反訴主張不得與 Facebook 任何專利相關。上述官方說法比較可靠,在這個 Facebook 即便成為專利流氓也所獲甚微的時刻,Facebook 仍然堅持其對 React 許可協議的看法。

使用 React.js 的開發者怎麼辦?

Apple 和 Microsoft 等行業巨頭對於採用 React 的態度令人關注。有報導稱,由於擔心法律糾紛,這些巨頭們已經禁止在專案中使用 React UI 庫。但顯然這是一個引發爭議的問題,因為兩家巨頭都發布了使用 React 的網路資源或庫。

Microsoft 提供了一個用於擴充套件 PowerPoint 和其他 Office365 產品的 React UI 元件庫。Apple 開發者網站上的 API 文件採用 React.js 構建。

以上兩款產品都不是兩家公司的核心產品,Apple 也不太可能釋出一款利用 React Native 編寫的 iOS 郵件客戶端。值得注意的是,雖然兩家公司都看到了利用 React 建立 web 使用者介面的價值,但它們的法律部門也沒有因此遇到麻煩。

所以對大多數應用案例來說,似乎專利訴訟被嚴格限制在使用中的具體工具上,在這種情況下無需過分擔心。由於使用了寬鬆的 BSD 許可證,對於開發者來說,React 實際上比使用傳染性的 GPL 許可證的庫更為安全。

Facebook 公司的資料庫引擎 RocksDB 正準備將許可證更改為 Apache 2.0。但 React.js 是一個特殊的專案,Facebook 公司似乎有意繼續保留專利條款。

雖然商業實體很樂意在產品中使用 React 授權程式碼,儘管 WordPress 等許多受歡迎的開源專案仍將繼續採用 React,但開源社群對 Facebook 不斷捍衛和澄清這種特殊授權感到了厭倦。

因此,如果你想找到類似 Solr 這種採用 React UI 的 Apache 專案,可能還需要很長時間。幸運的是,React 本身並非獨一無二,你的專案可以採用與 React 類似的替代品,例如 PreactInferno,而不用擔心遇到 React 的專利授權問題。 

參考來源

 (題圖:facebook.github.io)


編譯:

薛亮北京集慧智佳智慧財產權管理諮詢股份有限公司網際網路事業部 高階諮詢師擅長專利檢索專利分析競爭對手跟蹤,FTO分析開源軟體智慧財產權風險分析致力於為網際網路企業高科技公司提供智慧財產權諮詢服務。

相關文章