From 0194fef619e32b56f2db69ba25856d000f5181be Mon Sep 17 00:00:00 2001 From: callebtc <93376500+callebtc@users.noreply.github.com> Date: Sat, 14 Jan 2023 13:28:29 +0100 Subject: [PATCH] legacy test --- cashu/core/base.py | 9 ++++++--- cashu/wallet/wallet.py | 9 +++++++-- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/cashu/core/base.py b/cashu/core/base.py index 26eaf9a..5288b0c 100644 --- a/cashu/core/base.py +++ b/cashu/core/base.py @@ -40,9 +40,7 @@ class Proof(BaseModel): class Proofs(BaseModel): - """TODO: Use this model""" - - proofs: List[Proof] + __root__: List[Proof] class Invoice(BaseModel): @@ -79,6 +77,11 @@ class BlindedMessages(BaseModel): blinded_messages: List[BlindedMessage] = [] +class PostMintResponseLegacy(BaseModel): + # NOTE: Backwards compability for < 0.7.1 where we used a simple list and not a key-value dictionary + __root__: List[BlindedSignature] = [] + + class PostMintResponse(BaseModel): promises: List[BlindedSignature] = [] diff --git a/cashu/wallet/wallet.py b/cashu/wallet/wallet.py index e797025..4484805 100644 --- a/cashu/wallet/wallet.py +++ b/cashu/wallet/wallet.py @@ -24,6 +24,7 @@ from cashu.core.base import ( MeltRequest, P2SHScript, PostMintResponse, + PostMintResponseLegacy, Proof, SplitRequest, TokenV2, @@ -260,8 +261,12 @@ class LedgerAPI: resp.raise_for_status() reponse_dict = resp.json() self.raise_on_error(reponse_dict) - promises = PostMintResponse.parse_obj(reponse_dict) - return self._construct_proofs(promises.promises, secrets, rs) + try: + promises = PostMintResponseLegacy.parse_obj(reponse_dict) + return self._construct_proofs(promises, secrets, rs) + except: + promises = PostMintResponse.parse_obj(reponse_dict) + return self._construct_proofs(promises.promises, secrets, rs) async def split(self, proofs, amount, scnd_secret: Optional[str] = None): """Consume proofs and create new promises based on amount split.