A fost lansată platforma descentralizată de dezvoltare colaborativă Radicle 1.6

A fost publicată versiunea 1.6 a platformei P2P Radicle, destinată creării unui serviciu descentralizat de dezvoltare și stocare a codului, similar cu GitHub și GitLab, dar fără a fi legat de servere specifice, rezistent la cenzură și funcționând cu resursele participanților la rețeaua P2P. Platforma sprijină elementele tipice de interacțiune socială pentru dezvoltatori, cum ar fi issue-urile, patch-urile și recenzile de cod. Proiectul este dezvoltat în limbajul Rust și distribuit sub licențele Apache 2.0 și MIT. Versiunile sunt disponibile pentru Linux și macOS. Se dezvoltă, de asemenea, un client desktop, o interfață web și o interfață de linie de comandă.

Radicle permite dezvoltarea și distribuția codului fără a depinde de platforme și corporații centralizate, la care legătura aduce riscuri suplimentare (punct unic de eșec, compania se poate închide sau poate schimba termenii de operare). Pentru gestionarea codului, Radicle utilizează Git-ul familiar, extins cu instrumente pentru identificarea repository-urilor în rețeaua P2P. Toate datele sunt în primul rând salvate local (conceptul local-first) și sunt întotdeauna accesibile pe computerul dezvoltatorului, indiferent de starea conexiunii la rețea.

Participanții oferă acces la codul lor și la artefactele asociate, cum ar fi patch-uri și discuții despre corectarea erorilor (issues), care sunt salvate local și replicate pe nodurile altor dezvoltatori interesați, conectați la rețeaua P2P descentralizată comună. În acest fel, se formează un repository Git global descentralizat, ale cărui date sunt replicate și duplicate pe diferite sisteme ale participanților.

Pentru determinarea nodurilor adiacente în rețeaua P2P se aplică protocolul Gossip, iar pentru replicarea datelor între noduri se folosește protocolul Heartwood, bazat pe Git. Deoarece protocolul se bazează pe Git, platforma se integrează ușor cu instrumentele existente pentru dezvoltare pe Git. Pentru identificarea nodurilor și validarea repository-urilor se utilizează criptografia cu chei publice, fără a folosi conturi. Autentificarea și autorizarea se realizează pe baza cheilor publice, fără autorități de certificare centralizate. servere.

Fiecare repository într-o rețea P2P are un identificator unic și este auto-certificat, adică toate acțiunile din repository, cum ar fi adăugarea de commit-uri și comentarii la issue-uri, sunt validate de proprietar cu o semnătură digitală, ceea ce permite verificarea corectitudinii datelor pe alte noduri fără a folosi autorități de certificare centralizate. Pentru a avea acces la repository, este suficient ca cel puțin un nod să fie online, pe care există o copie replicată a acestuia.

Nodurile din rețeaua P2P se pot abona la anumite repository-uri și pot primi actualizări. Este posibil să se creeze repository-uri private, accesibile doar anumitor noduri. Conceptul de «delegati» este folosit pentru gestionarea și deținerea unui repository. Un delegat poate fi atât un utilizator individual, cât și un bot sau un grup, legate de un identificator special. Delegatii pot accepta patch-uri în repository, pot închide issue-uri și pot seta drepturi de acces la repository. La fiecare repository pot fi atașați mai mulți delegati.

Repository-urile Radicle sunt stocate pe sistemele utilizatorilor sub formă de repository-uri git obișnuite, care conțin spații de nume suplimentare pentru stocarea datelor despre peeri și forcuri, cu care se lucrează în prezent. Discuțiile, patch-urile propuse și componentele pentru organizarea revizuirii sunt, de asemenea, salvate în repository-ul git sub formă de obiecte colaborative (COB — Collaborative Objects) și sunt replicate între peeri.

În noua versiune:

  • Implementarea nodului Radicle (radicle-node) a fost transformată pentru a utiliza biblioteca de input/output Mio. Pachetele netservices, io-reactor și popol, care împiedicau atingerea unui nivel adecvat de multiplatformă, au fost excluse din dependențe. A fost adăugat un nou modul reactor, în cadrul căruia io-reactor a fost rescris pe baza Mio.
  • Tranzitia la Mio a permis implementarea suportului pentru platforma Windows, care deocamdată are statut experimental.
  • Codul pentru analiza argumentelor din linia de comandă a fost transformat pentru a utiliza biblioteca clap, ceea ce a uniformizat comportamentul la analiza argumentelor și a adus utilității rad caracteristici precum generarea automată a sugestiilor pentru comenzi, furnizarea de recomandări pentru remedieri de erori, evidențierea ieșirii și completarea automată a comenzilor.
  • În radicle-node a fost adăugat suport pentru mecanismul systemd Credentials pentru transmiterea sigură a cheilor de acces (xyz.radicle.node.secret) și a parolelor pentru decriptare (xyz.radicle.node.passphrase) în plus față de utilizarea variabilei de mediu RAD_PASSPHRASE, opțiunea din linia de comandă '—secret' și parametrii din fișierul de configurare.
  • Cerințele pentru versiunea minim suportată a compilatorului Rust au fost ridicate la 1.85.

Sursa: opennet.ro

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster