许可·条件·限制一览
条件
- 源码分发时声明只有以源代码形式分发时才需附上声明,二进制形式不需要。
限制
- 责任限制明确声明不对损害承担责任。
- 无担保明确声明不提供任何担保。
许可·条件·限制分类来源:choosealicense.com(GitHub,MIT 许可证)数据。
这是什么样的许可证
Boost Software License 1.0 于 2003 年为 Boost C++ 库集合而制定。它是与 MIT 类似的宽松型许可证,不同之处在于条件只适用于源代码形式的副本。版权声明和许可证文本须包含在软件全部或部分的副本中,但如果该副本仅是由语言处理器(编译器)生成的机器可执行代码形式,则属于例外。Boost 和 Catch2 测试框架等都在使用。
为什么设定这样的条件
C++ 模板库的头文件代码会直接融入用户的可执行文件中。如果是 MIT,每次分发该可执行文件都要附上声明;而 BSL 去掉了这一负担,使用该库的最终用户产品无需设置声明界面。
分发时须遵守的事项
- 分发源代码时,保留版权声明和许可证文本。
- 只分发二进制时,没有声明义务。
常见误解
- 「BSL 就是 Business Source License」 — 在 SPDX 中,
BSL-1.0指 Boost 许可证。MariaDB、HashiCorp 等使用的 Business Source License 是BUSL-1.1,是完全不同的、非开源的源代码可见许可证。 - 「完全不需要声明」 — 分发源代码时需要。完全没有条件的是 0BSD。
如何应用
Boost 的惯例是将原文保存为 LICENSE_1_0.txt,并在每个源文件中加上「Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at https://www.boost.org/LICENSE_1_0.txt)」声明。在生成器的「文件头」标签页中选择官方声明即可生成这段文字。SPDX 标识符为 BSL-1.0。
适用场景
适合纯头文件 C++ 库,以及将用于游戏、嵌入式等难以设置声明界面的产品中的库。
BSL-1.0 代码能放进其他项目吗?
以下是将以此许可证发布的代码合并到下列许可证的项目中一起发布时的一般判定。 在兼容性检查器中查看其他组合 →
| 目标项目 | 判定 | 备注 |
|---|---|---|
| 专有(商业)软件 | 可以 | 以源代码形式分发时必须保留原有的版权与许可证文本(仅分发二进制时不需要)。 |
| MIT | 可以 | 以源代码形式分发时必须保留原有的版权与许可证文本(仅分发二进制时不需要)。 |
| Apache-2.0 | 可以 | 以源代码形式分发时必须保留原有的版权与许可证文本(仅分发二进制时不需要)。 |
| MPL-2.0 | 可以 | 以源代码形式分发时必须保留原有的版权与许可证文本(仅分发二进制时不需要)。 |
| LGPL-2.1 | 可以 | 以源代码形式分发时必须保留原有的版权与许可证文本(仅分发二进制时不需要)。 |
| LGPL-3.0 | 可以 | 以源代码形式分发时必须保留原有的版权与许可证文本(仅分发二进制时不需要)。 |
| GPL-2.0 | 可以 | 以源代码形式分发时必须保留原有的版权与许可证文本(仅分发二进制时不需要)。 |
| GPL-3.0 | 可以 | 以源代码形式分发时必须保留原有的版权与许可证文本(仅分发二进制时不需要)。 |
| AGPL-3.0 | 可以 | 以源代码形式分发时必须保留原有的版权与许可证文本(仅分发二进制时不需要)。 |
本网站内容仅为一般信息,不构成法律意见。实际发布、合同或纠纷的判断,请咨询律师等专业人士。