3

开源还能造假?Neo4j 状告 3 家公司虚假宣传开源,法院判定胜诉

 2 years ago
source link: https://www.techug.com/post/can-open-source-still-fake-neo4j-sued-three-companies-for-false-publicity-of-open-source-and-the-court-ruled-in-favor.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.


img1648082708190758753.jpeg

 去年,Neo4j 和 Graph Foundation 签订了保密和解协议,Graph Foundation 同意不再宣称其 ONgDB 是 Neo4j EE(Neo4j 企业版)的“100%免费和开源版本”。近期,法院也对 Neo4j 起诉的另外两家企业——PureThink 和 iGov,做出了类似的裁决。

Neo4j 起诉三家公司的原因是,Graph Foundation、PureThink 和 iGov 都将 ONgDB 作为 Neo4j EE 的“免费和开源”版本提供服务并做广告宣传。

发生了什么?

Neo4j 是一款由 Neo4j 公司开发的高性能 NoSQL 图形数据库。ONgDB 则是 Graph Foundation 以开源方式运营的项目。ONgDB 自 Neo4j EE(Neo4j 企业版)分叉而来,其初始版本的源代码来自 Neo4j EE 代码库完全闭源之前的代码。

2018 年 5 月,Neo4j EE 放弃了 GNU Affero 通用公共许可证(AGPL),采用了一个新的许可证。该许可证包含了 AGPLv3 中的条款和 Commons Clause 许可证中的额外限制,被法院称成为“Neo4j 瑞士软件许可证”。这个新的许可证禁止非付费用户转售代码或提供一些支持服务,不在 OSI 认定的开源许可证列表中。2018 年 11 月,Neo4j 公司以仅商业许可的方式发布了 Neo4j EE 3.5 版本。

本来开源分叉是很常见的,但这件事情的问题在于,ONgDB 及其公司一直宣称自己是开源的 Neo4j EE,造成很多混淆。目前 ONgDB 已经完全改版,弃用了所有与 Neo4j 相关的商标信息。

目前,该组织停止了对 ONgDB 版本 3.4、3.5 和 3.6 的支持,并发布了 AGPLv3 许可的 Neo4j EE 版本 3.4.0.rc02 的分支 ONgDB 1.0,用户商用时需要遵守对应的开源协议,而 ONgDB 的社区版开源协议为 GPLv3。

而 PureThink 是一家成立于 2002 年的软件开发公司,主要服务对象为美国政府部门。根据裁决协议,在签署的 Neo4j EE 购买协议中,双方约定 Neo4j 商标仅用于 Neo4j EE 及其相关支持服务营销和转售商业许可,以换取转售许可的共享收入。

但是,PureThink 开发了 Neo4j 的“政府版”并意图销售给美国国税局(IRS)。PureThink 发布版本中仅有 AGPLv3 许可证。在被要求查看原版之后,PureThink 表示 IRS 可以使用 Neo4j EE 的开源版本,并向 PureThink 支付咨询费用。Neo4j 与 PureThink 合约到期后,PureThink 和 iGov 继续营销该“政府版”,并宣扬 ONgDB 是 Neo4j EE 的免费开源版本。

去年 5 月,法官审理了针对 PureThink 的诉讼,iGov 同意了 Neo4j 的部分简易判决动议,禁止被告侵犯原告的 Neo4j 商标,并不得将 ONgDB “作为 Neo4j EE 的免费开源替代品……”

之后,被告提出上诉,美国第九巡回上诉法院在今年 2 月确认了下级法院的裁决。法院认为,PureThink 公司删除 Commons Clause 这一行为是不合理的,所以其在广告中声称 ONgDB 软件是开源的,可以被认定为虚假广告。

法院最终判决,禁止 PureThink 宣传、推广或者提及“ONgDB 是一个免费和开源的源代码”、“可直接替换相同版本的 Neo4j 企业版”等任何可能误导消费者的声明。

真假开源之争

3 月 17 日,OSI 发文庆祝法院的裁决。该组织在文章中评论道:“如果明明不是开源,就不要再说自己是开源了”,并表示“法院只是确认了我们早已知道的事实——开源是一个艺术术语,指的是在特定类型的许可下获得许可的软件,而该许可是否经过 OSI 批准则是用户采用的一个至关重要的因素。”

独立技术律师Kyle E. Mitchell反驳了 OSI 的文章,称其是“自私的、误导性的和错误的”,法院并未就“开源”的含义做出任何法律裁决。他指出,整个诉讼给出的最关键信号是法院裁定 PureThink 无权从文件中删除 Commons Clause。

Commons Clause 作为限制许可软件销售的附加条件,在 2018 年初由多家开源公司共同创建,并由 FOSSA 公开贡献,其初衷就是限制云厂商使用开源代码提供商业服务,但不回馈社区的行为。

Commons Clause 当初发布时,就在开源社区引发了强烈反响。支持者认为这是开源许可道路上合理而积极的演变,让开源公司能够在投入开源项目的同时成功运营业务。而反对者认为这违背了开源精神。更重要的是,许多公司为保证自己符合开源理念,只使用获得 OSI 批准的许可证许可的开源软件。在增加了 Commons Clause 之后,此类项目可能面临威胁。

当时,Debian、Mozilla 和 The Document Foundation 等支持的 OSI 就发文表示:“开源”如果没有单一的、标准的定义,那么我们所知道的软件开发则是不可能的。任何人都能定义开源就会没有信任,没有信任就没有社区、没有协作,也没有创新。

OSI 在近日的发文中也表示,“通过添加非自由的 Commons Clause 创建一个不同的许可证,该软件就不能被描述为开源,否则就是非法的虚假广告。”但 Mitchell 认为,这是对判决的误读。

Mitchell 指出,法院将最初的 Neo4j 版本视为开源,在 Neo4j 添加了 Commons Clause 后,仍然被法院认为是“开源”的:

2018 年 5 月,原告发布了 Neo4j EE 3.4 版,他们继续在开源许可下提供;但是他们用了更严格的许可取代 AGPL,其中包括 AGPLv3 中的条款和 Commons Clause 提供的附加限制。

只有在 Neo4j 独家获得商业许可时,法院认为,这才标志着开源发布的结束:

2018 年 11 月,原告仅在商业许可下发布了 Neo4j EE 3.5 版。从那时起,原告不再在开源基础上提供 Neo4j EE。

“造成问题的原因是取消了 Commons Clause,双方的律师也都是围绕这点争论的。”Mitchell 表示。

事实上,Redis Labs 曾短暂地使用过 Commons Clause,但因为这项条款下的软件是否开源问题而放弃。

2018 年 8 月,Redis Labs 宣布决定将 Commons Clause 作为附加条款添加到其针对某些附加模块的自由开源许可证中。该条款使源代码具有可用性,但使用者无法“出售”模块,其中包括将它们作为商业服务来提供。

但半年后,Redis Labs 就宣布放弃 Commons Clause ,转而采用了新的可用源许可 RSAL。“它(Commons Clause)不起作用。对于这些模块是否是开源的,人们一直很困惑。它们不是开源的。” Redis Labs 首席营销官 Manish Gupta 解释道。

谁定义“开源”?

“我喜欢自由软件,虽然现在还不清楚是哪种自由。”那什么是开源、谁来定义开源呢?

OSI 虽然被公认为开源“官方”组织,但也有开发者不认为该由 OSI 来定义开源。“我不认为你、开源倡议组织 (OSI) 或其他任何人能够单独给真正的开源下定义。”开发者Martin Tournoij曾在自己的个人博客中表示,“我不反对开源定义(OSD),但以它来评判所有对开源的使用是行不通的。纠正数以百万计的人‘开源用错了’,并不是完成任何有意义的事情的好策略——这并不能促进开源的使用。”

“不同群体之间对‘什么构成开源’存在相当大的分歧,所以在没有前提下声称单独的某一方可以定义和仲裁开源,这对我来说似乎很疯狂。”有开发者说道,“或者您已经忘记了自己与社区之间的差异,就像是‘如果不与我们站在一起,你就是反对开源’。无论如何,都不会让我将 OSI 作为指南针。不确定是谁选举他们成为开源之王。”

此外,还有开发者指出,一些公司仅仅因为他们的源代码在 GitHub 上就在推广时将其产品称为“开源”,即使许可证与任何专有许可证一样具有限制性。

“开源如果被滥用,则可能是欺诈性的。”开源软件发起人之一 Bruce Perens 评价道。如今,开源已经成为科技企业发展的标配,但也伴随着一些虚假开源宣传的事情发生。建造健康、可持续的开源生态仍任重而道远。

本文文字及图片出自 InfoQ


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK