Está disponible la plataforma de desarrollo descentralizada Radicle 1.5

Se ha lanzado la versión 1.5 de la plataforma P2P Radicle, diseñada para crear un servicio descentralizado de colaboración y almacenamiento de código, similar a GitHub y GitLab, pero no vinculado a servidores específicos, sin censura y operando con los recursos de los participantes de la red P2P. La plataforma soporta elementos típicos de interacción social entre desarrolladores, como incidencias, parches y revisiones de código. Los desarrollos del proyecto están escritos en Rust y se distribuyen bajo licencias Apache 2.0 y MIT. Se han preparado compilaciones para Linux y macOS. Además, se están desarrollando un cliente de escritorio, una interfaz web y una interfaz de línea de comandos.

Radicle permite liberar el desarrollo y la distribución de código de plataformas y corporaciones centralizadas, cuya dependencia introduce riesgos adicionales (un único punto de falla, la empresa puede cerrar o cambiar las condiciones de operación). Para gestionar el código en Radicle se utiliza Git, ampliado con medios para la identificación de repositorios en la red P2P. Todos los datos se guardan principalmente de manera local (concepto local-first) y siempre están disponibles en la computadora del desarrollador, independientemente del estado de la conexión de red.

Los participantes proporcionan acceso a su código y artefactos relacionados, como parches y discusiones sobre corrección de errores (issues), que se guardan localmente y se replican en los nodos de otros desarrolladores interesados, conectados a la red P2P descentralizada compartida. Como resultado, se forma un repositorio Git descentralizado global, cuyos datos están replicados y duplicados en diferentes sistemas de los participantes.

Para identificar nodos vecinos en la red P2P se utiliza el protocolo Gossip, y para replicar datos entre nodos se emplea el protocolo Heartwood, basado en Git. Dado que el protocolo se basa en Git, la plataforma se integra fácilmente con las herramientas existentes para desarrollo en Git. La identificación de nodos y la verificación de repositorios utilizan criptografía de claves públicas, sin necesidad de cuentas. La autenticación y autorización se realizan sobre la base de claves públicas sin entidades certificadoras centralizadas. servidores.

Cada repositorio en la red P2P tiene un identificador único y es autodeclarado, es decir, todas las acciones en el repositorio, como agregar commits y dejar comentarios en issues, son firmadas por el propietario con una firma digital, que permite verificar la integridad de los datos en otros nodos sin la necesidad de centros de certificación centralizados. Para acceder al repositorio, basta con que al menos un nodo esté en línea y tenga una copia replicada de él.

Los nodos en la red P2P pueden suscribirse a ciertos repositorios y recibir actualizaciones. Es posible crear repositorios privados, accesibles solo para nodos específicos. Para gestionar y poseer un repositorio se usa el concepto de 'delegados'. Un delegado puede ser un usuario individual, un bot o un grupo, ligados a un identificador especial. Los delegados pueden aceptar parches en el repositorio, cerrar issues y establecer permisos de acceso al repositorio. Se pueden asociar varios delegados a cada repositorio.

Los repositorios Radicle se almacenan en los sistemas de los usuarios como repositorios git normales, en los que hay espacios de nombres adicionales para almacenar datos de pares y bifurcaciones con los que se está trabajando actualmente. Las discusiones, los parches propuestos y los componentes para la organización de revisiones también se guardan en el repositorio git como objetos colaborativos (COB — Collaborative Objects) y se replican entre pares.

En esta nueva versión:

  • Se ha mejorado el soporte para repositorios bare, que no contienen un directorio de trabajo con una copia de los archivos del proyecto, sino que almacenan solo el historial de cambios y metadatos, como ramas y etiquetas. Se ha añadido la opción '—bare' al comando 'rad clone' para clonar el repositorio en una vista sin árbol de trabajo. Se ha mejorado el manejo de repositorios bare en la utilidad 'git-remote-rad' al usar los comandos 'git push' y 'git fetch' al acceder a un servidor rad externo.
  • Se ha añadido la configuración 'patch.branch', que se puede utilizar en la utilidad git-remote-rad ('git-remote-rad -o patch.branch[=<name>]') al agregar un parche para crear automáticamente una rama en el repositorio upstream, sin necesidad de usar el comando 'rad patch checkout'.
  • Se ha mejorado la salida del comando «rad patch show», que ahora muestra la versión original del parche, la cual antes solo se mostraba al utilizar la opción «—verbose». Todas las revisiones ahora se presentan en una única cronología sin separación entre cambios del autor original y otros colaboradores.
  • Se ha añadido la opción de salida de registros en formato estructurado, que se activa mediante las opciones «—log-logger structured» y «—log-format json».

Fuente: opennet.ru

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster