@@ -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
- let _ = sweeper. regenerate_and_broadcast_spend_if_necessary( ) ;
876
+ let _ = sweeper. regenerate_and_broadcast_spend_if_necessary( ) . await ;
870
877
}
871
878
} ,
872
879
logger,
@@ -992,7 +999,7 @@ impl BackgroundProcessor {
992
999
D : ' static + Deref ,
993
1000
O : ' static + Deref ,
994
1001
K : ' static + Deref ,
995
- OS : ' static + Deref < Target = OutputSweeper < T , D , F , CF , K , L , O > > + Send + Sync ,
1002
+ OS : ' static + Deref < Target = OutputSweeperSync < T , D , F , CF , K , L , O > > + Send + Sync ,
996
1003
> (
997
1004
persister : PS , event_handler : EH , chain_monitor : M , channel_manager : CM ,
998
1005
onion_messenger : Option < OM > , gossip_sync : GossipSync < PGS , RGS , G , UL , L > , peer_manager : PM ,
@@ -1010,8 +1017,8 @@ impl BackgroundProcessor {
1010
1017
OM :: Target : AOnionMessenger ,
1011
1018
PM :: Target : APeerManager ,
1012
1019
LM :: Target : ALiquidityManager ,
1020
+ D :: Target : ChangeDestinationSourceSync ,
1013
1021
O :: Target : ' static + OutputSpender ,
1014
- D :: Target : ' static + ChangeDestinationSource ,
1015
1022
K :: Target : ' static + KVStore ,
1016
1023
{
1017
1024
let stop_thread = Arc :: new ( AtomicBool :: new ( false ) ) ;
@@ -1175,7 +1182,7 @@ mod tests {
1175
1182
use lightning:: routing:: gossip:: { NetworkGraph , P2PGossipSync } ;
1176
1183
use lightning:: routing:: router:: { CandidateRouteHop , DefaultRouter , Path , RouteHop } ;
1177
1184
use lightning:: routing:: scoring:: { ChannelUsage , LockableScore , ScoreLookUp , ScoreUpdate } ;
1178
- use lightning:: sign:: { ChangeDestinationSource , InMemorySigner , KeysManager } ;
1185
+ use lightning:: sign:: { ChangeDestinationSourceSync , InMemorySigner , KeysManager } ;
1179
1186
use lightning:: types:: features:: { ChannelFeatures , NodeFeatures } ;
1180
1187
use lightning:: types:: payment:: PaymentHash ;
1181
1188
use lightning:: util:: config:: UserConfig ;
@@ -1187,7 +1194,7 @@ mod tests {
1187
1194
SCORER_PERSISTENCE_SECONDARY_NAMESPACE ,
1188
1195
} ;
1189
1196
use lightning:: util:: ser:: Writeable ;
1190
- use lightning:: util:: sweep:: { OutputSpendStatus , OutputSweeper , PRUNE_DELAY_BLOCKS } ;
1197
+ use lightning:: util:: sweep:: { OutputSpendStatus , OutputSweeperSync , PRUNE_DELAY_BLOCKS } ;
1191
1198
use lightning:: util:: test_utils;
1192
1199
use lightning:: { get_event, get_event_msg} ;
1193
1200
use lightning_liquidity:: LiquidityManager ;
@@ -1313,7 +1320,7 @@ mod tests {
1313
1320
best_block : BestBlock ,
1314
1321
scorer : Arc < LockingWrapper < TestScorer > > ,
1315
1322
sweeper : Arc <
1316
- OutputSweeper <
1323
+ OutputSweeperSync <
1317
1324
Arc < test_utils:: TestBroadcaster > ,
1318
1325
Arc < TestWallet > ,
1319
1326
Arc < test_utils:: TestFeeEstimator > ,
@@ -1614,7 +1621,7 @@ mod tests {
1614
1621
1615
1622
struct TestWallet { }
1616
1623
1617
- impl ChangeDestinationSource for TestWallet {
1624
+ impl ChangeDestinationSourceSync for TestWallet {
1618
1625
fn get_change_destination_script ( & self ) -> Result < ScriptBuf , ( ) > {
1619
1626
Ok ( ScriptBuf :: new ( ) )
1620
1627
}
@@ -1692,7 +1699,7 @@ mod tests {
1692
1699
IgnoringMessageHandler { } ,
1693
1700
) ) ;
1694
1701
let wallet = Arc :: new ( TestWallet { } ) ;
1695
- let sweeper = Arc :: new ( OutputSweeper :: new (
1702
+ let sweeper = Arc :: new ( OutputSweeperSync :: new (
1696
1703
best_block,
1697
1704
Arc :: clone ( & tx_broadcaster) ,
1698
1705
Arc :: clone ( & fee_estimator) ,
@@ -2109,7 +2116,7 @@ mod tests {
2109
2116
nodes[ 0 ] . rapid_gossip_sync ( ) ,
2110
2117
nodes[ 0 ] . peer_manager . clone ( ) ,
2111
2118
Some ( Arc :: clone ( & nodes[ 0 ] . liquidity_manager ) ) ,
2112
- Some ( nodes[ 0 ] . sweeper . clone ( ) ) ,
2119
+ Some ( nodes[ 0 ] . sweeper . sweeper_async ( ) ) ,
2113
2120
nodes[ 0 ] . logger . clone ( ) ,
2114
2121
Some ( nodes[ 0 ] . scorer . clone ( ) ) ,
2115
2122
move |dur : Duration | {
@@ -2617,7 +2624,7 @@ mod tests {
2617
2624
nodes[ 0 ] . rapid_gossip_sync ( ) ,
2618
2625
nodes[ 0 ] . peer_manager . clone ( ) ,
2619
2626
Some ( Arc :: clone ( & nodes[ 0 ] . liquidity_manager ) ) ,
2620
- Some ( nodes[ 0 ] . sweeper . clone ( ) ) ,
2627
+ Some ( nodes[ 0 ] . sweeper . sweeper_async ( ) ) ,
2621
2628
nodes[ 0 ] . logger . clone ( ) ,
2622
2629
Some ( nodes[ 0 ] . scorer . clone ( ) ) ,
2623
2630
move |dur : Duration | {
@@ -2833,7 +2840,7 @@ mod tests {
2833
2840
nodes[ 0 ] . no_gossip_sync ( ) ,
2834
2841
nodes[ 0 ] . peer_manager . clone ( ) ,
2835
2842
Some ( Arc :: clone ( & nodes[ 0 ] . liquidity_manager ) ) ,
2836
- Some ( nodes[ 0 ] . sweeper . clone ( ) ) ,
2843
+ Some ( nodes[ 0 ] . sweeper . sweeper_async ( ) ) ,
2837
2844
nodes[ 0 ] . logger . clone ( ) ,
2838
2845
Some ( nodes[ 0 ] . scorer . clone ( ) ) ,
2839
2846
move |dur : Duration | {
0 commit comments