2022 年 8 月 LLVM 重新授权更新和进一步的帮助建议
上次关于 LLVM 重新授权的更新是 大约 8 个月前完成的。从那时起,我们取得了实质性的进展,因此我认为分享另一个更新是值得的。
简而言之:
- 在约 3200 万行代码中,我们已将尚未重新授权的代码行从 6% 减少到仅 2%。
- 8 个月前,我们还在寻找联系过去 20 年为 LLVM 做出贡献的 808 位个人的方法。我们现在已将该数字减少到 421 位个人。
- 我们还将需要重新授权协议的公司或大学数量从 133 家减少到 122 家。
继续阅读以了解我们如何取得如此大的进步,以及您如何帮助我们更接近将 LLVM 全面重新授权的目标。
首先,衷心感谢所有响应 2021 年 11 月的博客文章 和 2021 年 LLVM 开发者会议演示 中的帮助呼吁的人。如果没有您的行动,我们不可能取得如此大的进展!
除了收到更多重新授权协议外,我们还开始探索一些策略,这些策略在 之前的更新 中的“最终游戏”部分进行了描述,用于最终无法获得重新授权协议的代码部分,如以下部分所述。
原创性门槛
请记住,许可的存在是由于版权法 - 许可是 LLVM 中代码的版权所有者如何赋予用户和其他贡献者以许多有用和有趣的方式使用其代码的权利。
这也意味着,如果一段代码不受版权法的保护,则不需要它被许可证覆盖。
有些代码不受版权法的保护。例如,版权法包含一个名为 “原创性门槛” 的概念。这意味着一项作品需要“足够原创”,才能被视为受到版权保护。对于代码贡献,要被视为足够原创以受版权保护,可能会有许多不同的解释。开源项目中经常使用的一个门槛是假设任何少于 10 行代码的贡献都不符合原创性门槛,因此版权不适用。在 2022 年 5 月的董事会会议上,LLVM 基金会决定对重新授权项目做出同样的假设:假设少于 10 行代码的贡献不受版权保护。因此,我们不需要对这些贡献进行重新授权协议。
此外,还有一些提交似乎不符合“原创性门槛”,即使它们更改/添加了超过 10 行代码。我们也认为这些代码不需要重新授权协议。一个例子是 此提交,它只删除了几个句子末尾的句号。
不再存在于主干顶部的代码。
我们开始探索哪些尚未重新授权的代码仍然存在于当前的主干顶部代码库中。一些尚未覆盖的大型贡献不再存在,例如 Microblaze 和 PIC16 后端。我们手动检查并标记了只为这些后端做出贡献的提交,表明它们不需要重新授权协议。
为了帮助找到不再存在于代码库中的更多代码,我编写了一个简单的启发式脚本,它搜索当前的主干顶部,以查看来自特定提交的行是否仍然存在于代码库中。如果对于给定的提交,在当前的主干顶部找不到或很少找到行,那么这强烈表明该代码可能不再存在。该启发式脚本表明,对于大约 5% 的尚未重新授权的提交,该代码似乎不再存在。我仍然需要抽出时间手动验证这些提交中的代码确实不再存在于代码库中。这种手动验证是任何人都可以轻松帮助我的事情。如果您阅读本文后愿意自愿帮助我 - 请告诉我!
下一步
为了更接近 100% 的重新授权覆盖率,我认为以下是最有效力的下一步:
- 继续接受更多重新授权协议,来自个人和公司。一份最新的我们仍然需要获得协议的人员列表已发布为 电子表格。
- 我们发现,当公司可以获得一份他们同意重新授权的提交列表时,这将非常有帮助。如果您正在推进与公司签署协议,请发送电子邮件至 license-questions@llvm.org,要求提供该公司可能拥有版权的提交列表。
- 仔细检查那些看起来可能不再存在于主干顶部的提交,并手动验证它们。
您如何提供帮助?
-
您可以查看您是否认识 此最新的电子表格 中列出的任何个人。如果您认识其中任何一个人,请直接与他们联系 - 当您与我分享联系方式并依赖我联系他们时,我经常是瓶颈。如果他们有任何问题,我非常乐意尝试回答他们。
-
您可以查看您是否知道与剩余公司中的哪些人是合适的人联系,并直接与他们交谈或将他们的联系方式分享给我们,地址是 license-questions@llvm.org。他们也列在 同一个电子表格 中,在以“公司”开头的表格中。
-
如果您有兴趣帮助检查特定提交是否仍然存在于当前的代码库中,请通过 license-questions@llvm.org 联系我。