CancellationToken is the last param and optional now
MODIFY
WalletWasabi/BitcoinCore/Monitoring/RpcFeeProvider.cs
WalletWasabi/BitcoinCore/Monitoring/RpcFeeProvider.cs
@@ -29,7 +29,7 @@ namespace WalletWasabi.BitcoinCore.Monitoring
{
try
{
- var allFeeEstimate = await RpcClient.EstimateAllFeeAsync(cancel, EstimateSmartFeeMode.Conservative, true).ConfigureAwait(false);
+ var allFeeEstimate = await RpcClient.EstimateAllFeeAsync(EstimateSmartFeeMode.Conservative, true, cancel).ConfigureAwait(false);
// If Core was running for a day already && it's synchronized, then we can be pretty sure that the estimate is accurate.
// It could also be accurate if Core was only shut down for a few minutes, but that's hard to figure out.

MODIFY
WalletWasabi/Extensions/RPCClientExtensions.cs
WalletWasabi/Extensions/RPCClientExtensions.cs
@@ -68,7 +68,7 @@ namespace NBitcoin.RPC
/// <summary>
/// Estimates fees for 1w, 3d, 1d, 12h, 6h, 3h, 1h, 30m, 20m.
/// </summary>
- public static async Task<AllFeeEstimate> EstimateAllFeeAsync(this IRPCClient rpc, CancellationToken cancel, EstimateSmartFeeMode estimateMode = EstimateSmartFeeMode.Conservative, bool simulateIfRegTest = false)
+ public static async Task<AllFeeEstimate> EstimateAllFeeAsync(this IRPCClient rpc, EstimateSmartFeeMode estimateMode = EstimateSmartFeeMode.Conservative, bool simulateIfRegTest = false, CancellationToken cancel = default)
{
var smartEstimations = (simulateIfRegTest && rpc.Network == Network.RegTest)
? SimulateRegTestFeeEstimation(estimateMode)

CancellationToken is the last param and optional now