mirror of
https://github.com/aljazceru/nutshell.git
synced 2026-01-06 10:24:21 +01:00
Mint: add websockets for quote updates (#413)
* add websockets for quote updates * add test (not working) * wip: emit events to everyone * wip: emit events to everyone * wip, lots of things broken but invoice callback works * wip * add wip files * tests almost passing * add task * refactor nut constants * startup fix * works with old mints * wip cli * fix mypy * remove automatic invoice test now with websockets * remove comment * better logging * send back response * add rate limiter to websocket * add rate limiter to subscriptions * refactor websocket ratelimit * websocket tests * subscription kinds * doesnt start * remove circular import * update * fix mypy * move test file in test because it fails if it runs later... dunno why * adjust websocket NUT-06 settings * local import and small fix * disable websockets in CLI if "no_check" is selected * move subscription test to where it was * check proof state with callback, add tests * tests: run mint fixture per module instead of per session * subscription command name fix * test per session again * update test race conditions * fix tests * clean up * tmp * fix db issues and remove cached secrets * fix tests * blindly try pipeline * remove comments * comments
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
from abc import ABC, abstractmethod
|
||||
from typing import Coroutine, Optional, Union
|
||||
from typing import AsyncGenerator, Coroutine, Optional, Union
|
||||
|
||||
from pydantic import BaseModel
|
||||
|
||||
@@ -68,6 +68,7 @@ class PaymentStatus(BaseModel):
|
||||
|
||||
class LightningBackend(ABC):
|
||||
supports_mpp: bool = False
|
||||
supports_incoming_payment_stream: bool = False
|
||||
supported_units: set[Unit]
|
||||
unit: Unit
|
||||
|
||||
@@ -124,9 +125,9 @@ class LightningBackend(ABC):
|
||||
# ) -> InvoiceQuoteResponse:
|
||||
# pass
|
||||
|
||||
# @abstractmethod
|
||||
# def paid_invoices_stream(self) -> AsyncGenerator[str, None]:
|
||||
# pass
|
||||
@abstractmethod
|
||||
def paid_invoices_stream(self) -> AsyncGenerator[str, None]:
|
||||
pass
|
||||
|
||||
|
||||
class Unsupported(Exception):
|
||||
|
||||
Reference in New Issue
Block a user