Опубликована децентрализованная платформа совместной разработки Radicle 1.7

Новости мира unix. Хотите узнать секрет вечного счастья? Откройте страницу 246.
Ответить
acolyte
Аватара пользователя
Сообщения: 1181
Зарегистрирован: 20.08.2022

#

Опубликована децентрализованная платформа совместной разработки Radicle 1.7
Дата публикации:Fri, 20 Mar 2026 11:35:54 +0300

Опубликован выпуск P2P-платформы Radicle 1.7, нацеленной на создание децентрализованного сервиса совместной разработки и хранения кода, похожего на GitHub и GitLab, но не привязанного к конкретным серверам, не подверженного цензуре и работающего с использованием ресурсов участников P2P-сети. Платформа поддерживает типовые элементы социального взаимодействия разработчиков, такие как issue, патчи и рецензии на код. Наработки проекта написаны на языке Rust и распространяются под лицензиями Apache 2.0 и MIT. Сборки подготовлены для Linux и macOS. Дополнительно развиваются десктоп-клиент, web-интерфейс и консольный интерфейс.
Radicle позволяет не зависеть при разработке и распространении кода от централизованных платформ и корпораций, привязка к которым вносит дополнительные риски (единая точка отказа, компания может закрыться или изменить условия работы). Для управления кодом в Radicle используется привычный Git, расширенный средствами определения репозиториев в P2P-сети. Все данные в первую очередь сохраняются локально (концепция local-first) и всегда доступны на компьютере разработчика, независимо от состояния сетевого подключения.
Участники предоставляют доступ к своему коду и связанным с кодом артефактам, таким как патчи и обсуждения исправления ошибок (issues), которые сохраняются локально и реплицируются на узлы других заинтересованных разработчиков, подключённые к общей децентрализованной P2P-сети. В итоге формируется глобальный децентрализованный Git-репозиторий, данные которого реплицированы и продублированы на разных системах участников.
Для определения соседних узлов в P2P-сети применяется протокол Gossip, а для репликации данных между узлами протокол Heartwood, основанный на Git. Так как протокол основан на Git, платформу легко интегрировать с существующими инструментами для разработки на Git. Для идентификации узлов и верификации репозиториев используется криптография на основе открытых ключей, без применения учётных записей. Аутентификация и авторизация осуществляется на основе открытых ключей без централизованных удостоверяющих серверов.
Каждый репозиторий в P2P-сети имеет свой уникальный идентификатор и самосертифицирован (self-certifying), т.е. все действия в репозитории, такие как добавление коммитов и оставление комментариев к issue, заверяются владельцем цифровой подписью, позволяющей убедиться в корректности данных на других узлах без использования централизованных удостоверяющих центров. Для получения доступа к репозиторию достаточно, чтобы в online находился хотя бы один узел, на котором имеется его реплицированная копия.
Узлы в P2P-сети могут подписываться на определённые репозитории и получать обновления. Возможно создание приватных репозиториев, доступных только определённым узлам. Для управления и владения репозиторием используется концепция "делегатов" (delegates). Делегатом может быть как отдельный пользователь так и бот или группа, привязанные к специальному идентификатору. Делегаты могут принимать в репозиторий патчи, закрывать issue и задавать права доступа к репозиторию. К каждому репозиторию может быть привязано несколько делегатов.
Radicle-репозитории хранятся на системах пользователей в виде обычных git-репозиториев, в которых присутствуют дополнительные пространства имён для хранения данных пиров и форков, с которыми осуществляется текущая работа. Обсуждения, предлагаемые патчи и компоненты для организации рецензирования тоже сохраняются в git-репозитории в виде совместных объектов (COB - Collaborative Objects) и реплицируются между пирами.
В новом выпуске:
  • Переработана реализация подписанных ссылок (sigrefs - Signed References), в которой появилась защита от повторного использования подписей. Старая структура репозитория позволяла подменить код на его старую версию, повторно использовав старую корректную подпись. Для блокирования проблемы в новой реализации добавлен указатель на предыдущую запись, охватываемый текущей подписью, что формирует непрерывную цепочку изменений, целостность которой можно отследить относительно корня. Расширены возможности блокировки узлов, которые теперь блокируются на уровне управления соединениями. Если раньше блокировался только приём данных, не не ограничивалось подключение узла, то теперь блокировка применяется на этапе установки соединения с заблокированным узлом и при приёме соединения от заблокированного узла. Разрешено использовать любые ссылки на внешние объекты Git, кроме временных веток. Раньше разрешались только ссылки на внешние ветки, теги, метаданные Radicle, заметки и объекты для совместной работы. Повышена информативность сообщений об ошибках, возникающих при попытке выполнения операций, для которых у пользователя недостаточно прав. Повышена эффективность ввода/вывода. Разработчики обнаружили, что на долго запущенных узлах сочетание настроек "journal_mode = WAL" и "synchronous = FULL" в БД SQLite, применяемой для хранения локального состояния, приводит к большому объёму операций ввода/вывода. Для снижения нагрузки по умолчанию параметр "synchronous" теперь выставлен в значение "NORMAL", а в файл конфигурации Radicle добавлены настройки для изменения значения данных параметров пользователем. Устранена уязвимость, информация о которой будет раскрыта 23 марта. В настоящее время сообщается лишь то, что команда разработчиков выполнила сканирование всех публично доступных репозиториев Radicle и не выявила следов эксплуатации данной проблемы.
Новость позаимствована с opennet.ru
Ссылка на оригинал: https://www.opennet.ru/opennews/art.shtml?num=65030

Жизнь за Нер'зула!

Ответить