Mimemagic 许可证问题影响 50 万余项目

时间:2021-05-02

上周,一个名为 mimemagic 的 Ruby 库因许可证问题引发了包括 Ruby on Rails 在内的数十万个项目的混乱。

事情的起因是一个名 Bastien Nocera 的 shared-mime-info 的软件库维护者通知了 Ruby 库 mimemagic 的维护者 Daniel Mendler,该库包含了 Nocera 的代码,而 shared-mime-info 是在 GPLv2 许可证下授权的,mimemagic 是在 MIT 许可证下授权的,两者并不兼容。

Mendler 得知此事后向 Nocera 表示感谢,并立即将最新的 0.4.0 和 0.3.6 版本移到 GPLv2 下,将之前的版本从 Ruby 开发者使用的包注册表 RubyGems.org 上撤销了发布。随后他将 mimemagic 的 GitHub 仓库归档,这意味着它不再被积极开发。

然而不幸的是,网络开发框架 Ruby on Rails 由于依赖 mimemagic 0.3.5 而受到影响。此外,该事还影响了 172 个其他软件包,它们之间涉及 577148 个不同的软件仓库。这些项目不一定会立即受到影响,但当时任何试图从 RubyGems.org 获取已撤销版本的 mimemagic 的构建过程都会失败,除非已实现了依赖缓存。

随后,Ruby on Rails 讨论了诸多解决方案,包括使用替代产品,比如 2-clause BSD 授权的 libmagic 或实现一个 mime 数据库的 Ruby 版本,但这么做工作量很大;或者将 Ruby on Rails 由 MIT 迁移到 GPLv2,但这么做也会给其它项目带来巨大影响。

最后,mimemagic 于周四发布了更新 0.4.1,恢复了 MIT 许可,并删除了 GPL 覆盖的代码。作为替代的是,用户现在必须自己提供 mime 类型数据库。

本文地址:https://www.oschina.net/news/134862/mimemagic-liscense-problem

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章