探讨PostgreSQL是否会变更其开源许可协议

发表时间: 2024-03-27 07:25

声明:我是 PostgreSQL 核心团队的一员,但本文中所写的是我个人观点,非官方项目声明……除非我链接到的是官方项目声明

今天我非常遗憾地得知 Redis 项目将不再以开源许可证发布。有两个原因让我感到遗憾:作为一个长期使用 Redis 和很早接纳它的用户,以及作为一个开源贡献者。我要预先声明的是,我很理解围绕开源建立业务的挑战,因为我处在这个方程的多个方面。我也意识到这些变化的下游效应,它们可以完全改变用户如何采纳和使用一种技术。

每当开源许可证发生变化,特别是在数据库和相关系统中(首先想到的是 MySQL => Sun => Oracle),我都会听到这个问题,“PostgreSQL 会更换它的许可证吗?”

PostgreSQL 的网站有答案:

PostgreSQL 会在其他许可证下发布吗?PostgreSQL 全球开发组承诺将 PostgreSQL 永久作为自由和开源软件提供。我们没有计划更改 PostgreSQL 许可证或以其他许可证发布 PostgreSQL。

(声明:我确实帮忙写了上面的段落)。

PostgreSQL 许可证(又称“License"——我和 Dave Page 会以此为乐)是一个开源倡议(OSI)认可的许可证,采用了非常开放的模型。在问到它最接近哪种许可证时,我倾向于参考 Tom Lane 在 2009 年写的这封邮件。

然而,有几个原因说明 PostgreSQL 不会更改它的许可证:

它是“PostgreSQL 许可证”——当项目已经以项目命名的许可证,为什么要更改许可证呢?

PostgreSQL 项目始于协作开源工作,旨在防止单一实体控制。这在项目的精神中持续了近30年,甚至在整个项目政策中都有体现。

Dave Page 在这封邮件中明确表示 :

那么问题就变成了 - PostgreSQL 有什么理由更改其许可证吗?这些变化通常是商业决定的一部分- 但是似乎 PostgreSQL 周围的业务跟它的功能集一样强大。Ruohang Feng (Vonng) 最近写了一篇博客文章,强调了只是基于 PostgreSQL 构建的 PostgreSQL 软件和商业生态系统的一部分,这只有通过 PostgreSQL 许可证才有可能。我之所以说“只是一部分”,是因为有更多的历史和当前的项目以及商业活动,都是建立在 PostgreSQL 代码库的某部分之上。虽然其中许多项目可能在不同的许可证下发布或是闭源的,但它们都有助于驱动 PostgreSQL 的采纳,并有助于使 PostgreSQL 协议无所不在。

但是,PostgreSQL 不会更改其许可证的最大原因是,这会对所有 PostgreSQL 用户产生不好的影响。建立对通常用于应用程序最关键部分的技术:存储和检索数据的信任,需要很长时间。PostgreSQL 以其经过验证的架构,可靠性,数据完整性,丰富的功能集,可扩展性以及背后的开源社区对软件的持续传递性能和创新解决方案的献身精神赢得了良好的声誉。更改 PostgreSQL 的许可证将会破坏项目过去(近) 30 年来积累的所有商誉。

虽然 PostgreSQL 项目的确存在不完善的部分(我肯定也有助于这些不完善),但 PostgreSQL 许可证对于 PostgreSQL 社区和开源社区来说是一份真正的礼物,我们将继续珍视它,帮助保持 PostgreSQL 真正的自由和开源。毕竟,官网上就这么说


注:本文翻译自postgre官方blog

https://jkatz.github.io/post/postgres/postgres-license-2024/