Cinci foști întreținători ai proiectelor RubyGems.org, RubyGems și Bundler, printre care proprietarul mărcii Bundler, au anunțat crearea unui proiect alternativ - Gem Cooperative, care este controlat de comunitate și utilizează un model deschis de gestionare, inspirat de proiectul Homebrew. În acest moment, proiectul a lansat gem-serverul gem.coop, care conține toate pachetele din catalogul RubyGems.org și este sincronizat cu acesta. Se declară compatibilitate totală cu sistemul de gestionare a pachetelor RubyGems și managerul de dependențe Bundler.
Serverul funcționează deocamdată în modul oglindă pentru RubyGems.org, iar funcționalitatea pentru publicarea pachetelor este planificată să fie adăugată în lunile următoare. Pentru a comuta la alternativa serverul este suficient să înlocuiești în gemfile valoarea parametrului source din «https://rubygems.org» în «https://gem.coop».
Întreținătorii fondatori ai Gem Cooperative au fost suspendați de la muncă după un incident cu organizația non-profit Ruby Central, care coordonează desfășurarea conferinței RubyConf și este responsabilă pentru menținerea infrastructurii pentru funcționarea serviciului RubyGems.org. În septembrie, Ruby Central a obținut controlul complet asupra depozitelor GitHub, în care se desfășoară dezvoltarea RubyGems, rubygems.org și Bundler, și a decis să excludă toți întreținătorii externi. În plus, întreținătorii externi au fost restricționați de la accesul la pachetele gem bundler și rubygems-update.
Îndepărtarea întreținătorilor care nu au lucrat conform contractului cu Ruby Central a fost efectuată după consultarea cu avocații și pe baza rezultatelor unui audit de securitate a infrastructurii. Ca motiv pentru concentrarea puterii de management în aceleași mâini a fost menționată grija pentru securitate și protecția împotriva atacurilor de tipul „supply chain”. Ruby Central încearcă să minimizeze accesul la depozite și să excludă existența accesului complet privilegiat la depozite pentru persoanele care nu sunt responsabile și nu poartă răspundere directă.
În afară de mentenanții excluși forțat, printre fondatorii serviciului alternativ Gem Cooperative se numără și Ellen Dash, care în septembrie a demisionat din compania Ruby Central și și-a dat demisia din funcția de mentenor ca semn de protest împotriva acțiunilor Ruby Central, pe care Ellen le-a caracterizat ca o preluare ostilă a proiectului. Potrivit lui Ellen, acțiunile Ruby Central au fost nedrepte, iar persoane meritorii, care și-au câștigat reputația, au fost excluse, după ce au gestionat RubyGems și Bundler timp de mai bine de zece ani.
Joel Drapper, mentenor al pachetelor gem Phlex și Literal, fost angajat al companiei Shopify, un sponsor cheie al Ruby Central, consideră de asemenea că acțiunile Ruby Central reprezintă o preluare a repository-urilor GitHub, anterior controlate de comunitate. Potrivit lui, compania Ruby Central, care asigură funcționarea serviciului RubyGems.org, nu avea nevoie de revendicarea repository-urilor github.com/rubygems, deoarece controla în totalitate codul utilizat pentru organizarea funcționării serviciului RubyGems.org. Revendicarea drepturilor asupra repository-urilor cu codul folosit pentru a rula serviciul este comparată cu revendicarea drepturilor asupra unei biblioteci de funcții bazate pe utilizarea acesteia într-o aplicație.
Între timp, în comunitatea dezvoltatorilor Ruby apare un alt conflict — a fost publicată o scrisoare deschisă prin care se face apel la crearea unui fork al framework-ului Ruby on Rails, independent de creatorul său, David Heinemeier Hansson. Acestuia i se reproșează exprimări rasiste și transfobe, necorespunzătoare unui lider al comunității (de exemplu, comentariile rasiste se reduc la faptul că într-o notă, David a subliniat că Londra nu mai este plină de britanici autohtoni). Scrisoarea deschisă a fost deja semnată de peste 140 de participanți. Printre semnatari se numără Tim Bray (coautor al specificației XML), Jeff Atwood (co-fondator Stack Overflow și Discourse) și Evgheni Roșko (creatorul rețelei sociale Mastodon).
Sursa: opennet.ro
