VĂ€lja antud P2P platvormi Radicle 1.6, mille eesmĂ€rk on luua detsentraliseeritud ĂŒhise arendamise ja koodi sĂ€ilitamise teenus, mis sarnaneb GitHubi ja GitLabi, kuid ei ole seotud konkreetsete serveritega, ei allu tsensuurile ja töötab P2P vĂ”rgu liikmete ressursside abil. Platvorm toetab tĂŒĂŒpilisi arendajate sotsiaalse suhtluse elemente, nagu probleemid, plaastrid ja koodi ĂŒlevaated. Projekti teosed on kirjutatud Rust keeltes ja levitatakse Apache 2.0 ja MIT litsentside alusel. Koostatud versioonid on saadaval Linuxile ja macOS-ile. TĂ€iendavalt arendatakse lauaarvuti klienti, veebiliidest ja konsooli liidest.
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.
Naabrite mÀÀratlemiseks P2P-vĂ”rgus kasutatakse Gossip protokolli, andmete replikatsiooniks sĂ”lmede vahel aga Heartwood protokolli, mis pĂ”hineb Git'il. Kuna protokoll pĂ”hineb Git'il, on platvormi lihtne integreerida olemasolevate Git arendusvahenditega. SĂ”lmede tuvastamiseks ja hoidlate autentimise tagamiseks kasutatakse avaliku vĂ”tme krĂŒptograafiat, ilma kasutajakontode kasutamiseta. Autentimine ja autoriseerimine toimub avalike vĂ”tmete alusel ilma tsentraliseeritud sertifitseerimise sĂŒsteemita. serverid.
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.
Radicle hoidlaid hoitakse kasutajate sĂŒsteemides tavaliste git-hoidlate kujul, mis sisaldavad lisaneide peeride ja harude andmete salvestamiseks, millega tehakse praegust tööd. Arutelud, esitatud patch'id ja ĂŒlevaatusorganisatsiooniks vajalikud komponendid salvestatakse samuti git-hoidlasse koostöö objektidena (COB â Collaborative Objects), ning need replitseeritakse peeride vahel.
Uues vÀljaandes:
- Radicle sĂ”lme (radicle-node) teostused on ĂŒle viidud Mio sisend-/vĂ€ljundraamatukogule. Oluliseks sĂ”ltuvustest on vĂ€lja jĂ€etud netservices, io-reactor ja popol paketid, mis takistasid piisava mitmekesise platvormi taseme saavutamist. Lisatud on uus reaktori moodul, mille raames io-reactor on kirjutatud Mio baasil ĂŒmber.
- Ăleminek Mio-le vĂ”imaldas ellu viia Windowsi toe, mis on hetkel eksperimentaalses staatuses.
- Kood kĂ€surea argumentide tĂ”lgendamiseks on viidud ĂŒle clap raamatukogule, mis ĂŒhtlustas argumentide tĂ”lgendamise kĂ€itumist ja tĂ”i utiliiti rad sellised vĂ”imalused nagu automaatne kĂ€su vihjete genereerimine, vigu parandavate soovituste vĂ€ljastamine, vĂ€ljundi esiletĂ”stmine ja kĂ€skude automaatne tĂ€iendamine.
- Radicle-node-sse on lisatud toetus systemd Credentialsi mehhanismile turvaliseks juurdepÀÀsuvĂ”tmete (xyz.radicle.node.secret) ja nende dekrĂŒpteerimise paroolide (xyz.radicle.node.passphrase) edastamiseks, lisaks RAD_PASSPHRASE keskkonnamuutuja, kĂ€surida valiku ââsecretâ ja konfiguratsioonifaili parameetrite kasutamisele.
- Rust kompilaatori minimaalne toetatav versioon on tÔstetud tasemele 1.85.
Allikas: opennet.ru
