說到開源,大家都以為是免費 自由,其實非也。
每個開源的程序員追求都不一樣,有的開發者隻是想專心敲代碼,并不會去約束别人對代碼的使用範圍,開源閉源都可以。有的人是希望開源之後得到更廣泛的應用和分享以及改進,希望使用開源的人也可以堅持開源。
所以為了保證大家的熱情,也就有了開源許可協議。這份協議就是規定使用開源項目的時候應該負什麼樣的權力和責任。
mimemagic的Ruby庫因為包含了與其自身許可證不兼容的部分代碼,導緻包括Ruby on Rails在内的五十多萬個項目受到影響。
開源協議并不兼容shared-mime-info 軟件庫的維護者 Bastien Nocera 告知 mimemagic 庫的維護者 Daniel Mendler:mimemagic 中包含了 shared-mime-info 的代碼。不巧的是, mimemagic 庫采用的是 MIT 許可證,而 shared-mime-info 遵循的是 GPLv2 許可證,兩者并不兼容。
帖子大緻内容是,使用GPL文件作為源代碼會讓你的整個代碼庫成為衍生代碼,因為需要使用其全部采用GPL許可證,所以我認為有人在純MIT代碼庫或者閉源應用程序中使用它之前,改正這個問題。
随機mimemagic發布的最新版本0.4.0和0.3.6從MIT轉移至GPLv2,并表示了對Ruby開發者使用的餓軟件包注冊并撤回了之前的版本。
這件事情并沒有就此結束,雖然mimemagic維護者的動作快,但還是引發一場混亂。
影響之大Ruby on Rails都受到了影響。截止目前,這件事影響了175個軟件包,涉及到了578404個不同的軟件庫存儲,其中就包括Ruby on Rail。
目前Rails團隊正在研究替換方案,不管是考慮采用2-clause BSD許可的libmagi 或者mime數據的Ruby轉換,哪種方式實行起來都非常難。
引發熱議
有的評論人說許可證很重要,但是對于普通用戶隻是想讓事情正常運行。也有的人表示非常不喜歡GPL,準确的說是非常不喜歡那些對“衍生”的意思有不合理切籠統想法的人。
對于這件事,你怎麼看呢?歡迎留言讨論battle~
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!