Tutvustatakse Radicle P2P platvormi versiooni 1.5, mis on suunatud detsentraliseeritud koostöökeskkonna ja koodi salvestamise teenuse loomisele, mis sarnaneb GitHubi ja GitLabi, kuid ei ole seotud konkreetsete serveritega, ei ole tsenseeritav ja töötab P2P vĂ”rgu osalejate ressursside abil. Platvorm toetab arendajate sotsiaalse suhtluse tĂŒĂŒpe, nagu probleemid, plaastrid ja koodi ĂŒlevaated. Projekti arendused on kirjutatud Rust keeles ning levitatakse Apache 2.0 ja MIT litsentside alusel. Versioonid on ette valmistatud Linuxi ja macOS jaoks. Lisaks arendatakse töölauakliendi, veebiliidese ja konsooli liidese vĂ”imalusi.
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:
- Parandatud on tugi bare-repositsioonidele, mis ei sisalda töökatalooge projektifailide koopiatega, vaid ainult muudatuste ajaloo ja metaandmed, nagu harud ja sildid. KĂ€sku ârad cloneâ on lisatud valik ââbareâ, mis vĂ”imaldab kloonida repositsiooni ilma töökataloogita. Utiliidis âgit-remote-radâ on paranenud bare-repositsioonide kĂ€sitlemine, kui kasutada âgit pushâ ja âgit fetchâ kĂ€ske vĂ€lise rad-serveri osas.
- On lisatud seadistus âpatch.branchâ, mida saab kasutada utiliidis git-remote-rad (âgit-remote-rad -o patch.branch[=<name>]â) plaastri lisamisel automaatse haru loomiseks upstream-repositsioonis, ilma et peaks kasutama kĂ€sku ârad patch checkoutâ.
- Parandatud on kĂ€su ârad patch showâ vĂ€ljund, mis nĂ€itab nĂŒĂŒd plaastri algset versiooni, mida nĂ€idati varem ainult ââverboseâ lipu korral. KĂ”ik ĂŒlevaated nĂ€idatakse nĂŒĂŒd ainulaadses ajakavas ilma eristamata originaalautori ja teiste osalejate muudatusi.
- On lisatud vĂ”imalus logide esitamiseks struktureeritud kujul, mis aktiveeritakse valikutega ââlog-logger structuredâ ja ââlog-format jsonâ.
Allikas: opennet.ru
