每年的这个时候,我们的思绪都会转向版权。或者说,可能更多地转向版权。毕竟,开源是基于版权法运作的。您可能已经知道,版权法赋予作品作者复制(以及其他事项)其作品的专有权利。这些权利在作品以有形媒介固定下来(书写下来、保存到磁盘等)后立即生效。因此,开源许可证授予的权利依赖于版权法。
但是具体授予了哪些权利?这取决于开发者选择哪个许可证。大多数项目使用几种标准许可证之一,但它们并不总是被清晰地传达。例如,一个项目可能以“GNU 通用公共许可证 (GPL)”发布。但是哪个版本?接收者是否可以选择更高版本(如果他们愿意)?
软件软件包数据交换 (SPDX) 是 Linux 基金会的一个项目,旨在通过定义信息报告标准来帮助减少软件的歧义性。许可证就是其中一项信息。SPDX 提供了一种格式,用于列出适用于软件包的特定许可证变体和版本。拥有超过 300 个许可证,您很可能找到您使用的那个。许可证列表包含人性化的名称、短名称以及指向完整许可证文本的链接。SPDX 还提供了指南,用于将许可证文件的文本与许可证的官方文本进行匹配。
SPDX 工作组最近发布了许可证列表的 3.0 版本。这个主要修订版包括对 GPL 版本的明确标识符、改进的匹配指南以及列表的新主格式。新格式取代了电子表格和文本文件,转而使用 XML 风格的模板。这允许更丰富地表达许可证中的字段。
拥有一个明确的许可证沟通机制对于开发者来说可能看起来不是很重要,但对于下游开发者来说却很重要。对于可能需要向其客户提供包含组件软件包的物料清单的商业开发者来说尤其如此。或者,法律部门可能想知道正在使用哪些开源许可证,以便他们可以帮助确保合规性。
无论出于何种原因,借助 SPDX 标准和工具(例如 SPDX 工作组自己的社区支持 或 商业工具),开发者都有一种以清晰易懂的方式沟通软件许可证的方法。
2 条评论