cryptoadvance / specterext-stacktrack

Specter Desktop plugin to add time series charts for visualizing wallet balances
MIT License
5 stars 3 forks source link

TypeError: '<' not supported between instances of 'NoneType' and 'int' (for unconfirmed txs) #12

Open k9ert opened 1 year ago

k9ert commented 1 year ago

This is happening for unconfirmed txs:

[2023-01-24 11:44:15,601] ERROR in controller: Uncaught exception: '<' not supported between instances of 'NoneType' and 'int'
[2023-01-24 11:44:15,606] ERROR in controller: Traceback (most recent call last):
  File "/home/kim/src/specter-desktop/.env/lib/python3.10/site-packages/flask/app.py", line 1523, in full_dispatch_request
    rv = self.dispatch_request()
  File "/home/kim/src/specter-desktop/.env/lib/python3.10/site-packages/flask/app.py", line 1509, in dispatch_request
    return self.ensure_sync(self.view_functions[rule.endpoint])(**req.view_args)
  File "/home/kim/src/specter-desktop/.env/lib/python3.10/site-packages/flask_login/utils.py", line 272, in decorated_view
    return func(*args, **kwargs)
  File "/home/kim/src/specter-desktop/.env/lib/python3.10/site-packages/cryptoadvance/specterext/stacktrack/controller.py", line 79, in wallets_overview
    txs: list = _extract_txs(wallets)
  File "/home/kim/src/specter-desktop/.env/lib/python3.10/site-packages/cryptoadvance/specterext/stacktrack/controller.py", line 124, in _extract_txs
    return sorted(txs, key=lambda d: d["blockheight"], reverse=True)
TypeError: '<' not supported between instances of 'NoneType' and 'int'

[2023-01-24 11:44:15,607] INFO in _internal: 127.0.0.1 - - [24/Jan/2023 11:44:15] "GET /svc/stacktrack/wallets_overview HTTP/1.1" 500 -
k9ert commented 1 year ago

Reasonable complaints for unconfirmed Txs:

    # Reverse sort, like wallets do
    return sorted(txs, key=lambda d: d["blockheight"], reverse=True)
moneymanolis commented 1 year ago

My suggestion would be to exclude unconfirmed tx here. Unconfirmed tx amounts shouldn't be considered in the chart yet anyways. @wombat6 what do you think? I love the feature in general. Great work!

moneymanolis commented 1 year ago

@noubre might be interesting to you.