全国免费咨询:

13245491521

VR图标白色 VR图标黑色
X

中高端软件定制开发服务商

与我们取得联系

13245491521     13245491521

2021-04-11_Ruby大“翻车”:代码库因许可证失误被下架,致50 万个项目陷入混乱

您的位置:首页 >> 新闻 >> 行业资讯

Ruby大“翻车”:代码库因许可证失误被下架,致50 万个项目陷入混乱 作者 | Thomas Claburn译者 | Sambodhi策划 | 刘燕 本文最初发表于 The Register,经原作者 Thomas Claburn 授权,InfoQ 中文站翻译并分享。 3 月 31 日,软件库 shared-mime-info 的维护者 Bastien Nocera 通知了 Ruby 库 - mimemagic 的维护者 Daniel Mendler,该库包含了 Nocera 的代码,而它使用了一种不兼容的软件许可来发布 mimemagic。 shared-mime-info 库已经在 GPLv2 下获得许可,而 mimemagic 被列为 MIT 许可项目。 “使用一个 GPL 文件作为源文件,会让你的整个代码库成为一个衍生作品,使其全部成为 GPL,因此,我认为在有人将它用于纯 MIT 代码库或闭源应用之前,先解决这个问题,非常重要。”Nocera 在一个 Issues 帖子 中写道。 “现在迫切需要把 GPL 头重新添加到 shared-mime-info XML 文件。这是 tarball 发行版中用于合并转换的工具的一部分,但是在同一文件的 .in 版本中可见。” Mendler 感谢 Nocera 的通知,并立即将最新版本 0.4.0 和 0.3.6移至 GPLv2 下,同时撤销了之前发布在 RubyGems.org 上的版本,rubygems 是 Ruby 开发者所用的软件包注册表。然后他将 mimemagic 的 GitHub repo 存档,这意味着它不再被积极地开发了。 遗憾的是,这一举动 破坏 了 Ruby on Rails 这个流行的 Web 开发框架,它包含了 mimemagic 0.3.5 作为依赖项。这也 影响 了其他 172 个软件包,其中包含了 577148 个不同的软件库。 并不是所有这些项目都会立即受到影响,但是,如果不实现依赖性缓存,任何从 RubyGems.org 获取已撤回版本的 mimemagic 的构建过程都将失败。 包含 mimemagic 的软件项目现在必须考虑包含 GPLv2 许可代码的影响,在某些情况下这可能是不能接受的。假如这样做在法律上和实践上可行,他们可以切换到 0.3.6 或 0.4.0 版本的库。 诸如由英国政府商业、能源和工业战略部运营的 Web 应用、FileStack CMS 的 Ruby SDK、基于 Rails 的可标记图片应用 Danbooru 等项目,都在考虑如何解决这一问题,这让人想起了 2016 年的 Left-Pad 事件。 因为 mimemagic 主要是 一个 mime 类型数据映射的数据库,所以 Rails 团队正在考虑 其他选择,包括 2-clause BSD 授权的 libmagic 或 mime 数据的 Ruby 转换。但是,要达到这个目标,还有很多事情要做。 至于其他人,Shopify 应用制造商 ASoft 的创始人 Sergey Alekseev 要求 Mendler保持 mimemagic repo 的活动状态,这样其他受影响的项目就可以在这里讨论它们的选择。 但是 Mendler 并 不同意,他说:“Rails 的依赖关系无疑是影响最大的。要是我们能找到一个适合 Rails 的解决方案,并得到 Rails 团队的认可,那就更好了。” 开源许可顾问 Paul Berg 在一封电子邮件中对 The Register 表示,尽管目前形势艰难,但是似乎相关开发人员已经做好了准备。 “因为依赖的 mimemagic 库的维护者发现它包含 GPL 代码,他们就转而采用了 GPL 许可。”他说,“令人钦佩的是,一旦发现问题,他们就会做出反应,而不是对此保持沉默,让问题继续存在下去。” “然而,这确实给 Rails 带来了一个重大问题,”Berg 说。“Rails 广泛用于 MIT 许可下的应用,MIT 许可是一种允许性许可。因为很多应用程序是使用 Rails 编写的,假定这些应用程序不受 GPL 版权保护,所以很有可能其中很多应用程序不符合 GPL 条款,因为它们在部署时没有考虑到这些条款。” “所以,将 Rails 重新许可给 GPL,使 Rails 符合要求,这对成千上万的团队来说,很可能是一个巨大的变化,实际上不是一个可行的解决方案。遗憾的是,其他解决方案很可能并不容易。” Berg 表示,mimemagic 可以尝试替换 GPL 部分代码,并保留其 MIT 许可。他说,另一个选择是 Rails 完全取代 mimemagic,前提是存在合适的替代方案。 “不管怎样,由于 Rails 的普及,它在行业中的重要性不言而喻,解决这一问题在短期内可能不会是一件小事。”他说。“我并不羡慕他们的处境。” “这就解释了当你引入所有的依赖性和重用代码时,为什么一定要认真地列出它们,并努力确保这些依赖性的许可与你的意图相一致。这一点非常重要。” 最新情况:4 月 1 日,mimemagic 更新到了 v0.4.1,恢复了 MIT 许可,并删除了 GPL 覆盖的代码:theFreedesktop.org 共享的 Mime Types 数据库。现在用户必须自己提供。0.3.6 和 4.0 版本已经废除,这让很多人感到很沮丧。 作者介绍:Thomas Claburn,居住在旧金山湾区,负责 The Register 的软件开发、DevOps、计算机安全等栏目。 原文链接: https://www.theregister.com/2021/03/25/ruby_rails_code 你也「在看」吗??? 阅读原文

上一篇:2025-06-15_「转」被骂“在乱讲”的专家,这次可能说对了:传统数据仓库正在被 Agentic AI 吞噬 下一篇:2019-05-08_「转」Oracle中国研发中心裁员已定:首批900人,赔偿N+6

TAG标签:

19
网站开发网络凭借多年的网站建设经验,坚持以“帮助中小企业实现网络营销化”为宗旨,累计为4000多家客户提供品质建站服务,得到了客户的一致好评。如果您有网站建设网站改版域名注册主机空间手机网站建设网站备案等方面的需求...
请立即点击咨询我们或拨打咨询热线:13245491521 13245491521 ,我们会详细为你一一解答你心中的疑难。
项目经理在线

相关阅读 更多>>

猜您喜欢更多>>

我们已经准备好了,你呢?
2022我们与您携手共赢,为您的企业营销保驾护航!

不达标就退款

高性价比建站

免费网站代备案

1对1原创设计服务

7×24小时售后支持

 

全国免费咨询:

13245491521

业务咨询:13245491521 / 13245491521

节假值班:13245491521()

联系地址:

Copyright © 2019-2025      ICP备案:沪ICP备19027192号-6 法律顾问:律师XXX支持

在线
客服

技术在线服务时间:9:00-20:00

在网站开发,您对接的直接是技术员,而非客服传话!

电话
咨询

13245491521
7*24小时客服热线

13245491521
项目经理手机

微信
咨询

加微信获取报价