就在几个小时前,Facebook 宣布,将在下周发布的 React 16 会以 MIT 许可证重新授权,以应对社区对之前的 BSD + 专利许可模式的不安。
Facebook 负责 React 和 GraphQL 等产品的产品架构组工程总监 Adam Wolff 写道:
“下周,我们将以 MIT 许可证对我们的开源项目 React、Jest、Flow 和 Immutable.js 重新进行许可。我们重新许可这些项目是因为 React 是广泛的互联网开源软件生态的基石,我们并不想因非技术原因而阻碍其前行的道路。”
React.js 是 Facebook 推出的一个用来构建用户界面的 JavaScript 库,起源于 Facebook 的内部项目,用来架设 Instagram 的网站。
- 2013 年 5 月,Facebook 将 React.js 开源。
- 2016 年 7 月,React.js 开源许可协议中的附加专利条款引发争议。
- 2016 年 11 月,Facebook 发布官方问答,对附加专利条款进行澄清。
- 2017 年 7 月,Apache 基金会禁止使用遵循 BSD 许可证 + 专利开源协议的 JAR 包。
在 Apache 基金会将 React 这样的采用 BSD 许可证 + 专利条款的软件列入“X 类别”之后,社区再次引发了对此问题强烈关注,并导致很多大型的互联网公司开始绸缪放弃和替换 React——尤其是在 WordPress 宣布将重写其软件,剥离对 React 的依赖之后达到了顶峰。而国内的互联网公司,如百度、阿里,也纷纷有传言将追随这一动作,弃用 React。
迫于这种压力,Facebook 决定对 React 等开源项目放弃其原有的 BSD 许可证 + 专利条款的许可模式,虽然他们认为“BSD 许可证 + 专利条款为项目的用户提供了一些好处”,但是他们也“承认没能说服社区接受这一许可模式”。
在感受到这一许可证的不确定性风险之后,许多团队开始选择替代性的产品。Facebook 对此感到抱歉,对 React 重新许可虽然不一定能赢得这些团队回心转意,但是还是“希望将这扇门继续打开”。
这一转变自然也会引起人们对 Facebook 其它的开源项目的质疑,因为目前 Facebook 许多流行的开源项目都采用的是 BSD 许可 + 专利条款方式。但是他们会“重新评估这些项目的许可证,而每个项目的情况有所不同,替换许可证取决于各种因素”。下周,除了 React 之外,Facebook 也将对 Jest、Flow 和 Immutable.js 等开源项目进行重新许可。
这一许可证的变化将随着下周即将发布的 React 16 一起更新。React 16 已经开发了一年,内部进行完全重写,解锁了强大的功能,让每个人都可以用它来构建大规模的用户界面。
Adam Wolff 表示,将许可证的讨论放到后面,无论大家用不用 React ,希望它都可以给开发者以灵感,毕竟,我们最关心的是:交付伟大的产品。
发表回复