Mimemagic 許可證問題影響 50 萬余項目
上周,一個名為 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 類型數據庫。
本文轉自OSCHINA
本文標題:Mimemagic 許可證問題影響 50 萬余項目
本文地址:https://www.oschina.net/news/134862/mimemagic-liscense-problem