Registro de mudanças do Feather Wallet 2.5.2 (2023-10-19)

Navegador de documentação

O Feather agora tem um navegador de documentação off-line. Ele pode ser acessado pressionando o botão "Ajuda" no assistente ou acessando Ajuda → Documentação.

Digite uma palavra-chave na barra de pesquisa para filtrar a lista de artigos e destacar as correspondências.

Se você detectar um erro ou não conseguir encontrar o que está procurando, considere a possibilidade de abrir um problema no documentos de penas repo.

Mensagens de erro aprimoradas

Em alguns casos, as mensagens de erro fornecem muito poucas informações para serem úteis ou muitas, o que as torna confusas. Recentemente, deparei-me com esta postagemque destacou esse problema e me levou a fazer uma alteração.

A maioria das mensagens de erro vem da biblioteca da carteira. Ela não hesita em usar a terminologia interna e frequentemente inclui informações desnecessárias, como referências ao código-fonte. Isso é útil para os desenvolvedores, mas não tanto para os usuários que tentam entender o que deu errado e o que fazer a respeito.

Para solucionar esse problema, muitas mensagens de erro foram reescritas para maior clareza e tornaram-se mais acionáveis. Agora, elas devem aderir a um formato que visa responder às seguintes perguntas:

  • Que ação deu errado?
  • Por que deu errado?
  • [O que posso fazer a respeito?]
  • [Onde posso obter mais informações?]

Por exemplo, a tentativa de enviar uma transação quando a carteira ainda não terminou a sincronização agora é exibida:

Pressionar "Ajuda" abre o navegador de documentos com mais informações sobre a sincronização de carteiras para ajudar um usuário curioso a entender por que a carteira deve estar sincronizada para que seja possível enviar uma transação.

Escrever uma boa documentação para cada caso é um trabalho em andamento. Se você vir uma mensagem de erro confusa, considere denunciando-o.

Recuperação de sementes

Foi adicionada uma ferramenta de recuperação de sementes que pode ajudar a recuperar Polyseeds danificadas ou parciais.

Ocasionalmente, recebo um e-mail de alguém que está tentando restaurar uma carteira a partir de uma semente de backup, mas não consegue entender algumas das palavras. Caligrafia ruim, uma mancha de café, uma foto que foi mal cortada etc. Faltam informações demais para que seja prático analisar manualmente, mas não o suficiente para tornar a recuperação computacionalmente inviável.

A ferramenta permite que você insira todas as informações que possui sobre a frase-semente. O Regex é compatível com palavras parciais. Em seguida, ele itera sobre todas as frases possíveis, considerando as palavras (inteiras, parciais ou em branco) fornecidas. As polyseeds incluem uma soma de verificação de 11 bits, de modo que apenas um subconjunto de frases-semente é válido. Um endereço associado à carteira pode ser fornecido opcionalmente para verificar automaticamente se alguma das frases válidas produz uma carteira que contenha o endereço.

Para obter informações sobre como acessar e usar a ferramenta, consulte os documentos aqui.

Batida da máquina do tempo

As liberações de penas são inicializável. Isso significa que as ferramentas usadas para construir o Feather são construídas a partir do código-fonte, e as ferramentas que constroem essas ferramentas também são, e as ferramentas que constroem aqueles As ferramentas também são, e assim por diante.

Mas, certamente, isso não pode continuar para sempre e algo não pode vir do nada. Na raiz do gráfico do pacote está um semente bináriaum conjunto mínimo de binários que não podem ser compilados a partir do código-fonte. Esse conjunto costumava ser de ~60 MB Semente binária reduzida adicional.

Com esse lançamento, nosso Guix máquina do tempo foi atualizado para um commit em 15 de maio. As compilações Feather agora se beneficiam do Bootstrap de fonte completa. A raiz do grafo do pacote é agora um 357 bytes programa, conhecido como hex0.

É código-fonte até o fim! Cada etapa do processo de compilação é auditável e não precisamos confiar na opinião de alguém. potencialmente malicioso binários.

Uma ressalva importante é que, embora todos os pacotes sejam criados a partir do código-fonte, o driver usado para criar os pacotes iniciais não é. A eliminação desse driver é a próxima etapa das compilações bootstrappable.

(O trabalho é em andamento para trazer compilações bootstrappable para o repositório principal do Monero).

Liberar atestado

As versões Feather são reproduzíveis. Qualquer pessoa com uma máquina Linux x64 e Guix (o gerenciador de pacotes) instalado pode criar uma cópia idêntica, bit a bit, de todos os artefatos da versão, executando um único comando.

A única maneira de verificar se uma versão é de fato reproduzível é criá-la várias vezes, em sistemas diferentes. Embora as compilações sejam feitas dentro de um contêiner Com um ambiente de compilação normalizado, o não determinismo ainda pode se infiltrar (entre outras coisas) nas propriedades da máquina de compilação, como o kernel, a arquitetura da CPU ou o sistema de arquivos montado por ligação. Quanto mais diversificado for o conjunto de máquinas em que o software for desenvolvido, mais confiantes poderemos estar de que não há requisitos não documentados para reprodução.

Essa versão adiciona o atestado de versão, às vezes chamado de reprodução verificada. Se você estiver familiarizado com o processo de construção reproduzível do Monero, isso funciona da mesma forma que gitian.sigs. Qualquer pessoa pode criar o Feather, assinar os hashes dos resultados e enviá-lo para um repositório comum. Os hashes podem então ser em comparação com a verificação que as compilações sejam reproduzíveis.

Com o atestado de versão, os usuários que não compilam a partir do código-fonte podem ter mais confiança de que as versões são reproduzíveis, pois vários colaboradores terão produzido binários idênticos de forma independente. Caso ocorra um não determinismo, ele poderá ser corrigido antes de uma versão.

Um agradecimento especial a /u/MoneroArbo por ajudar a verificar a reprodução dessa versão. Sua primeira compilação (para 2.5.0) revelou uma suposição não documentada sobre o umaskque vaza para o contêiner e pode introduzir o não determinismo quando os arquivos recém-criados são arquivados.

Se você quiser ajudar a verificar essa versão, siga as instruções aqui para desenvolver o Feather e criar um atestado. Recomendamos o uso de uma máquina com pelo menos 8 núcleos e 32 GB de memória, embora isso não seja obrigatório.

Lançamento oficial do Flatpak

O Feather agora tem um Flatpak oficial.

Foi feito um grande esforço para garantir que ele tenha as mesmas garantias de segurança de compilação que nossas outras versões. O Flatpak é bootstrappable e reproduzível. Ele não depende de nenhum tempo de execução de terceiros e não requer confiança na infraestrutura do Flathub.

O repositório está hospedado em feather-wallet.org e todos os commits são assinados com nosso liberar chave de assinaturapermitindo que os usuários verifiquem a autenticidade.

Ele também é pequeno em comparação com a maioria dos Flatpaks, pesando apenas cerca de 30 MB (compactado). Esse é o tempo de execução (vazio) + aplicativo. Ele inclui apenas os arquivos necessários para que o aplicativo seja executado, nem mesmo um shell ou coreutils.

Para obter mais informações sobre as considerações que foram feitas, consulte a postagem aqui.

Para instalar o Flatpak oficial, basta executar:

flatpak install --from https://feather-wallet.org

e siga as instruções aqui para verificar seu download.

Correções de bugs e aprimoramentos

  • O Feather agora inicia exatamente um segundo mais rápido
  • Receber: adicionada uma opção para mostrar endereços alterados
  • Assistente: seleciona automaticamente a primeira carteira, se ela existir
  • Ledger: a chave de visualização privada agora está disponível em Carteira -> Chaves
  • O nome de usuário/senha do nó não é mais esquecido após a reinicialização
  • Mineração: permite adicionar opções adicionais de linha de comando
  • Todos os arquivos agora podem ser selecionados ao importar transações (não) assinadas
  • O instalador do Windows agora será interrompido se for executado em uma versão sem suporte do sistema operacional
  • Correção de um problema que podia fazer com que a guia Histórico não fosse atualizada em uma transação recebida
  • Enviar: limpar a descrição da doação se o endereço tiver sido alterado
  • Correção de um problema que poderia levar a uma falha
  • Correção de um problema de compilação em plataformas musl
  • Alguns aprimoramentos cosméticos para o macOS

Outras alterações

Muitas dependências (vinculadas estaticamente) foram atualizadas nesta versão. Incluindo Monero para v0.18.3.1, Qt para 6.6.0, OpenSSL para 3.1.3, Boost para 1.83.0 e Tor para 0.4.7.15.

Antecipando os códigos QR animados para assinatura de transações off-line, a biblioteca ZBar, usada para leitura de código QR, foi substituída pela biblioteca mais rápida e ativamente mantida ZXing-cpp biblioteca.

Nosso tipo2 O tempo de execução do AppImage foi atualizado para a versão mais recente e agora usa o fuse3. Isso não resolve o problema um problema com o AppImageLauncher, que gera um erro ao tentar instalar o AppImage. Recomenda-se que os usuários desinstalem o AppImageLauncher ou removam o .AppImagedo arquivo.

Essa versão elimina o suporte ao Qt 5, que está fora de uso desde 26 de maio e não recebe mais atualizações de segurança públicas. A versão mínima necessária do Qt para compilar o Feather agora é a 6.3. As versões oficiais já mudaram para o Qt 6 em janeiro.

Dois documentos foram adicionados ao repositório:

  • RELEASE.md descreve o processo de liberação.
  • MAINTENANCE.md define as prioridades de manutenção e as metas de desenvolvimento.

Confira o último documento se estiver interessado em saber mais sobre o rumo que o projeto está tomando.

Requisitos de codesign do macOS

Está cada vez mais difícil enviar aplicativos não codificados para o macOS.

Aplicativos para Apple Silicon voltados para o macOS 10.15 ou posterior não inicia se forem baixados pela Internet, mesmo que sejam assinados por código ad-hoc, que é o que o Feather faz agora.

Uma solução alternativa envolve a remoção de um xattr usando o terminal, mas isso não é algo que possamos pedir razoavelmente a usuários não técnicos.

Infelizmente, não é possível obter um certificado de ID de desenvolvedor emitido pela Apple sem comprometer minha identidade, o que não é algo que eu me sinta confortável em fazer no momento.

Se você conseguir obter um certificado de codesign emitido pela Apple e estiver disposto a me conceder acesso a ele, entre em contato com [email protected]. Quaisquer despesas e tempo incorridos serão compensados em XMR.

Observação: embora as versões atuais não sejam "assinadas em código" de acordo com a definição da Apple, todas as versões são assinadas por GPG com nossa chave de assinatura de versão. Para verificar a autenticidade de uma versão, siga as instruções na seção Guia de instalação.

pt_BRPortuguês do Brasil