UID identité plus membre pas affiché dans la liste de blocs

Merci @DeathReaper je viens de renouveler mes 2 comptes, tiens @kimamila je constate que lorsqu’un membre forgeron perd le statut de membre son nom ne s’affiche plus :

image

J’ai le même problème avec Silkaj. C’est à cause de l’absence de GVA, ou de BMA qui ne permet pas de rechercher des identités non membres dans une liste. Du coup, cette liste est pétée, car les clients récupèrent la liste des membres, car c’est généralement des identités membres qui ont écrit des blocs, sauf dans ce cas précis où l’identité vient d’être exclue.

silkaj -gt blocks 30
Traceback (most recent call last):
  File "/home/moul/silkaj/silkaj/wot.py", line 237, in identity_of
    return await client(wot.identity_of, pubkey_uid)
  File "/home/moul/.cache/pypoetry/virtualenvs/silkaj-58dUTebQ-py3.8/lib64/python3.8/site-packages/duniterpy/api/bma/wot.py", line 355, in identity_of
    return await client.get(
  File "/home/moul/.cache/pypoetry/virtualenvs/silkaj-58dUTebQ-py3.8/lib64/python3.8/site-packages/duniterpy/api/client.py", line 362, in get
    response = await client.requests_get(url_path, **params)
  File "/home/moul/.cache/pypoetry/virtualenvs/silkaj-58dUTebQ-py3.8/lib64/python3.8/site-packages/duniterpy/api/client.py", line 248, in requests_get
    raise DuniterError(error_data)
duniterpy.api.errors.DuniterError: Error code 1002 - Not a member

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/home/moul/.cache/pypoetry/virtualenvs/silkaj-58dUTebQ-py3.8/lib64/python3.8/site-packages/click/core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "/home/moul/.cache/pypoetry/virtualenvs/silkaj-58dUTebQ-py3.8/lib64/python3.8/site-packages/click/core.py", line 782, in main
    rv = self.invoke(ctx)
  File "/home/moul/.cache/pypoetry/virtualenvs/silkaj-58dUTebQ-py3.8/lib64/python3.8/site-packages/click/core.py", line 1259, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/moul/.cache/pypoetry/virtualenvs/silkaj-58dUTebQ-py3.8/lib64/python3.8/site-packages/click/core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/moul/.cache/pypoetry/virtualenvs/silkaj-58dUTebQ-py3.8/lib64/python3.8/site-packages/click/core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "/home/moul/silkaj/silkaj/tools.py", line 53, in wrapper
    return loop.run_until_complete(f(*args, **kwargs))
  File "/usr/lib64/python3.8/asyncio/base_events.py", line 616, in run_until_complete
    return future.result()
  File "/home/moul/silkaj/silkaj/commands.py", line 176, in list_blocks
    idty = await identity_of(issuer["pubkey"])
  File "/home/moul/silkaj/silkaj/wot.py", line 239, in identity_of
    raise DuniterError(e)
  File "/home/moul/.cache/pypoetry/virtualenvs/silkaj-58dUTebQ-py3.8/lib64/python3.8/site-packages/duniterpy/api/errors.py", line 12, in __init__
    super().__init__("Error code {0} - {1}".format(data["ucode"], data["message"]))
TypeError: 'DuniterError' object is not subscriptable
ERROR:asyncio:Unclosed client session
client_session: <aiohttp.client.ClientSession object at 0x7f15b7353f70>
ERROR:asyncio:Unclosed connector
connections: ['[(<aiohttp.client_proto.ResponseHandler object at 0x7f15b72fda60>, 10408619.932643484)]']
connector: <aiohttp.connector.TCPConnector object at 0x7f15b7353310>
1 Like

A préciser dans les spec de GVA du coup : pouvoir obtenir le username d’une identité non membre qui à perdu son statut de membre il y à moins de 2 ans :slight_smile:

1 Like

J’aimerais un chemin sur lequel rechercher de manière simple une identité par son uid. Peu importe son statut.

En fait Silkaj utilise identity-of :

curl https://g1-test.duniter.org/wot/identity-of/Vincentest
{
  "ucode": 1002,
  "message": "Not a member"
}⏎   

Par contre, ce qui est dommage avec ce chemin c’est que c’est bien une identité, plus membre certe, mais elle n’est plus récupérable.