@@ -36,11 +36,18 @@ use lightning::onion_message::messenger::AOnionMessenger;
3636use lightning:: routing:: gossip:: { NetworkGraph , P2PGossipSync } ;
3737use lightning:: routing:: scoring:: { ScoreUpdate , WriteableScore } ;
3838use lightning:: routing:: utxo:: UtxoLookup ;
39- use lightning:: sign:: { ChangeDestinationSource , OutputSpender } ;
39+ #[ cfg( feature = "futures" ) ]
40+ use lightning:: sign:: ChangeDestinationSource ;
41+ #[ cfg( feature = "std" ) ]
42+ use lightning:: sign:: ChangeDestinationSourceSync ;
43+ use lightning:: sign:: OutputSpender ;
4044use lightning:: util:: logger:: Logger ;
4145use lightning:: util:: persist:: { KVStore , Persister } ;
46+ #[ cfg( feature = "futures" ) ]
4247use lightning:: util:: sweep:: OutputSweeper ;
4348#[ cfg( feature = "std" ) ]
49+ use lightning:: util:: sweep:: OutputSweeperSync ;
50+ #[ cfg( feature = "std" ) ]
4451use lightning:: util:: wakers:: Sleeper ;
4552use lightning_rapid_gossip_sync:: RapidGossipSync ;
4653
@@ -844,7 +851,7 @@ where
844851 gossip_sync,
845852 {
846853 if let Some ( ref sweeper) = sweeper {
847- sweeper. regenerate_and_broadcast_spend_if_necessary( )
854+ sweeper. regenerate_and_broadcast_spend_if_necessary( ) . await
848855 } else {
849856 Ok ( ( ) )
850857 }
@@ -964,7 +971,7 @@ impl BackgroundProcessor {
964971 D : ' static + Deref ,
965972 O : ' static + Deref ,
966973 K : ' static + Deref ,
967- OS : ' static + Deref < Target = OutputSweeper < T , D , F , CF , K , L , O > > + Send + Sync ,
974+ OS : ' static + Deref < Target = OutputSweeperSync < T , D , F , CF , K , L , O > > + Send + Sync ,
968975 > (
969976 persister : PS , event_handler : EH , chain_monitor : M , channel_manager : CM ,
970977 onion_messenger : Option < OM > , gossip_sync : GossipSync < PGS , RGS , G , UL , L > , peer_manager : PM ,
@@ -981,8 +988,8 @@ impl BackgroundProcessor {
981988 CM :: Target : AChannelManager + Send + Sync ,
982989 OM :: Target : AOnionMessenger + Send + Sync ,
983990 PM :: Target : APeerManager + Send + Sync ,
991+ D :: Target : ChangeDestinationSourceSync ,
984992 O :: Target : ' static + OutputSpender ,
985- D :: Target : ' static + ChangeDestinationSource ,
986993 K :: Target : ' static + KVStore ,
987994 {
988995 let stop_thread = Arc :: new ( AtomicBool :: new ( false ) ) ;
@@ -1138,7 +1145,7 @@ mod tests {
11381145 use lightning:: routing:: gossip:: { NetworkGraph , P2PGossipSync } ;
11391146 use lightning:: routing:: router:: { CandidateRouteHop , DefaultRouter , Path , RouteHop } ;
11401147 use lightning:: routing:: scoring:: { ChannelUsage , LockableScore , ScoreLookUp , ScoreUpdate } ;
1141- use lightning:: sign:: { ChangeDestinationSource , InMemorySigner , KeysManager } ;
1148+ use lightning:: sign:: { ChangeDestinationSourceSync , InMemorySigner , KeysManager } ;
11421149 use lightning:: types:: features:: { ChannelFeatures , NodeFeatures } ;
11431150 use lightning:: types:: payment:: PaymentHash ;
11441151 use lightning:: util:: config:: UserConfig ;
@@ -1150,7 +1157,7 @@ mod tests {
11501157 SCORER_PERSISTENCE_SECONDARY_NAMESPACE ,
11511158 } ;
11521159 use lightning:: util:: ser:: Writeable ;
1153- use lightning:: util:: sweep:: { OutputSpendStatus , OutputSweeper , PRUNE_DELAY_BLOCKS } ;
1160+ use lightning:: util:: sweep:: { OutputSpendStatus , OutputSweeperSync , PRUNE_DELAY_BLOCKS } ;
11541161 use lightning:: util:: test_utils;
11551162 use lightning:: { get_event, get_event_msg} ;
11561163 use lightning_persister:: fs_store:: FilesystemStore ;
@@ -1271,7 +1278,7 @@ mod tests {
12711278 best_block : BestBlock ,
12721279 scorer : Arc < LockingWrapper < TestScorer > > ,
12731280 sweeper : Arc <
1274- OutputSweeper <
1281+ OutputSweeperSync <
12751282 Arc < test_utils:: TestBroadcaster > ,
12761283 Arc < TestWallet > ,
12771284 Arc < test_utils:: TestFeeEstimator > ,
@@ -1572,7 +1579,7 @@ mod tests {
15721579
15731580 struct TestWallet { }
15741581
1575- impl ChangeDestinationSource for TestWallet {
1582+ impl ChangeDestinationSourceSync for TestWallet {
15761583 fn get_change_destination_script ( & self ) -> Result < ScriptBuf , ( ) > {
15771584 Ok ( ScriptBuf :: new ( ) )
15781585 }
@@ -1650,7 +1657,7 @@ mod tests {
16501657 IgnoringMessageHandler { } ,
16511658 ) ) ;
16521659 let wallet = Arc :: new ( TestWallet { } ) ;
1653- let sweeper = Arc :: new ( OutputSweeper :: new (
1660+ let sweeper = Arc :: new ( OutputSweeperSync :: new (
16541661 best_block,
16551662 Arc :: clone ( & tx_broadcaster) ,
16561663 Arc :: clone ( & fee_estimator) ,
@@ -2054,7 +2061,7 @@ mod tests {
20542061 Some ( nodes[ 0 ] . messenger . clone ( ) ) ,
20552062 nodes[ 0 ] . rapid_gossip_sync ( ) ,
20562063 nodes[ 0 ] . peer_manager . clone ( ) ,
2057- Some ( nodes[ 0 ] . sweeper . clone ( ) ) ,
2064+ Some ( nodes[ 0 ] . sweeper . sweeper_async ( ) ) ,
20582065 nodes[ 0 ] . logger . clone ( ) ,
20592066 Some ( nodes[ 0 ] . scorer . clone ( ) ) ,
20602067 move |dur : Duration | {
@@ -2554,7 +2561,7 @@ mod tests {
25542561 Some ( nodes[ 0 ] . messenger . clone ( ) ) ,
25552562 nodes[ 0 ] . rapid_gossip_sync ( ) ,
25562563 nodes[ 0 ] . peer_manager . clone ( ) ,
2557- Some ( nodes[ 0 ] . sweeper . clone ( ) ) ,
2564+ Some ( nodes[ 0 ] . sweeper . sweeper_async ( ) ) ,
25582565 nodes[ 0 ] . logger . clone ( ) ,
25592566 Some ( nodes[ 0 ] . scorer . clone ( ) ) ,
25602567 move |dur : Duration | {
@@ -2768,7 +2775,7 @@ mod tests {
27682775 Some ( nodes[ 0 ] . messenger . clone ( ) ) ,
27692776 nodes[ 0 ] . no_gossip_sync ( ) ,
27702777 nodes[ 0 ] . peer_manager . clone ( ) ,
2771- Some ( nodes[ 0 ] . sweeper . clone ( ) ) ,
2778+ Some ( nodes[ 0 ] . sweeper . sweeper_async ( ) ) ,
27722779 nodes[ 0 ] . logger . clone ( ) ,
27732780 Some ( nodes[ 0 ] . scorer . clone ( ) ) ,
27742781 move |dur : Duration | {
0 commit comments