Actualités du développement Safe 🇫🇷 7 décembre 2023

Ceci est une traduction automatique. L’original en anglais est ici: Update 07 December, 2023

Cette semaine, nous avons tous mis la main à la pâte pour combler les trous, enfoncer les clous et remplacer les bois pourris du réseau de test précédent afin que nous puissions lancer la chose de beauté qu’est le ReduceConnectionsNet, qui jusqu’à présent semble se dérouler plutôt bien.

Alors, quelles étaient ces choses ? Eh bien, nous sommes passés de trois dépenses vérifiées à cinq, ce qui a augmenté le temps de vérification. Dans nos petits réseaux de test internes, les nœuds se déclenchaient à cause de certaines limites expérimentales que nous avions mises en place il y a quelque temps, ce qui signifiait qu’ils n’avaient pas suffisamment de connaissances en réseau pour effectuer certaines tâches. Les longues attentes pour que les nœuds agissent ont ajouté à la lenteur de la vérification, ce qui a causé des problèmes avec le flux de travail d’intégration continue (CI), car les jetons du robinet étaient coincés dans les limbes, et ainsi de suite. Dans le développement de logiciels, parfois les problèmes tombent comme des dominos, d’autres fois ils s’appuient les uns sur les autres comme des balanes et conspirent pour ralentir les choses.

Heureusement, une fois que nous avons réalisé ce qui se passait, il suffisait de supprimer un peu de code ici et là pour éliminer les saletés accumulées sur notre coque.

Cela consistait en partie à réduire le nombre de connexions de nœuds, ce qui a permis de diviser par 10 les fuites de mémoire lors des premiers tests. Nous avons également réduit les taux de réplication, qui étaient un peu détraqués, et ajouté une vérification selon laquelle les messages de réplication proviennent d’un nœud proche plutôt que de n’importe qui, ce qui semble avoir considérablement calmé les choses.

Merci comme toujours à tous ceux qui nous donnent de leur temps pour mettre la chose à l’épreuve. Mention spéciale cette semaine à @mav pour ses améliorations UX, notamment un chemin de téléchargement plus familier et la déduplication des drapeaux cli. Également à danieleades qui continue de mettre de l’ordre dans notre flux de travail parfois irrégulier. Bravo à tous ! :bières:

Progrès général

@bzee a fouillé les composants internes de testnet en intégrant « sn-node-manager » au déployeur testnet.

@chriso a également travaillé sur les modifications apportées à l’application sn-node-manager qui permettront les mises à jour des réseaux de test à la volée. Celles-ci incluent une commande remove pour – vous l’aurez deviné – supprimer des nœuds individuels des réseaux de test.

Au cours d’une semaine chargée, @roland a participé avec un PR pour regrouper les dépenses même si le processus « get_record » échoue. Auparavant, nous convertissions toutes les erreurs en une seule variante, ce qui masquait ce problème. Il a également soulevé un autre PR pour améliorer la gestion des erreurs dans le processus de vérification get_spend.

Et @qi_ma a été occupé à dénoncer les erreurs de réplication et les inondations de connexions. Le nœud Genesis devenait surchargé de communications, il a donc équilibré la charge de travail de connexion du nœud Genesis en remplaçant le nœud d’amorçage lorsque son « K-bucket » (enregistrement de kad connexions) est plein. Il a également ajouté une fonctionnalité au module réseau qui rappelle lors de la réception d’un message d’identification d’un homologue entrant pour garantir qu’il ne s’agit pas d’un faux ami qui se cache derrière. un NAT.

@bochaco a implémenté une fonctionnalité portefeuille de montre uniquement pour surveiller les transactions et étudie l’API Trezor pour s’assurer qu’elle fonctionnera avec SNT.

Et @anselme a exercé ses capacités considérables de conception de systèmes sur les moyens de simplifier le paiement des redevances, la protection contre les doubles dépenses et l’audit, avec l’ajout de DAG d’audit. Encore un travail conceptuel en cours, mais vous en entendrez certainement davantage si cela fonctionne.

Il a également enquêté et corrigé un bug CLI signalé par @happybeing à propos des erreurs de paiement en morceaux.


Liens utiles

N’hésitez pas à répondre ci-dessous avec des liens vers les traductions de cette mise à jour de développement et les modérateurs les ajouteront ici.

En tant que projet open source, nous sommes toujours à la recherche de commentaires, de commentaires et de contributions de la communauté. Ne soyez donc pas timide, rejoignez-nous et créons ensemble le réseau sécurisé!