161 Commits

Author SHA1 Message Date
ok300
a2005e1ff0 Remove Default implementation of MintMeltLimits
The default would have been min=0, max=0. This made any mint initialized with MintMeltLimits::default() to fail every mint and melt operation, because the amount was out of bounds.
2025-01-28 12:34:21 +01:00
ok300
9aa304d3d5 Rename vars for clarity 2025-01-26 11:32:04 +01:00
thesimplekid
67be74abb8 feat: tests on lnd node 2025-01-24 14:55:02 +00:00
thesimplekid
486f98bc8b feat: lnd mint 2025-01-23 23:45:31 +00:00
thesimplekid
72c66af8b7 feat: second lnd node 2025-01-23 20:56:01 +00:00
thesimplekid
ed23853d5d feat: abstract create mint 2025-01-22 20:03:20 +00:00
thesimplekid
c9c2061773 chore: update nix channel 2025-01-22 13:40:49 +00:00
thesimplekid
a9662d0362 refactor: add second cln node 2025-01-20 21:07:21 +00:00
thesimplekid
6bd4c0c899 feat: update regtest 2025-01-20 20:54:59 +00:00
thesimplekid
b86d42b6a5 fix: extra mint/melt info limits 2025-01-16 11:22:37 +00:00
thesimplekid
57a7aa09d6 refactor: pure tests 2025-01-14 12:24:30 +00:00
thesimplekid
190256fce6 refactor: start mint shared fn 2025-01-13 22:27:12 +00:00
thesimplekid
c5d4fa52ef refactor: regtest mint as bin 2025-01-13 20:58:19 +00:00
thesimplekid
1f45be28a3 refactor: mint builder in itest 2025-01-13 20:05:17 +00:00
C
8fe0982c6d Introduce cashu to host the shared types, traits and other common code (#519)
---------

Co-authored-by: thesimplekid <tsk@thesimplekid.com>
2025-01-12 12:50:05 +00:00
thesimplekid
6a8a5a7941 fix: mpp (#523) 2025-01-05 14:42:44 +00:00
David Caseria
d6b7d49ea9 Return proofs for wallet mint function (#520)
* chore: update flake

---------

Co-authored-by: thesimplekid <tsk@thesimplekid.com>
2025-01-03 13:23:52 +00:00
C
c6e27d0de9 Add ArcSwap to update Mint configuration at runtime (#503)
* Add ArcSwap to update Mint configuration at runtime

The main goal is to change settings without having multiple RwLock everywhere,
instead having ArcSwap to update the configuration without having access to a
mutable reference to the Mint.

This will allow the RPC Server, or any other medium to update the Mint without
minimum contention.

* Rename structs

* Move quote_ttl to the new config

* Fixed clippy issues
2024-12-25 09:53:58 -05:00
thesimplekid
003a8f1b47 feat: signature on mint witness 2024-12-23 10:25:42 -05:00
thesimplekid
0e12314643 chore: Release 0.6.0 2024-12-17 08:18:32 -05:00
C
dcca57dbd1 Introduce pluggable backend cache for the HTTP layer. (#495)
---------

Co-authored-by: thesimplekid <tsk@thesimplekid.com>
2024-12-17 07:39:03 -05:00
thesimplekid
b9df44b10a chore: update regtest-rs 2024-12-10 14:12:03 +00:00
Cesar Rodas
760564cee0 Introduce subscription support in the Wallet crate.
The main goal is to add a subscription to CDK Mint updates into the wallet.
This feature will be particularly useful for improving the code whenever loops
hit the mint server to check status changes.

The goal is to add an easy-to-use interface that will hide the fact that we're
connecting to WebSocket and subscribing to events. This will also hide the fact
that the CDK-mint server may not support WebSocket updates.

To be fully backward compatible, the HttpClientMethods traits have a new
method, `subscribe,` which will return an object that implements
`ActiveSubscription.`

In the primary implementation, there is a `SubscriptionClient` that will
attempt to connect through WebSocket and will fall to the HTTP-status pull and
sleep approach (the current approach), but upper stream code will receive
updates as if they come from a stream of updates through WebSocket. This
`SubscriptionClient` struct will also manage reconnections to WebSockets (with
automatic resubscriptions) and all the low-level stuff, providing an
easy-to-use interface and leaving the upper-level code with a nice interface
that is hard to misuse. When `ActiveSubscription` is dropped, it will
automatically unsubscribe.

Fixed bug with Default as described in https://github.com/cashubtc/cdk/pull/473#discussion_r1871032297
2024-12-08 16:25:00 +00:00
ok300
86c4c2dfeb Add support for pure integration tests (#458)
* Embed mint_url as a field of HttpClient

* Create pure integration tests

* DirectMintConnection: convert between String and Uuid
2024-12-08 14:33:58 +00:00
Timothée Delabrouille
7d87c4806c feat: use Uuid as mint and melt quote ids (#469) 2024-12-05 09:58:53 +00:00
thesimplekid
d1b03d39c5 chore: update to 0.5.0 2024-11-19 09:55:46 +00:00
thesimplekid
6dd023a71c chore: cargo fmt 2024-11-15 19:38:59 +00:00
César D. Rodas
cc5b267367 fix: Send current state of the subscriptions (#444) 2024-11-10 12:08:44 +00:00
César D. Rodas
6973e53799 Mint Websockets (NUT-17) (#394)
---------

Co-authored-by: thesimplekid <tsk@thesimplekid.com>
2024-11-06 14:36:13 +00:00
thesimplekid
9d65b603bc feat: mintd use mint builder 2024-11-06 09:13:22 +00:00
delcin-raj
c45efe42d2 fix: resolve flakey ci tests
Before minting the quote wait till the status of the quote is paid
2024-11-06 07:56:47 +00:00
thesimplekid
3db25640dc feat: support custom unit 2024-11-05 14:21:21 +00:00
David Caseria
7eb3449710 Abstract HttpClient into HttpClientMethods trait (#429)
* Abstract HttpClientMethods trait
---------

Co-authored-by: ok300 <106775972+ok300@users.noreply.github.com>
2024-11-04 19:14:40 +00:00
ok300
20033ce94b Consolidate Wallet::get_proofs variants 2024-10-28 19:40:36 +00:00
lollerfirst
c25bf79e8c Cache SwapResponse, MeltBolt11Response and MintBolt11Response (#361)
* added cache to mint state and post request wrapper macro.
---------

Co-authored-by: thesimplekid <tsk@thesimplekid.com>
2024-10-05 11:18:23 +02:00
thesimplekid
e54548b125 chore: add sleep between quote and mint 2024-10-02 08:56:20 +02:00
thesimplekid
48ac30b973 chore: add sleeps between quote and mint 2024-10-01 21:15:10 +02:00
thesimplekid
610571d05b fix: itest change ordering 2024-09-30 20:43:04 +02:00
thesimplekid
7ea568e615 feat: sql store signatures dleq 2024-09-30 12:20:43 +02:00
thesimplekid
008c913583 refactor: ln backends within mint 2024-09-27 10:04:33 +02:00
thesimplekid
5139c47dac feat: check outgoing payment status flow 2024-09-25 20:28:05 +02:00
thesimplekid
3413c24936 ci: add db matrix to ci 2024-09-21 11:10:38 +02:00
thesimplekid
4a0637a6a5 feat: itests select db 2024-09-21 11:10:38 +02:00
thesimplekid
f2867188a8 fix: sqlx sqlite settings
feat: use transactions in all sql fns
2024-09-21 11:10:38 +02:00
thesimplekid
f9bb5eb913 feat: itests
fix: melt change promises amount
2024-09-19 11:43:43 +02:00
lollerfirst
7e860c71f2 NUT-04 Mint Quote Description (#337) 2024-09-12 12:27:52 +01:00
thesimplekid
59deb34143 refactor: itest as lib 2024-09-10 14:27:05 +01:00
thesimplekid
a06b52039c fix: itest cdk version 2024-09-08 22:39:12 +01:00
thesimplekid
3bf1a3b28f chore: version cdk in other crates 2024-09-08 22:12:06 +01:00
thesimplekid
f7e4ea3a6c Release 0.4.0 2024-09-08 21:48:51 +01:00