Contribuer à Duniter -- tutoriel vidéo

Tutoriel débutant pour compiler Duniter v2s et modifier un test cucumber :

https://tube.p2p.legal/w/n4TXxQ4SqxzpHPY4TNMXFu

Quelques modifications simples de la documentation sont suggérées dans la vidéo, n’hésitez pas à vous y essayer !!

D’après le recensement des compétences, @trayeur @slaivyn @atrax @smichea @Vainamoinen @Ninlock @jsprenger @jnoel @Moul @davidbp845 @1000i100 @bpresles vous êtes intéressés par l’apprentissage du Rust. Si vous n’avez jamais compilé Duniter v2s, c’est l’occasion d’essayer !

:gb: can someone add subtitles to the video for non-french speakers?

Je n’arrive pas à modifier la description sur peertube, voici donc le sommaire :

prévoir au moins une heure et 20 Go d’espace disque

adresse du dépôt Duniter v2s nodes / rust / Duniter v2S · GitLab

00:16 cloner le dépôt git clone https://git.duniter.org/nodes/rust/duniter-v2s.git
00:46 section CONTRIBUTING docs/setup.md a été déplacé dans docs/dev/setup.md
01:18 installation des dépendances selon votre OS
01:29 installation de rust avec le script rustup curl https://sh.rustup.rs -sSf | sh
02:02 [1 min] installation des channels rust
02:28 docs/dev/index.md n’existe pas
02:38 compilation debug du client substrate avec cargo build
–:-- [2 min] téléchargement des dépendances (dépend de la vitesse de connexion)
02:44 [12 min] compilation dans target/debug (prévoir 20 Go d’espace disque minimum)
04:17 [1 min] compilation du runtime
05:51 tests end2end cucumber cargo cucumber
06:17 [3 min] compilation des tests cucumber
07:05 objectif : modification d’un test cucumber
08:40 je me rends compte qu’il me manque l’autocomplétion
09:05 [15 min] compilation en mode release nécessaire à l’autocomplétion
09:55 je me rends compte que le tutoriel pour l’autocomplétion n’est disponible que pour bash, pas zsh (à ajouter)
10:05 lancement du test cucumber
10:31 modification du test cucumber identity
12:45 examen d’un noeud local via l’interface polkadotjs (https://polkadot.js.org)
13:50 conclusion

7 Likes

C’est l’icône “…” → “Mise à jour”, normalement.

Oui

image

Oui, je sais bien où est le bouton modifier dans l’interface, mais quand je mets mon texte et que je valide, c’est tout buggé, quand je clique sur « voir plus » ça montre rien de plus.

je crois comprendre ton problème, c’est du cache, je viens de tester et j’ai le même soucis que toi, regarde la description dans un navigateur privée, elle est à jour (tu peux virer test2)

Quoi qu’il en soit c’est un problème en effet, je ne me souviens pas l’avoir rencontré auparavant.

1 Like

Toujours ce sacré cache. J’avais Ctrl+Maj+R mais apparemment ça ne suffisait pas. Le test2 me va très bien :wink:

1 Like

Hi Hugo! thanks a lot for the tutorial. I was getting exactly the same error that is shown in minute 6:35 of you video. After setting the node timeout variable all is ok. The problem was I did not know how to do it and I was directly modifying the yml file, which did nothing.

I finish watching the video and see if I can make modifications to the tests.

One more thing, I tryed to fix the two documentation links (the one of the missing doc and the setup one) by creating a branch called david-documentation-fix in my local cloned repo, but I’m not allowed to push it to origin before creating the merge request. Could you guys give me permission.

Thanks a lot!

3 Likes

I’m happy you found this tutorial helpful, I made it with you in mind ^^ (I’ll ask someone to make an english voiceover or do it myself if I find the time).

You can create a merge request from your fork, but I added you as a developer so you can directly add your branch.

1 Like

:gb: I’m working on a written version of this walkthrough which is available here : docs/dev/beginner-walkthrough.md · hugo-doc · nodes / rust / Duniter v2S · GitLab

Please tell me how you feel about it, the goal is to be welcoming for new contributors without previous experience with Rust.

1 Like

Merci pour ce tuto et ces contributions, il y en a grand besoin, car il reste beaucoup à faire et que j’ai trop peu de temps, on a besoin que le plus de nouveau contributeurs possibles s’approprient le cœur duniter-v2s!

Quelques corrections :

  • Vers 4:45 : cargo build avait déjà build le runtime gdev. L’erreur unknown runtime ne signifie pas qu’aucun runtime n’a été build, mais que le runtime sélectionné est inconnu, ce qui est normal puisque aucun runtime n’a été sélectionné. On sélectionne un runtime avec l’option --chain <NAME>. Sachant que l’option --dev est un raccourci équivalent à --chain=gdev.
  • Vers 9:00 : Tu t’es embêté à compiler en mode release pour rien. La sous-commande qui génère les scripts d’auto-complétion fonctionne très bien en mode debug. Je ne sais pas pourquoi cette doc suggère de compiler en release, ce n’est pas moi qui l’ai écrite.

Aussi deux précisions pour les tests cucumber :

  1. Ce n’est pas un seul nœud duniter-v2s qui se lance mais un par scénario de test (jusqu’à quatre nœuds en même temps).
  2. Pas besoin que le test échoue pour que le nœud duniter reste up (c’est même un bug). Il suffit de lancer le test cucumber avec l’option -k (keep).
3 Likes

Effectivement, j’ai été trompé par la discussion ici : Add autocompletion with clap_complete (#37) · Issues · nodes / rust / Duniter v2S · GitLab, je vais corriger ça dans la version écrite.

Merci pour les autres précisions aussi, j’ai bien noté :slight_smile:

1 Like