Ğecko talks / user support

J’ai peur que tu fonces seul trop vite, une app mobile c’est un très gros projet il va grossir et grossir encore, et tot ou tard tu ne pourras plus le maintenir seul.

Il me semble important de ralentir et mettre en place dès maintenant le nécessaire pour pouvoir accueillir d’autres contributeurs: identifier des issues faciles, mettre en place un workflow qui fonctionne à plusieurs et qui soit sécurisant (qu’on ait pas peur de tout casser en contribuant).

Tu as beaucoup appris en Flutter depuis 2 ans, il va être temps de transmettre et de créer une équipe :slight_smile:

Oui ça demande de ralentir, oui tout seul on va plus vite, mais ensemble on va plus loin, ça ne sert à rien de rusher une app complète que tu ne pourras pas maintenir seul dans la durée.

2 Likes

En premières contribution, moi ce dont j’ai le plus besoin, c’est de quelqu’un qui s’occupe de la CI de Ğecko sur le gitlab, ainsi qu’un serveur de CI plus puissant que redshift.

Ensuite, je n’ai jamais fait d’atelier ou formation de ce genre, ce serait une première pour moi.

Il faudrait déjà que je sonde sur ce forum qui serait intéressé par un workshop sur Ğecko, ou sur Flutter de manière plus général.

Je disais à Hugo tout à l’heure, que j’ai bien envie de transformer le gdev_annuaire en Ğecko explorer, uniquement pour web, lecture seul sur l’indexer, avec une recherche avancée, vue en tuile des profiles comme Ğecko, activités des profiles, ect …

Ca me semble beaucoup plus abordable pour commencer à mettre les mains dans Flutter pour plusieurs raisons:

  • Pas besoin de la stack android studio et compagnie, ni d’émulateur, chrome et vscode suffisent
  • Projet naissant que je n’ai pas encore architecturé mais je compte reprendre globalement la même archi que Ğecko
  • Beaucoup plus simple comme app, pas de gestion de coffre/portefeuille, pas de paiement ni certifs, que de l’exploration

Même si ça me démange de bosser sur cet annuaire, parceque ça me parait très simple et que ça me change un peu de Ğecko et sa complexité, je sais que ce serait bien de plutôt organiser des workshop en visio/peerprograming pour accompagner des contributeurs à le faire.

Je vais lancer un sondage pour voir si ça intéresse du monde.

2 Likes

Pour Ğecko c’est vrai que la stack est un peu trop galère à installer…

Pour simplifier ça, je pense qu’il faudrait que tu définisse un devcontainer, ça permettrais à n’importe-quel dev qui à vscode et docker de pouvoir contribuer à Ğecko sans rien avoir à installer :slight_smile:

J’ai trouvé un type qui à déjà fait ça pour flutter android:

En plus il map l’usb, donc normalement ça permet même de tester sur son phone en debug usb :wink:

2 Likes

Je pense qu’on est dans une phase où il faut se permettre d’aller vite. Un app comme Ğecko est un projet qu’on peut être amené à réécrire en grande partie plusieurs fois avant de stabiliser ce qu’on veut, tout simplement parce que les spécifications changent avec le temps. Évidemment avant de sortir la Ğ1 il faudra consolider et restructurer, mais pour l’instant ça me semble trop tôt et handicapant.

Il ne faut pas oublier que Ǧecko a commencé sur GVA avec tes bindings Rust et que maintenant c’est sur Substrate RPC avec un binding Javascript Polkadotjs et Apollo GraphQL pour l’indexeur. De plus l’écosystème Dart/Flutter évolue encore assez rapidement, Poka est obligé de maintenir des forks pour corriger des problèmes de null safety qui ne seront peut-être pas corrigés upstram. Il n’est pas impossible que dans un an ou deux, on préfère écrire une nouvelle lib en pur Dart pour remplacer des bouts entiers.

Je pense que ce serait une erreur de gérer la codebase de Ǧecko comme celle de Duniter-v2s, surtout à ce stade du projet où on a besoin de beaucoup de flexibilité.

Donc mon avis personnel est qu’il n’est pas encore temps de ralentir, c’est trop tôt pour ça.

1 Like

Ma priorité est d’automatiser les builds aux ptits oignons pour me faciliter le boulo, et en même temps de traiter tous les bugs connus au fil de l’eau.

En fait je pense que Ğecko a plus besoin vite de tests d’intégrations complets et à jour, que d’autre chose.

Couvrir ces tests peut être fait par n’importe qui, même sans aucune connaissance de la codebase, car il s’agit de faire cliquer un robot à différents endroits de l’écran grâce à des keys déclarés partout dans le code, et vérifier si l’écran affiche bien ce qui est attendu.

Le plus important est d’éliminer les bugs, le reste, comme dit hugo, ça peut attendre la v1 le temps que la codebase se transforme encore pas mal, et se stabilise au fur et à mesure.

Il faut approfondir le fork de polkawallet-sdk que j’ai fait, pour le spécialiser sur les besoins de Ğecko, puis push ce fork dans un package sur pub.dev, compatible exclusivement mobile.

En parallèle, en extrayant tout ce qu’il faut pour gdev_annuaire, on pourra ensuite faire un autre package avec des widget customisable de Query vers l’indexer avec les bonnes requêtes, check de node up, ect … Ce dernier pouvant être inclu dans tous projets flutter Web/Desktop/Mobile.

On a la chance de pas espérer sortir gecko en prod avant la sortie de la Ğ1 v2s, donc ça laisse encore beaucoup de temps pour tout stabiliser, mais bien scinder les packages en briques, ainsi que refaire tous les tests d’intégrations, ça oui le plus tôt sera le mieux.


On est pas à l’abri d’un contributeur qui un jour se décide à binder une lib polkadot rust en dart, et qu’on préfère remplacer polkawallet-sdk par ça pour tous ce qui est:

  • Génération et chiffrement des seeds
  • Dérivations, signatures, ect …
  • Requêtes RPC
  • smoldot?

dans un package Dart comprenant ce binding dart/rust, + en full dart tout ce qui est stockage et gestion de la seed chiffré, et requêtes indexer.

Cette archi me semble la meilleurs sur tous les plans pour le long terme, mais nécessite du taf en Rust que je ne ferais pas.

1 Like

Vous pouvez désormais voir l’historique de chaque compte dans la v0.0.9+11 ! :slight_smile:

https://s8.gifyu.com/images/Peek-16-06-2022-20-23.gif

4 Likes

:fr:

À tous les testeurs de Ǧecko, l’appli est désormais disponible en plusieurs langues !

Pour l’essayer, changez la langue dans les paramètre système, puis redémarrez Ğecko.

:gb:

To all Ǧecko testers, the app is now available in multiple languages!

To try it out, change the language in the system settings, then restart Ğecko.

:es:

Translation is not ready yet in spanish. Please edit this file to provide translation : assets/translations/es.json · master · clients / Ğecko · GitLab

4 Likes

J’ai ouvert quelques ticket sur le dépôt de Ğecko, certains sont taggué « GoodFirstIssue » signifiant qu’ils sont simple et intéressant à faire pour découvrir le code :slight_smile:

N’hésitez pas à ouvrir des ticket pour signaler un bug ou demander une fonctionnalité.

4 Likes

La v0.0.9+13 corrige quelques bugs.

Merci @HugoTrentesaux pour tes conseils au sujet du bug #14 et pour tes contribs de refacto à venir autour de ce sujet ^^

:artificial_satellite: Cette version est désormais disponible sur le dépôt f-droid de Duniter :slight_smile:
Merci @llaq pour cette contribution et à l’aide d’ @immae !

https://f-droid.duniter.org/

Une fois le dépôt Duniter ajouté, vous devriez pouvoir mettre à jours Gecko directement même si vous aviez installé la version précédente via apk directement, ça a fonctionné chez moi.

3 Likes

MAJ via le dépôt, réussi :wink: :+1:

2 Likes

Maj OK pour moi

1 Like

21 messages ont été scindés en un nouveau sujet : Ğecko sur iPhone / iOS

Vous pouvez désormais choisir un noeud Duniter personnalisé dans les paramètres, ainsi qu’un endpoint d’indexer personnalisé:

L’indexer par défaut est désormais https://idx.gdev.cgeek.fr car plus à jours.

1 Like

J’ai voulu faire un virement mais je suis allé trop vite. J’ai cliqué sur « fermer » avant la fin du traitement.
Du coup il ne s’est pas fait.
Et après quand j’essaie de refaire ce virement j’ai une erreur


Je comprends à peu près le problème, mais un message plus « parlant » serait bienvenue.

Je me demande si cela va se résoudre tout seul ou s’il y a une manip à faire pour débloquer la situation.

1 Like

Même problème actuellement mais apparemment ça vient pas de Gecko, tuxmain a un problème aussi depuis Polkadotjs (je teste pas je suis sur smartphone)

[edit] il semble que la blockchain est à l’arrêt depuis quatorze heures

image

2 Likes

Ce serait sympa que l’historique affiche les frais, pour les néophytes on peut se demander où sont passés les 3 GD…

1 Like

Oui je réfléchie encore à comment le présenter.
Ici il y à 2 choses:

  • 2ĞD sont réservés pour l’existence du compte
  • 1ĞD sont dépensés en frais de création de compte

Je pense d’une part afficher le détail des frais en petit lors de l’exécution du paiement, et d’autre part afficher un petit « i » à côté des soldes de chaque compte. En cliquant sur le i ou le solde, on aurait le détail:

  • Solde transférable: 7ĞD (balance.free + unclaimedUd)
  • Solde réservé: 2ĞD (réserve existentielle)
  • Total: 9ĞD
1 Like

En clair, si je vide le compte (fermeture ?), je peux récupérer 9 ĞD.
Il va falloir expliquer tout ça à tout le monde. À moins qu’il y ait encore des évolutions là-dessus avec les notions de quotas ?

Non dans Ğecko tu ne peux pas vider un portefeuille en dessous de 3ĞD de solde déjà. Essai tu verra que l’interface t’en empêchera quoi que tu essai.
Car si tu le fait, les ĞD restantes ne seront plus transférables, tant que tu ne réalimente pas le compte.

Les 2ĞD de réserves sont bloqués à jamais jusqu’à ce que le compte soit détruit.

Dans Ğecko actuellement, la suppression d’un portefeuille entraîne automatiquement le versement de son solde intégrale (réserve comprise) vers le portefeuille par défaut (qui lui ne peux pas être supprimé) et donc sa destruction en blockchain.

Il suffira juste de rendre cette action actuellement invisible personnalisable, en proposant de verser le solde vers une adresse personnalisé autre que juste le portefeuille par defaut.

C’est 3 ĞD pas 1

1 Like