Megjelent a Radicle 1.5 verziója, amely a decentralizált kódfejlesztési és tárolási szolgáltatás létrehozására összpontosít, hasonlóan a GitHubhoz és GitLabhoz, de nem egy adott szerverhez kötött, nem cenzúrázható és a P2P-hálózat résztvevőinek erőforrásaival működik. A platform támogatja a fejlesztők szociális interakciójának jellemző elemeit, mint például a hibák, javítások és kódértékelések. A projekt fejlesztése Rust nyelven készült, és Apache 2.0 és MIT engedélyek alatt kerül forgalomba. Az összeállítások Linux és macOS rendszerekre készültek. Továbbá desktop kliens, webes felület és parancssori felület is fejlődés alatt áll.
A Radicle lehetővé teszi a kód fejlesztését és terjesztését központosított platformoktól és vállalatoktól való függetlenség révén, amelyekhez való kötődés további kockázatokat jelent (egységes hibapont, a cég bezárhat vagy megváltoztathatja a működési feltételeket). A Radicle-ban a kód kezelésére a megszokott Git szolgál, kiegészítve a P2P-hálózatban történő tároláshoz szükséges eszközökkel. Minden adat elsősorban helyben tárolódik (local-first koncepció), és mindig elérhető a fejlesztő számítógépén, függetlenül a hálózati kapcsolat állapotától.
A résztvevők hozzáférést biztosítanak saját kódjukhoz és a kódhoz kapcsolódó artefaktumokhoz, mint például patch-ek és hibajavítási megbeszélések (issues), amelyek helyben tárolódnak és reprodukálódnak más érdekelt fejlesztők csomópontjain, amelyek csatlakoznak a közös decentralizált P2P-hálózathoz. Ennek eredményeként globális decentralizált Git-repozitórium jön létre, amelynek adatai minden résztvevő rendszerén replikálódnak és megduplázódnak.
A P2P-hálózatban szomszédos csomópontok meghatározásához Gossip protokollt, az adatok csomópontok közötti replikálásához pedig Git-alapú Heartwood protokollt alkalmaznak. Mivel a protokoll Git-alapú, a platform könnyen integrálható a meglévő Git-fejlesztési eszközökkel. A csomópontok azonosításához és a repozitóriumok ellenőrzéséhez nyílt kulcsrendszeren alapuló titkosítást használnak, fiókok alkalmazása nélkül. Az autentikálás és a jogosultságkezelés nyílt kulcsokon alapul, központosított hitelesítő szolgáltatók nélkül. szerverek.
Minden repozitóriumnak a P2P-hálózaton egyedi azonosítója van, és önmagát hitelesítő (self-certifying), azaz minden tevékenység a repozitóriumban, például a commitok hozzáadása és a hibajegyekhez való hozzászólás, digitális aláírással van ellátva, mely lehetővé teszi az adatok helyességének megerősítését más csomópontokon, központosított hitelesítési központok használata nélkül. A repozitórium eléréséhez elegendő, ha online van legalább egy csomópont, amelynek van a repozitórium replikált másolata.
A P2P-hálózat csomópontjai feliratkozhatnak bizonyos repozitóriumokra, és frissítéseket kaphatnak. Lehetséges privát repozitóriumok létrehozása is, amelyek csak meghatározott csomópontok számára elérhetők. A repozitórium kezelésére és tulajdonlására a 'delegáltak' (delegates) koncepciója vonatkozik. Delegált lehet akár egy külön felhasználó, akár egy bot vagy egy csoport, amely speciális azonosítóhoz kapcsolódik. A delegáltak patcheket fogadhatnak el a repozitóriumban, zárhatják a hibajegyeket és beállíthatják a repozitóriumhoz való hozzáférési jogokat. Minden repozitóriumhoz több delegált is hozzárendelhető.
A Radicle-repozitóriumokat a felhasználók rendszerein tárolják, mint hagyományos git-repozitóriumokat, amelyekben további névtér található a peer-ek és fork-ok adatainak tárolására, amelyeken az aktuális munka folyik. A megvitatott patchek és az áttekintéshez szükséges összetevők szintén a git-repozitóriumban kerülnek tárolásra kollaboratív objektumok (COB — Collaborative Objects) formájában, és replikálódnak a peer-ek között.
Az új kiadásban:
- Javult a bare-repozitóriumok támogatása, amelyek nem tartalmaznak munkakönyvtárat a projekt fájlok másolatával, csak a változásokat és a metaadatokat, például az ágakat és címkéket tárolják. A 'rad clone' parancshoz hozzáadva a '--bare' opció lehetővé teszi a repozitórium munkakönyvtár nélküli másolását. A 'git-remote-rad' segédprogramban javították a bare-repozitóriumokkal való munkát a 'git push' és 'git fetch' parancsok használata során a külső rad-szerverekkel való kapcsolatkor.
- Új 'patch.branch' beállítás került hozzáadásra, amelyet a git-remote-rad segédprogramban ('git-remote-rad -o patch.branch[=<név>]') használhatunk, miközben javítást adunk hozzá, automatikusan létrehozva egy álágat az upstream repozitóriumban, anélkül, hogy használni kellene a 'rad patch checkout' parancsot.
- A 'rad patch show' parancs kimenete javítva lett, amely mostantól megjeleníti a javítás eredeti verzióját, amelyet korábban csak a '--verbose' kapcsoló megadása esetén lehetett látni. Minden revízió mostantól egy egységes idővonalon jelenik meg, a változtatások az eredeti szerző és más résztvevők között ne legyenek elválasztva.
- Lehetőség nyílik a naplók struktúrált formátumban történő megjelenítésére, amelyet a '--log-logger structured' és '--log-format json' opciók engedélyeznek.
Forrás: opennet.ru
