Foi lançada a plataforma descentralizada de desenvolvimento colaborativo Radicle 1.6

Foi lançado o Radicle 1.6, uma plataforma P2P focada na criação de um serviço descentralizado de desenvolvimento e armazenamento de código, semelhante ao GitHub e GitLab, mas desvinculado de servidores específicos, sem censura e operando com os recursos dos participantes da rede P2P. A plataforma suporta elementos típicos de interação social entre desenvolvedores, como issues, patches e revisões de código. O projeto é desenvolvido em Rust e distribuído sob as licenças Apache 2.0 e MIT. Compilações estão disponíveis para Linux e macOS. Além disso, um cliente desktop, uma interface web e uma interface de console estão em desenvolvimento.

O Radicle permite que o desenvolvimento e a distribuição de código fiquem independentes de plataformas e corporações centralizadas, cuja vinculação traz riscos adicionais (ponto único de falha, a empresa pode fechar ou mudar as condições de operação). Para gerenciar o código no Radicle, é utilizado o Git tradicional, ampliado com ferramentas de definição de repositórios na rede P2P. Todos os dados são, em primeiro lugar, salvos localmente (conceito local-first) e sempre acessíveis no computador do desenvolvedor, independentemente do estado da conexão de rede.

Os participantes fornecem acesso ao seu código e a artefatos associados, como patches e discussões sobre correções de bugs (issues), que são salvos localmente e replicados em nós de outros desenvolvedores interessados conectados à rede P2P descentralizada compartilhada. Como resultado, forma-se um repositório Git global descentralizado, cujos dados são replicados e duplicados em diferentes sistemas dos participantes.

Para identificar nós adjacentes na rede P2P, é aplicado o protocolo Gossip, e para replicação de dados entre nós, utiliza-se o protocolo Heartwood, baseado no Git. Como o protocolo é baseado no Git, a plataforma é facilmente integrada com as ferramentas existentes para desenvolvimento no Git. Para identificação de nós e verificação de repositórios, é usada criptografia baseada em chaves públicas, sem a utilização de contas. A autenticação e a autorização são realizadas com base em chaves públicas, sem entidades de certificação centralizadas. servidores.

Cada repositório em uma rede P2P possui um identificador único e é auto-certificado, ou seja, todas as ações no repositório, como adição de commits e comentários em issues, são assinadas pelo proprietário com uma assinatura digital, permitindo verificar a precisão dos dados em outros nós sem a utilização de autoridades certificadoras centralizadas. Para acessar o repositório, basta que haja pelo menos um nó online que tenha sua cópia replicada.

Os nós na rede P2P podem se inscrever em repositórios específicos e receber atualizações. É possível criar repositórios privados, acessíveis apenas a nós determinados. A gestão e propriedade do repositório utilizam o conceito de 'delegados'. Um delegado pode ser um usuário individual, um bot ou um grupo, associado a um identificador especial. Delegados podem aceitar patches no repositório, fechar issues e definir permissões de acesso ao repositório. Vários delegados podem ser vinculados a cada repositório.

Os repositórios Radicle são armazenados nos sistemas dos usuários como repositórios git comuns, nos quais existem espaços de nomes adicionais para o armazenamento de dados de pares e forks com os quais se está trabalhando no momento. Discussões, patches propostos e componentes para organização de revisão também são armazenados no repositório git na forma de objetos colaborativos (COB — Collaborative Objects) e replicados entre os pares.

No novo lançamento:

  • As implementações do nó Radicle (radicle-node) foram migradas para o uso da biblioteca de entrada/saída Mio. Pacotes como netservices, io-reactor e popol foram removidos, pois interferiam na obtenção do nível desejado de multiplataforma. Um novo módulo reactor foi adicionado, dentro do qual o io-reactor foi reescrito com base no Mio.
  • A transição para o Mio permitiu implementar suporte para a plataforma Windows, que ainda tem status experimental.
  • O código para análise de argumentos da linha de comando foi migrado para a biblioteca clap, o que unificou o comportamento na interpretação dos argumentos e trouxe para a utilidade rad funções como geração automática de sugestões de comando, exibição de recomendações para correção de erros, destaque na saída e autocompletar comandos.
  • O radicle-node agora suporta o mecanismo systemd Credentials para a transmissão segura de chaves de acesso (xyz.radicle.node.secret) e senhas para sua descriptografia (xyz.radicle.node.passphrase), além do uso da variável de ambiente RAD_PASSPHRASE, da opção de linha de comando "—secret" e de parâmetros no arquivo de configuração.
  • Os requisitos para a versão mínima suportada do compilador Rust foram elevados para 1.85.

Fonte: opennet.ru

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster