Radicle 1.0 versioon tutvustati, mis on suunatud detsentraliseeritud koostöö- ja koodihaldusteenuse loomisele, sarnanedes GitHubi ja GitLabiga, kuid ilma konkreetsete serverite sĂ”ltuvuseta, tsensuuri all olemata ja kasutades P2P-vĂ”rgu osalejate ressursse. 1.0 versioon tĂ€histas protokolli stabiliseerumist ja platvormi valmisolekut laiemaks kasutamiseks. Alates sellest vĂ€ljaandest muutub protokoll tagasiĂŒhilduvuse sĂ€ilitamisega ning tööriistakomplekt sisaldab vĂ”imalusi olemasolevate sĂŒsteemide sujuvaks uuendamiseks uuele versioonile. Projekti kogemused on kirjutatud Rusti keeles ja litsentseeritud Apache 2.0 ja MIT all. Kogumikud on ette valmistatud Linuxi ja macOS-i jaoks. Lisaks arendatakse töölauaklienti, veebiliidest ja kĂ€surealiidest.
Radicle vĂ”imaldab arendamisel ja koodi levitamises mitte sĂ”ltuda tsentraliseeritud platvormidest ja ettevĂ”tetest, mille kĂŒlge kinnitumine toob kaasa tĂ€iendavaid riske (ĂŒhtne rikke punkt, ettevĂ”te vĂ”ib sulgeda vĂ”i muuta töötingimusi). Koodi haldamiseks kasutatakse Radicle'is tuttavat Git'i, mida on laiendatud P2P-vĂ”rgus hoonete mÀÀratlemise vahenditega. KĂ”ik andmed salvestatakse esmajĂ€rjekorras kohapeal (local-first) ja on alati arendaja arvutis saadaval, sĂ”ltumata vĂ”rguĂŒhenduse olekust.
Osalised annavad ligipÀÀsu oma koodile ja sellega seotud artefaktidele, nagu plaastrid ja vigade arutelu (issues), mis salvestatakse kohapeal ja replikeeruvad teiste huvitatud arendajate sĂ”lmedesse, ĂŒhendatud ĂŒhisesse detsentraliseeritud P2P-vĂ”rku. LĂ”pptulemusena moodustub globaalne detsentraliseeritud Git-repositoorium, mille andmed on replikeeritud ja dubleeritud erinevates osalejate sĂŒsteemides.
P2P-vĂ”rgus naabruspunktide mÀÀramiseks kasutatakse Gossip protokolli ja andmete replikeerimiseks sĂ”lmede vahel Heartwood protokolli, mis pĂ”hineb Git'il. Kuna protokoll pĂ”hineb Git'il, on platvormi lihtne integreerida olemasolevate Git-arendusvahenditega. SĂ”lmede identifitseerimiseks ja repositooriumide kontrollimiseks kasutatakse avaliku vĂ”tme krĂŒptograafiat, ilma kontode kasutamiseta.
Iga P2P-vĂ”rgus olevatel hoidlatel on oma ainulaadne identifikaator ja need on ise-sertifitseeritud, st kĂ”ik toimingud hoidlates, nĂ€iteks commitide lisamine ja probleemide (issue) kommentaaride jĂ€tmine, kinnitatakse digitaalallkirjaga, mis vĂ”imaldab andmete Ă”igsust muudel sĂ”lmedel kontrollida ilma tsentraliseeritud sertifitseerimiskeskusteta. Hoiuldi juurde pÀÀsemiseks piisab, kui vĂ€hemalt ĂŒks sĂ”lm on online ja sellel on hoidla replikeeritud koopia.
SĂ”lmed P2P-vĂ”rgus saavad tellida teatud hoidlaid ja saada uuendusi. Saadaval on privaatsete hoidlate loomine, mis on ligipÀÀsetavad ainult teatud sĂ”lmedele. Hoidla haldamiseks ja omamiseks kasutatakse âdelegaadiâ (delegates) kontseptsiooni. Delegaadiks vĂ”ib olla nii ĂŒksikasjalik kasutaja kui ka bot vĂ”i grupp, mis on seotud spetsiaalse identifikaatoriga. Delegaadid saavad hoidlasse lisada patĆĄe, sulgeda probleeme ja mÀÀrata hoidla juurdepÀÀsuĂ”igusi. Iga hoidla juurde vĂ”ib olla seotud mitu delegaati.
Kasutajate sĂŒsteemides hoitakse Radicle-hoidlaid tavalistes git-hoidlates, kus on lisaruumi piraatide ja harulduste andmete salvestamiseks, millega praegu töötatakse. Arutelud, pakutud patĆĄid ja ĂŒlevaatamiseks mĂ”eldud komponendid salvestatakse samuti git-hoidlates koostööobjektidena (COB - Collaborative Objects) ja replikatsioon toimub piraatide vahel.
Radicle 1.0 sisaldab:
- MÔÔdetava protokolli rakendamist P2P-vĂ”rgu töö ja andmete sĂŒnkroniseerimise korraldamiseks.
- Sotsiaalse interaktsiooni elemendid, nÀiteks probleemid, patƥid ja koodivaatamised.
- Avalehtedele keskenduv autentimise ja autoriseerimise protokoll, mis töötab ilma tsentraliseeritud sertifitseerimiseta. serverid.
- CLI-liidese, mis on tuttav kasutajatele, kes tunnevad Git'i.
- Veebiliides hoidlate ja sÔlmede navigeerimiseks.
- Privaatsuse tagamise vahendid, sealhulgas privaatsete hoidlate tugi ja vĂ”imalus töötada anonĂŒĂŒmses Tor-vĂ”rgus.
- Toetab korduvaid kogumisi, et kontrollida, et levitatavad tÀidetavad failid on koostatud vÀidetud lÀhtekoodidest.
Veel mitte valmis funktsioonid, mis on arendamisel:
- Sisseehitatud tööriistad pidevaks integreerimiseks (CI) ja pidevaks tarnimiseks (CD).
- Radicle TUI (Terminali Kasutajaliides) konsooli liides.
- TĂ€psemad muutuste ĂŒlevaatamise vĂ”imalused.
- Muudatuste teavitamise sĂŒsteem hoidlas.
- Kasutajaprofiilide tugi ja mitme seadme sidumise vÔimalus.
- Siltide tugi.
- Sisuhaldustööriistad node'ide modereerimiseks ja haldamiseks.
- Töölauaprogramm.
Allikas: opennet.ru
