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