| 
					
				 | 
			
			
				@@ -20,7 +20,7 @@ use cdk_common::{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 use error::Error; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 use lightning_invoice::Bolt11Invoice; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 use sqlx::sqlite::SqliteRow; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-use sqlx::{Pool, Row, Sqlite}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+use sqlx::{Executor, Pool, Row, Sqlite}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 use uuid::fmt::Hyphenated; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 use uuid::Uuid; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -37,11 +37,14 @@ pub struct MintSqliteDatabase { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 impl MintSqliteDatabase { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     /// Check if any proofs are spent 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    async fn check_for_spent_proofs( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    async fn check_for_spent_proofs<'e, 'c: 'e, E>( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         &self, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        transaction: &mut sqlx::Transaction<'_, sqlx::Sqlite>, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        transaction: E, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         ys: &[PublicKey], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    ) -> Result<bool, database::Error> { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    ) -> Result<bool, database::Error> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    where 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        E: Executor<'c, Database = Sqlite>, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if ys.is_empty() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             return Ok(false); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -59,7 +62,7 @@ impl MintSqliteDatabase { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             .fold(sqlx::query(&check_sql), |query, y| { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 query.bind(y.to_bytes().to_vec()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            .fetch_all(&mut *transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            .fetch_all(transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             .await 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             .map_err(Error::from)? 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             .len(); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -111,7 +114,7 @@ WHERE unit IS ?; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         "#, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .bind(unit.to_string()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        .execute(&mut transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .execute(&mut *transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .await; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         match update_res { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -136,7 +139,7 @@ AND id IS ?; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .bind(unit.to_string()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .bind(id.to_string()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        .execute(&mut transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .execute(&mut *transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .await; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         match update_res { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -168,7 +171,7 @@ AND unit IS ? 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         "#, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .bind(unit.to_string()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        .fetch_one(&mut transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .fetch_one(&mut *transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .await; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         let rec = match rec { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -207,7 +210,7 @@ FROM keyset 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 WHERE active = 1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         "#, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        .fetch_all(&mut transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .fetch_all(&mut *transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .await; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         match recs { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -268,7 +271,7 @@ ON CONFLICT(request_lookup_id) DO UPDATE SET 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .bind(quote.expiry as i64) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .bind(quote.request_lookup_id) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .bind(quote.pubkey.map(|p| p.to_string())) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        .execute(&mut transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .execute(&mut *transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .await; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         match res { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -297,7 +300,7 @@ WHERE id=?; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         "#, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .bind(quote_id.as_hyphenated()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        .fetch_one(&mut transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .fetch_one(&mut *transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .await; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         match rec { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -333,7 +336,7 @@ WHERE request=?; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         "#, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .bind(request) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        .fetch_one(&mut transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .fetch_one(&mut *transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .await; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         match rec { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -370,7 +373,7 @@ WHERE request_lookup_id=?; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         "#, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .bind(request_lookup_id) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        .fetch_one(&mut transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .fetch_one(&mut *transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .await; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         match rec { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -409,7 +412,7 @@ WHERE id=?; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         "#, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .bind(quote_id.as_hyphenated()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        .fetch_one(&mut transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .fetch_one(&mut *transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .await; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         let quote = match rec { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             Ok(row) => sqlite_row_to_mint_quote(row)?, 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -430,7 +433,7 @@ WHERE id=?; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .bind(state.to_string()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .bind(quote_id.as_hyphenated()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        .execute(&mut transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .execute(&mut *transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .await; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         match update { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -457,7 +460,7 @@ SELECT * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 FROM mint_quote 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         "#, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        .fetch_all(&mut transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .fetch_all(&mut *transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .await; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         match rec { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -494,7 +497,7 @@ WHERE state = ? 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         "#, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .bind(state.to_string()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        .fetch_all(&mut transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .fetch_all(&mut *transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .await; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         match rec { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -528,7 +531,7 @@ WHERE id=? 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         "#, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .bind(quote_id.as_hyphenated()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        .execute(&mut transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .execute(&mut *transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .await; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         match res { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -586,7 +589,7 @@ ON CONFLICT(request_lookup_id) DO UPDATE SET 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .bind(quote.payment_preimage) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .bind(quote.request_lookup_id) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .bind(quote.msat_to_pay.map(|a| u64::from(a) as i64)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        .execute(&mut transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .execute(&mut *transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .await; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         match res { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -615,7 +618,7 @@ WHERE id=?; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         "#, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .bind(quote_id.as_hyphenated()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        .fetch_one(&mut transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .fetch_one(&mut *transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .await; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         match rec { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -648,7 +651,7 @@ SELECT * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 FROM melt_quote 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         "#, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        .fetch_all(&mut transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .fetch_all(&mut *transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .await 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .map_err(Error::from); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -685,7 +688,7 @@ WHERE id=?; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         "#, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .bind(quote_id.as_hyphenated()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        .fetch_one(&mut transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .fetch_one(&mut *transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .await; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         let quote = match rec { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -707,7 +710,7 @@ WHERE id=?; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .bind(state.to_string()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .bind(quote_id.as_hyphenated()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        .execute(&mut transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .execute(&mut *transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .await; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         match rec { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -736,7 +739,7 @@ WHERE id=? 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         "#, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .bind(quote_id.as_hyphenated()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        .execute(&mut transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .execute(&mut *transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .await; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         match res { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -782,7 +785,7 @@ ON CONFLICT(id) DO UPDATE SET 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .bind(keyset.max_order) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .bind(keyset.input_fee_ppk as i64) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             .bind(keyset.derivation_path_index) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        .execute(&mut transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .execute(&mut *transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .await; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         match res { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -811,7 +814,7 @@ WHERE id=?; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         "#, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .bind(id.to_string()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        .fetch_one(&mut transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .fetch_one(&mut *transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .await; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         match rec { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -843,7 +846,7 @@ SELECT * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 FROM keyset; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         "#, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        .fetch_all(&mut transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .fetch_all(&mut *transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .await 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .map_err(Error::from); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -883,7 +886,7 @@ VALUES (?, ?, ?, ?, ?, ?, ?, ?); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             .bind(proof.witness.map(|w| serde_json::to_string(&w).unwrap())) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             .bind("UNSPENT") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             .bind(quote_id.map(|q| q.hyphenated())) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            .execute(&mut transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            .execute(&mut *transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             .await; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             // We still need to check for foreign key constraint errors 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -917,7 +920,7 @@ VALUES (?, ?, ?, ?, ?, ?, ?, ?); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     ) -> Result<(), Self::Err> { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         let mut transaction = self.pool.begin().await.map_err(Error::from)?; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if self.check_for_spent_proofs(&mut transaction, ys).await? { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if self.check_for_spent_proofs(&mut *transaction, ys).await? { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             transaction.rollback().await.map_err(Error::from)?; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             return Err(Self::Err::AttemptRemoveSpentProof); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -935,7 +938,7 @@ VALUES (?, ?, ?, ?, ?, ?, ?, ?); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             .fold(sqlx::query(&delete_sql), |query, y| { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 query.bind(y.to_bytes().to_vec()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            .execute(&mut transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            .execute(&mut *transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             .await 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             .map_err(Error::from)?; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -956,7 +959,7 @@ VALUES (?, ?, ?, ?, ?, ?, ?, ?); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             .fold(sqlx::query(&sql), |query, y| { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 query.bind(y.to_bytes().to_vec()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            .fetch_all(&mut transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            .fetch_all(&mut *transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             .await 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             .map_err(|err| { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 tracing::error!("SQLite could not get state of proof: {err:?}"); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -984,7 +987,7 @@ WHERE quote_id=?; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         "#, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .bind(quote_id.as_hyphenated()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        .fetch_all(&mut transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .fetch_all(&mut *transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .await; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         let ys = match rec { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1029,7 +1032,7 @@ WHERE quote_id=?; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             .fold(sqlx::query(&sql), |query, y| { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 query.bind(y.to_bytes().to_vec()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            .fetch_all(&mut transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            .fetch_all(&mut *transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             .await 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             .map_err(|err| { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 tracing::error!("SQLite could not get state of proof: {err:?}"); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1064,7 +1067,7 @@ WHERE keyset_id=?; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         "#, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .bind(keyset_id.to_string()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        .fetch_all(&mut transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .fetch_all(&mut *transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .await; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         match rec { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1110,7 +1113,7 @@ WHERE keyset_id=?; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             .fold(sqlx::query(&sql), |query, y| { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 query.bind(y.to_bytes().to_vec()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            .fetch_all(&mut transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            .fetch_all(&mut *transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             .await 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             .map_err(|err| { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 tracing::error!("SQLite could not get state of proof: {err:?}"); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1157,7 +1160,7 @@ WHERE keyset_id=?; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 sqlx::query(&update_sql).bind(proofs_state.to_string()), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 |query, y| query.bind(y.to_bytes().to_vec()), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            .execute(&mut transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            .execute(&mut *transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             .await 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             .map_err(|err| { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 tracing::error!("SQLite could not update proof state: {err:?}"); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1191,7 +1194,7 @@ VALUES (?, ?, ?, ?, ?, ?, ?); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             .bind(quote_id.map(|q| q.hyphenated())) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             .bind(signature.dleq.as_ref().map(|dleq| dleq.e.to_secret_hex())) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             .bind(signature.dleq.as_ref().map(|dleq| dleq.s.to_secret_hex())) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            .execute(&mut transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            .execute(&mut *transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             .await; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if let Err(err) = res { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1224,7 +1227,7 @@ VALUES (?, ?, ?, ?, ?, ?, ?); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             .fold(sqlx::query(&sql), |query, y| { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 query.bind(y.to_bytes().to_vec()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            .fetch_all(&mut transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            .fetch_all(&mut *transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             .await 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             .map_err(|err| { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 tracing::error!("SQLite could not get state of proof: {err:?}"); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1258,7 +1261,7 @@ WHERE keyset_id=?; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         "#, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .bind(keyset_id.to_string()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        .fetch_all(&mut transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .fetch_all(&mut *transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .await; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         match rec { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1306,7 +1309,7 @@ ON CONFLICT(id) DO UPDATE SET 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .bind(serde_json::to_string(&melt_request.outputs)?) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .bind(ln_key.method.to_string()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .bind(ln_key.unit.to_string()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        .execute(&mut transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .execute(&mut *transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .await; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         match res { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1339,7 +1342,7 @@ WHERE id=?; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         "#, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .bind(quote_id.as_hyphenated()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        .fetch_one(&mut transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .fetch_one(&mut *transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .await; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         match rec { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1382,7 +1385,7 @@ WHERE quote_id=?; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         "#, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .bind(quote_id.as_hyphenated()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        .fetch_all(&mut transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .fetch_all(&mut *transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .await; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         match recs { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1420,7 +1423,7 @@ ON CONFLICT(id) DO UPDATE SET 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .bind("mint_info") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .bind(serde_json::to_string(&mint_info)?) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        .execute(&mut transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .execute(&mut *transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .await; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         match res { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1449,7 +1452,7 @@ WHERE id=?; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         "#, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .bind("mint_info") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        .fetch_one(&mut transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .fetch_one(&mut *transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .await; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         match rec { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1494,7 +1497,7 @@ ON CONFLICT(id) DO UPDATE SET 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .bind("quote_ttl") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .bind(serde_json::to_string("e_ttl)?) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        .execute(&mut transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .execute(&mut *transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .await; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         match res { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1523,7 +1526,7 @@ WHERE id=?; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         "#, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .bind("quote_ttl") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        .fetch_one(&mut transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .fetch_one(&mut *transaction) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .await; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         match rec { 
			 |