一句话:通过人工分析 1,200 条开源许可讨论,构建许可 bug 分类目录并揭示其影响与新型 bug。
软件许可证决定源码或二进制能否被修改、复用和再分发;宽松、限制性及自定义许可证并存,容易使开发者和组织困惑,并引入许可 bug,且不限于已知的许可证不兼容问题。本文对开源社区 issue tracker 与五个法律邮件列表中的 1,200 条许可相关讨论进行人工分析,构建许可 bug 类型目录,并评估这些 bug 对软件项目的影响。研究发现先前文献未涉及的新型许可 bug,并给出其影响的具体评估。
Software licenses dictate how source code or binaries can be modified, reused, and redistributed. In the case of open source projects, software licenses generally fit into two main categories, permissive and restrictive, depending on the degree to which they allow redistribution or modification under licenses different from the original one(s). Developers and organizations can also modify existing licenses, creating custom licenses with specific permissive/restrictive terms. Having such a variety of software licenses can create confusion among software developers, and can easily result in the introduction of licensing bugs, not necessarily limited to well-known license incompatibilities. In this work, we report a study aimed at characterizing licensing bugs by (i) building a catalog categorizing the types of licensing bugs developers and other stakeholders face, and (ii) understanding the implications licensing bugs have on the software projects they affect. The presented study is the result of the manual analysis of 1,200 discussions related to licensing bugs carried out in issue trackers and in five legal mailing lists of open source communities. Our findings uncover new types of licensing bugs not addressed in prior literature, and a detailed assessment of their implications.
@inproceedings{paperbot4396,
title = {To distribute or not to distribute?},
author = {Christopher Vendome and Daniel M. German and Massimiliano Di Penta and Gabriele Bavota and Mario Linares-Vásquez and Denys Poshyvanyk},
booktitle = {ICSE},
year = {2018},
doi = {10.1145/3180155.3180221}
}