@@ -36,11 +36,18 @@ use lightning::onion_message::messenger::AOnionMessenger;
36
36
use lightning:: routing:: gossip:: { NetworkGraph , P2PGossipSync } ;
37
37
use lightning:: routing:: scoring:: { ScoreUpdate , WriteableScore } ;
38
38
use 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 ;
40
44
use lightning:: util:: logger:: Logger ;
41
45
use lightning:: util:: persist:: { KVStore , Persister } ;
46
+ #[ cfg( feature = "futures" ) ]
42
47
use lightning:: util:: sweep:: OutputSweeper ;
43
48
#[ cfg( feature = "std" ) ]
49
+ use lightning:: util:: sweep:: OutputSweeperSync ;
50
+ #[ cfg( feature = "std" ) ]
44
51
use lightning:: util:: wakers:: Sleeper ;
45
52
use lightning_rapid_gossip_sync:: RapidGossipSync ;
46
53
@@ -866,7 +873,7 @@ where
866
873
gossip_sync,
867
874
{
868
875
if let Some ( ref sweeper) = sweeper {
869
- sweeper. regenerate_and_broadcast_spend_if_necessary( )
876
+ sweeper. regenerate_and_broadcast_spend_if_necessary( ) . await
870
877
} else {
871
878
Ok ( ( ) )
872
879
}
@@ -994,7 +1001,7 @@ impl BackgroundProcessor {
994
1001
D : ' static + Deref ,
995
1002
O : ' static + Deref ,
996
1003
K : ' static + Deref ,
997
- OS : ' static + Deref < Target = OutputSweeper < T , D , F , CF , K , L , O > > + Send + Sync ,
1004
+ OS : ' static + Deref < Target = OutputSweeperSync < T , D , F , CF , K , L , O > > + Send + Sync ,
998
1005
> (
999
1006
persister : PS , event_handler : EH , chain_monitor : M , channel_manager : CM ,
1000
1007
onion_messenger : Option < OM > , gossip_sync : GossipSync < PGS , RGS , G , UL , L > , peer_manager : PM ,
@@ -1012,8 +1019,8 @@ impl BackgroundProcessor {
1012
1019
OM :: Target : AOnionMessenger ,
1013
1020
PM :: Target : APeerManager ,
1014
1021
LM :: Target : ALiquidityManager ,
1022
+ D :: Target : ChangeDestinationSourceSync ,
1015
1023
O :: Target : ' static + OutputSpender ,
1016
- D :: Target : ' static + ChangeDestinationSource ,
1017
1024
K :: Target : ' static + KVStore ,
1018
1025
{
1019
1026
let stop_thread = Arc :: new ( AtomicBool :: new ( false ) ) ;
@@ -1179,7 +1186,7 @@ mod tests {
1179
1186
use lightning:: routing:: gossip:: { NetworkGraph , P2PGossipSync } ;
1180
1187
use lightning:: routing:: router:: { CandidateRouteHop , DefaultRouter , Path , RouteHop } ;
1181
1188
use lightning:: routing:: scoring:: { ChannelUsage , LockableScore , ScoreLookUp , ScoreUpdate } ;
1182
- use lightning:: sign:: { ChangeDestinationSource , InMemorySigner , KeysManager } ;
1189
+ use lightning:: sign:: { ChangeDestinationSourceSync , InMemorySigner , KeysManager } ;
1183
1190
use lightning:: types:: features:: { ChannelFeatures , NodeFeatures } ;
1184
1191
use lightning:: types:: payment:: PaymentHash ;
1185
1192
use lightning:: util:: config:: UserConfig ;
@@ -1191,7 +1198,7 @@ mod tests {
1191
1198
SCORER_PERSISTENCE_SECONDARY_NAMESPACE ,
1192
1199
} ;
1193
1200
use lightning:: util:: ser:: Writeable ;
1194
- use lightning:: util:: sweep:: { OutputSpendStatus , OutputSweeper , PRUNE_DELAY_BLOCKS } ;
1201
+ use lightning:: util:: sweep:: { OutputSpendStatus , OutputSweeperSync , PRUNE_DELAY_BLOCKS } ;
1195
1202
use lightning:: util:: test_utils;
1196
1203
use lightning:: { get_event, get_event_msg} ;
1197
1204
use lightning_liquidity:: LiquidityManager ;
@@ -1317,7 +1324,7 @@ mod tests {
1317
1324
best_block : BestBlock ,
1318
1325
scorer : Arc < LockingWrapper < TestScorer > > ,
1319
1326
sweeper : Arc <
1320
- OutputSweeper <
1327
+ OutputSweeperSync <
1321
1328
Arc < test_utils:: TestBroadcaster > ,
1322
1329
Arc < TestWallet > ,
1323
1330
Arc < test_utils:: TestFeeEstimator > ,
@@ -1618,7 +1625,7 @@ mod tests {
1618
1625
1619
1626
struct TestWallet { }
1620
1627
1621
- impl ChangeDestinationSource for TestWallet {
1628
+ impl ChangeDestinationSourceSync for TestWallet {
1622
1629
fn get_change_destination_script ( & self ) -> Result < ScriptBuf , ( ) > {
1623
1630
Ok ( ScriptBuf :: new ( ) )
1624
1631
}
@@ -1696,7 +1703,7 @@ mod tests {
1696
1703
IgnoringMessageHandler { } ,
1697
1704
) ) ;
1698
1705
let wallet = Arc :: new ( TestWallet { } ) ;
1699
- let sweeper = Arc :: new ( OutputSweeper :: new (
1706
+ let sweeper = Arc :: new ( OutputSweeperSync :: new (
1700
1707
best_block,
1701
1708
Arc :: clone ( & tx_broadcaster) ,
1702
1709
Arc :: clone ( & fee_estimator) ,
@@ -2113,7 +2120,7 @@ mod tests {
2113
2120
nodes[ 0 ] . rapid_gossip_sync ( ) ,
2114
2121
nodes[ 0 ] . peer_manager . clone ( ) ,
2115
2122
Some ( Arc :: clone ( & nodes[ 0 ] . liquidity_manager ) ) ,
2116
- Some ( nodes[ 0 ] . sweeper . clone ( ) ) ,
2123
+ Some ( nodes[ 0 ] . sweeper . sweeper_async ( ) ) ,
2117
2124
nodes[ 0 ] . logger . clone ( ) ,
2118
2125
Some ( nodes[ 0 ] . scorer . clone ( ) ) ,
2119
2126
move |dur : Duration | {
@@ -2621,7 +2628,7 @@ mod tests {
2621
2628
nodes[ 0 ] . rapid_gossip_sync ( ) ,
2622
2629
nodes[ 0 ] . peer_manager . clone ( ) ,
2623
2630
Some ( Arc :: clone ( & nodes[ 0 ] . liquidity_manager ) ) ,
2624
- Some ( nodes[ 0 ] . sweeper . clone ( ) ) ,
2631
+ Some ( nodes[ 0 ] . sweeper . sweeper_async ( ) ) ,
2625
2632
nodes[ 0 ] . logger . clone ( ) ,
2626
2633
Some ( nodes[ 0 ] . scorer . clone ( ) ) ,
2627
2634
move |dur : Duration | {
@@ -2837,7 +2844,7 @@ mod tests {
2837
2844
nodes[ 0 ] . no_gossip_sync ( ) ,
2838
2845
nodes[ 0 ] . peer_manager . clone ( ) ,
2839
2846
Some ( Arc :: clone ( & nodes[ 0 ] . liquidity_manager ) ) ,
2840
- Some ( nodes[ 0 ] . sweeper . clone ( ) ) ,
2847
+ Some ( nodes[ 0 ] . sweeper . sweeper_async ( ) ) ,
2841
2848
nodes[ 0 ] . logger . clone ( ) ,
2842
2849
Some ( nodes[ 0 ] . scorer . clone ( ) ) ,
2843
2850
move |dur : Duration | {
0 commit comments