Стартиране на децентрализирана платформа за съвместна разработка Radicle 1.0

Представен е релиз на P2P платформата Radicle 1.0, целяща да създаде децентрализирана услуга за съвместна разработка и съхранение на код, подобна на GitHub и GitLab, но не привързана към конкретни сървъри, устойчива на цензура и работеща с ресурсите на участниците в P2P мрежата. Релиз 1.0 отбелязва стабилизация на протокола и готовност на платформата за широко ползване. От този релиз нататък протоколът ще бъде променян с запазване на обратна съвместимост, а инструментариумът ще включва възможности за безпроблемно обновление на съществуващите системи до новата версия. Разработките на проекта са написани на Rust и се разпространяват под лицензите Apache 2.0 и MIT. Сборките са подготвени за Linux и macOS. Допълнително се развиват десктоп клиент, уеб интерфейс и конзолен интерфейс.

Radicle позволява разработването и разпространението на код да не зависят от централизирани платформи и корпорации, което носи допълнителни рискове (едина точка на провал, компанията може да затвори или да промени условията за работа). За управление на кода в Radicle се използва познатият Git, разширен с инструменти за дефиниране на хранилища в P2P мрежата. Всички данни първо се запазват локално (концепцията local-first) и винаги са достъпни на компютъра на разработчика, независимо от състоянието на интернет връзката.

Участниците предоставят достъп до своя код и свързаните с него артефакти, като пачове и обсъждания на корекции на грешки (issues), които се съхраняват локално и се репликират на възли на други заинтересовани разработчици, свързани с общата децентрализирана P2P мрежа. В резултат на което се формира глобален децентрализиран Git хранилище, чиито данни са репликирани и дублирани на различни системи на участниците.

За определяне на съседни възли в P2P мрежата се използва протоколът Gossip, а за репликиране на данни между възлите - протоколът Heartwood, основан на Git. Тъй като протоколът е базиран на Git, платформата лесно може да се интегрира с съществуващите инструменти за разработка на Git. За идентификация на възлите и верификация на репозиториите се използва криптография на база публични ключове, без необходимост от потребителски акаунти.

Всяка репозитория в P2P мрежата има свой уникален идентификатор и е самосертифицирана, т.е. всички действия в репозитория, като добавяне на комити и оставяне на коментари по проблеми, се удостоверяват от собственика с цифров подпис, позволяващ да се уверим в коректността на данните на другите възли без използване на централизираните удостоверяващи центрове. За да получите достъп до репозитория, е достатъчно поне един възел да е онлайн, на който да има репликирана копия.

Възлите в P2P мрежата могат да се подписват за определени репозитории и да получават актуализации. Възможно е създаването на частни репозитории, достъпни само за определени възли. За управление и владеене на репозитория се използва концепцията „делегати“. Делегат може да бъде както отделен потребител, така и бот или група, свързани с специален идентификатор. Делегатите могат да приемат пачове в репозитория, да затварят проблеми и да задават права за достъп до репозитория. Към всеки репозитор може да бъдат привързани няколко делегати.

На системите на потребителите Radicle репозиториите се съхраняват като обикновени git репозитории, в които съществуват допълнителни пространства за данни на пирите и форковете, с които се извършва текущата работа. Обсъждания, предложени патчи и компоненти за организиране на рецензии също се съхраняват в git репозиторите във вид на съвместни обекти (COB - Collaborative Objects) и се репликират между пирите.

Radicle 1.0 включва:

  • Реализация на разширяем протокол за организиране на работата на P2P мрежа и синхронизация на данни.
  • Елементи за социално взаимодействие, като issue, патчи и рецензии на код.
  • Протокол за удостоверяване и авторизация, основан на публични ключове, работещ без централизирани удостоверяващи органи. сървъри.
  • CLI интерфейс, познат на потребителите, запознати с Git.
  • Уеб интерфейс за навигация из репозиориите и възлите.
  • Инструменти за осигуряване на конфиденциалност, включващи поддръжка на частни репозитории и възможност за работа през анонимната мрежа Tor.
  • Поддръжка на повтарящи се сборки за проверка, че разпространяемите изпълними файлове Radicle са компилирани от заявените изходни кодове.

Все още неизпълнени функционалности, които са в разработка:

  • Вградени инструменти за непрекъсната интеграция (CI) и непрекъсната доставка (CD).
  • Конзолният интерфейс Radicle TUI (Terminal User Interface).
  • Разширени възможности за преглед на изменения.
  • Система за доставка на уведомления за промени в репозитория.
  • Поддръжка на потребителски профили и възможност за свързване на множество устройства.
  • Поддръжка на тагове.
  • Утилити за модериране и управление на възли.
  • Десктоп приложение.

Източник: opennet.ru

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster