GPL-i rikkumise parandamine mimemaagilises teegis põhjustab Ruby on Railsis krahhi

Populaarse Ruby raamatukogu mimemagic, millel on üle 100 miljoni allalaadimise, autor oli sunnitud muutma oma litsentsi MIT-lt GPLv2-le, kuna projektis avastati GPLv2 litsentsi rikkumine. RubyGems säilitas ainult versioonid 0.3.6 ja 0.4.0, mis tarniti GPL-i alusel, ning eemaldas kõik vanemad MIT-litsentsiga väljaanded. Veelgi enam, mimemaagia arendamine peatati ja GitHubi hoidla viidi üle arhiveeritud olekusse.

Need toimingud põhjustasid võimetuse luua projekte, mis kasutavad mimemagicut sõltuvusena ja on litsentseeritud GPLv2-ga ühildumatute litsentside alusel. Mimemagicu uue versiooni kasutamisel peavad teiste projektide arendajad, sealhulgas omandiõigusega projektide (MIT-litsents lubab sellist kasutamist), oma koodi GPL-litsentsi alla ümber litsentseerima. Probleemi süvendas asjaolu, et vanemad MIT-litsentsiga versioonid polnud enam RubyGems.org-ist saadaval. Kui ehitus server Pakettide vahemällu salvestamine pole lubatud, projektide loomine mimemagicu varasemate versioonidega ebaõnnestub.

Löögi sai ka Ruby on Rails raamistik, mis laadib oma sõltuvuste hulka mimemaagiat. Ruby on Rails on litsentsitud MIT-i litsentsi alusel ja ei saa sisaldada GPL-komponente. Probleem on muutunud globaalseks – kui muudatus puudutas otseselt 172 paketti, siis sõltuvusi arvesse võttes oli mõjutatud üle 577 tuhande hoidla.

GPL litsentsi rikkumine mimemagic projektis on seotud faili freedesktop.org.xml edastamisega koodis, mis on MIME tüüpi andmebaasi koopia jagatud-mime-info teegist. Määratud faili levitatakse GPLv2 litsentsi alusel ja jagatud mime-teabe teek ise on litsentsitud ISC litsentsi alusel, mis ühildub GPL-iga. mimemagicu lähtekoodi levitatakse MIT-i litsentsi alusel ja komponentide levitamine GPLv2 litsentsi alusel eeldab tuletistoote levitamist GPLv2-ga ühilduva litsentsi alusel. Share-mime-info hooldaja märkas seda ja mimemaagia autor nõustus litsentsi muutmise nõudega.

Lahendus oleks XML-faili sõelumine käigu pealt, ilma et teegi osaks oleks freedesktop.org.xml, kuid mimemaagiline hooldaja külmutas projekti hoidla, nii et keegi teine ​​peaks selle töö kiiresti ära tegema. Võimalik, et kui mimemaagia autor ei soovi oma projekti uuesti tööle panna (ta on seni keeldunud), on vaja luua mimemaagia kahvel ja asendada sõltuvus kõigis sellega seotud projektides. Ühe võimalusena kaalutakse ka mimemaagiapõhiste projektide üleminekut libmagic raamatukogule.

Allikas: opennet.ru

Ostke DDoS-kaitsega saitide jaoks usaldusväärne hostimine, VPS VDS-serverid 🔥 Osta usaldusväärne veebimajutus DDoS-kaitsega, VPS VDS serverid | ProHoster