Un grand merci pour ce suivi et cette nouvelle version
Je ne pensais même plus à la révocation implicite, en effet la G1 commence à rencontrer de tels cas !
Un grand merci pour ce suivi et cette nouvelle version
Je ne pensais même plus à la révocation implicite, en effet la G1 commence à rencontrer de tels cas !
Encore deux erreurs qui sont apparues ces jours-ci. La première concernait le calcul de la date de réentrée dans la toile pour d’anciens membres qui ne l’étaient plus par manque de certifcations, mais qui en conservaient encore quelques anciennes. Ces dernières, déjà acquises, ne devaient plus entrer dans le calcul de dates, mais une copie trop rapide de code les traitait comme des certifications en attente.
La deuxième m’a fait sécher un moment (merci à cgeek pour son aide). Un membre s’est trouvé à court de certifications. Il en a obtenu d’autres et aurait dû, pensais-je, revenir rapidement, ce que, d’ailleurs, WotWizard prédisait. Seulement, il avait, juste avant son départ, renouvelé sa demande d’adhésion, et, pour redevenir membre, il avait dû à nouveau, non seulement retrouver de nouvelles certifications, mais aussi refaire une demande d’adhésion. Trop tôt ! Entre deux demandes d’adhésion, un délai minimum de deux mois est exigé. Du coup, passé ce délai, il lui faudra tout recommencer, mais il a permis la correction d’un bug.
Voici donc les versions 2.8.8sa et 2.8.8se qui corrigent ces deux défauts. La version serveur est en ligne, comme d’habitude, ici.
Je me demande si les clients ne devraient pas filtrer les demandes d’adhésion en tenant compte de ce délai inter-renouvellements de deux mois. Comprendre, dans le cas du post précédent, pourquoi on ne revient pas dans la toile n’est pas évident, alors que les clients pourraient avertir au moment du dernier renouvellement d’adhésion. @kimamila @Moul.
Ta suggestion est formulée de manière complexe.
Je pense avoir compris ce que tu veux dire. Corrige-moi, si je dis autre chose.
Tu suggères que le client gère l’obtention du statut de membre en prenant également en compte l’entrée de l’adhésion dans la chaîne, en plus des certifications requises ?
Aujourd’hui, Silkaj ne gère pas l’obtention du statut de membre mais bien son expiration avec le manque de certifications ou l’expiration de l’adhésion.
Tu as parfaitement compris et exprimé ce que je voulais dire. Merci.
Les blocages de wot-wizard.duniter.org se succèdent depuis maintenant pas mal de temps. Pour des raisons d’accessibilité à la base de données de Duniter par WotWizard, ce dernier continuait à utiliser la version 1.6.30 de Duniter. C’était dommage car on perdait ainsi le gain de vitesse des versions 1.7. Décision a depuis été prise de modifier l’interface entre les deux logiciels afin de passer à Duniter 1.7. Malheureusement, le problème n’est pas simple et le tandem a eu quelques instabilités. cgeek et moi y travaillons, et nous espérons pouvoir améliorer bientôt la situation.
J’ai ajouté un message informatif sur https://wot-wizard.duniter.org :
Une refonte complète de WotWizard vient d’être publiée :
Dans sa dernière version StandAlone 3.0.3, WotWizard devient en fait un… serveur, capable de répondre, en json, à des requêtes GraphQL. L’interface GraphQL est encore à l’état d’ébauche et se développera en fonction des demandes des utilisateurs (@cgeek, @kimamila).
WotWizard est enfin compatible avec les dernières version 1.7.x de Duniter (merci cgeek).
Comme précédemment, une interface utilisateur (indépendante et facultative) permet de piloter l’interface GraphQL par menus et d’afficher les résultats.
Extra ! as-tu une URL d’accès à un serveur ayant l’API GraphQL ? Quelles sont les fonctions développées dessus ?
Pour l’instant, l’interface GraphQL fonctionne (bien) par fichiers. Pour du HTTP, il faudrait que quelqu’un m’aide. La version en Go d’ici quelques semaines.
L’affichage en ligne de WotWizard reprend du service, après pas mal de péripéties, liées à l’incompatibilité du système de développement (BlackBox) avec le manque de composants graphiques d’un serveur.
https://wot-wizard.duniter.org/
Une version BlackBox définitive (v3.1.0) sera publiée d’ici demain sur GitHub, avant la prochaine en Go.
La nouvelle version 3.1.0 de WotWizard est sortie :
https://github.com/duniter/WotWizard/releases
Le manuel est à peu près exhaustif, mais n’hésitez pas à me poser des questions.
J’ai le plaisir d’annoncer la sortie de WotWizard v4.0.0. Elle a à peu près les mêmes fonctionnalités que la précédente, mais la partie serveur est maintenant écrite en Go.
En résumé :
There are two parts in WotWizard: first a server (wwServer), written in Go (v1.12.5) and which communicates through files containing, on input, GraphQL requests, and on output, JSON answers; second a graphical user interface (WotWizard.exe) written in Component Pascal (BlackBox v1.7.1 under Windows or Wine), which generates GraphQL requests through menus and interactive windows, and display answers with texts or graphics.
This program needs that a Duniter node runs on the same computer.
The version of the associated Duniter node must be 1.7.17 at least.
Les requêtes GraphQL disponibles sont :
{WWServerStart}: Install a subscription to the update of the WotWizard window. Do nothing if the subscription is already installed.
{WWServerStop}: Erase the subscription to the update of the WotWizard window. Do nothing if the subscription is not already installed.
{WotWizardListFile}: Display the WotWizard file.
{WotWizardListPerm}: Display the list of WotWizard permutations.
{IdSearchFind(Hint:“< hint >”){<set of (OldMembers, Members, FutureMembers)>}}: Display the list of identities whose pseudos or public keys begin with < hint > and whose status is old member, active member or newcomer, according to the given set; the list includes pseudos, hashes and status.
{IdSearchFix(Hash:“< hash >”){<set of (Distance, Quality, Centrality)>}}: Display informations for the identity corresponding to < hash > and including, or not, her distance to the wot, her quality and her degree of centrality according to the given set.
{History(Uid:“< uid >”)}: Display the history of a member or an old member.
{Parameters}: Display the block 0 parameters of the money.
{IdentitiesRevoked}: Display the list of revoked identities.
{IdentitiesMissing}: Display the list of excluded, but not yet revoked, identities.
{IdentitiesMembers}: Display the list of active identities.
{CertificationsFrom}: Display the list of active certifications, grouped by senders.
{CertificationsTo}: Display the list of active certifications, grouped by receivers.
{Sentries}: Display the list of sentries.
{Sandbox}: Display the content of the sandbox, with different sortings.
{QualitiesDist}: Display the distances to the wot of all active members.
{QualitiesQual}: Display the qualities of all active members.
{CentralitiesAll}: Display the degrees of centrality of all active members.
{MemEnds}: Display the ends of validity of memberships for all active members, sorted by dates.
{MissEnds}: Display the dates of revocation of all excluded, but not yet revoked, identities, sorted by dates.
{CertEnds}: Display the dates of loss of the fifth received certification for all active or excluded, but not revoked, identities.
{MembersCountAll}: Display the number of active members, sorted by dates of events (in or out the wot).
{MembersCountFluxAll(timeUnit:<time unit (s)>)}: Display the flux of active members by < time unit >.
{MembersCountFluxPMAll(timeUnit:<time unit (s)>)}:Display the flux of active members by < time unit > and by member.
{MembersFirstEntryAll}: Display the number of first entries into the wot, sorted by dates of events (entries).
{MembersFEFluxAll(timeUnit:<time unit (s)>)}: Display the flux of first entries by < time unit >.
{MembersFEFluxPMAll(timeUnit:<time unit (s)>)}: Display the flux of first entries by < time unit > and by member.
{MembersLossAll}: Display the number of members exiting the wot, minus the number of reentries (losses), sorted by dates of events (in or out the wot).
{MembersLossFluxAll(timeUnit:<time unit (s)>)}: Display the flux of losses by < time unit >.
{MembersLossFluxPMAll(timeUnit:<time unit (s)>)}: Display the flux of losses by < time unit > and by member.
Un bug qui perturbait l’affichage de WotWizard depuis quelques jours vient d’être corrigé dans la nouvelle version 4.0.1.
La correction devrait bientôt arriver dans la version en ligne.
Les retours de deux ex-membres (Sombre_Item et JulienM) étaient prévus trop tôt par WotWizard. En effet, ces deux ex-membres n’avaient pas renouvelé leurs adhésions. Ils l’ont donc fait, pour à nouveau perdre leurs qualités de membre, et leur adhésion, peu après par manque de certifications. Ils ont maintenant retrouvé les certifications manquantes et ont renouvelé leurs demandes d’adhésion. Mais… le protocole de Duniter stipule qu’il doit s’écouler un minimum de deux mois entre deux demandes d’adhésion/réadhésion successives. Il doivent donc attendre encore un peu, ce que WotWizard avait mal vu à cause d’un bug.
L’affichage correct donne :
08/12/2019 11:30:05
Sombre_Item : Probabilité = 100%
06/01/2020 18:11:41
JulienM : Probabilité = 100%
Merci pour cette explication @gerard94, je comprends mieux pour JulienM.
J’avais peur qu’il y ait aussi un problème avec un autre membre du Mans : https://g1.duniter.fr/#/app/wot/akVu1K55w3Y1NpGp4toJ4gX1JuPZW9Q4iLvwMi4qgqq/pirfabien, mais il vient de repasser membre à l’instant !
Mise à jour en cours de déploiement, WotWizard peut être instable durant cette transition.
edit : la version a bien été déployée ce matin 10h.
Après une panne provisoire, le serveur WotWizard a redémarré aujourd’hui. Merci à cgeek.
Une nouvelle version de WotWizard vient d’être publiée.
Quelques améliorations : de meilleurs logs, la possibilité d’arrêter le serveur de façon standard (Ctrl-C, etc…) sans risquer de casser la base de données, accélération et enrichissement de quelques fonctions, correction d’un bug mineur dans l’affichage des prévisions, mise à jour de la doc, en français et en anglais.
Peu de choses. Mais il y a plus en préparation !
Nouvelle version 4.1.1 (correction de bugs) :
Nouvelle version de maintenance 4.1.2 :
Correction of a bug crashing rarely the server.