@@ -4,7 +4,11 @@ use futures::{
4
4
future:: { BoxFuture , FusedFuture } ,
5
5
FutureExt , SinkExt , StreamExt , TryFutureExt ,
6
6
} ;
7
- use mullvad_api:: { availability:: ApiAvailability , rest:: MullvadRestHandle , AppVersionProxy } ;
7
+ use mullvad_api:: {
8
+ availability:: ApiAvailability ,
9
+ rest:: MullvadRestHandle ,
10
+ version:: { AppVersionProxy , AppVersionResponse } ,
11
+ } ;
8
12
use mullvad_types:: version:: AppVersionInfo ;
9
13
use mullvad_version:: Version ;
10
14
use serde:: { Deserialize , Serialize } ;
@@ -194,11 +198,8 @@ impl VersionUpdaterInner {
194
198
self . last_app_version_info . as_ref ( ) . map ( |( info, _) | info)
195
199
}
196
200
197
- /// Convert a [mullvad_api::AppVersionResponse] to an [AppVersionInfo].
198
- fn response_to_version_info (
199
- & self ,
200
- response : mullvad_api:: AppVersionResponse ,
201
- ) -> AppVersionInfo {
201
+ /// Convert a [AppVersionResponse] to an [AppVersionInfo].
202
+ fn response_to_version_info ( & self , response : AppVersionResponse ) -> AppVersionInfo {
202
203
let suggested_upgrade = suggested_upgrade (
203
204
& APP_VERSION ,
204
205
& response. latest_stable ,
@@ -295,12 +296,9 @@ impl VersionUpdaterInner {
295
296
mut self ,
296
297
mut rx : mpsc:: Receiver < VersionUpdaterCommand > ,
297
298
update : impl Fn ( AppVersionInfo ) -> BoxFuture < ' static , Result < ( ) , Error > > ,
298
- do_version_check : impl Fn ( )
299
- -> BoxFuture < ' static , Result < mullvad_api:: AppVersionResponse , Error > > ,
300
- do_version_check_in_background : impl Fn ( ) -> BoxFuture <
301
- ' static ,
302
- Result < mullvad_api:: AppVersionResponse , Error > ,
303
- > ,
299
+ do_version_check : impl Fn ( ) -> BoxFuture < ' static , Result < AppVersionResponse , Error > > ,
300
+ do_version_check_in_background : impl Fn ( )
301
+ -> BoxFuture < ' static , Result < AppVersionResponse , Error > > ,
304
302
) {
305
303
let mut version_is_stale = self . wait_until_version_is_stale ( ) ;
306
304
let mut version_check = futures:: future:: Fuse :: terminated ( ) ;
@@ -422,9 +420,7 @@ struct ApiContext {
422
420
}
423
421
424
422
/// Immediately query the API for the latest [AppVersionInfo].
425
- fn do_version_check (
426
- api : ApiContext ,
427
- ) -> BoxFuture < ' static , Result < mullvad_api:: AppVersionResponse , Error > > {
423
+ fn do_version_check ( api : ApiContext ) -> BoxFuture < ' static , Result < AppVersionResponse , Error > > {
428
424
let download_future_factory = move || {
429
425
api. version_proxy
430
426
. version_check (
@@ -459,7 +455,7 @@ fn do_version_check(
459
455
/// On any error, this function retries repeatedly every [UPDATE_INTERVAL_ERROR] until success.
460
456
fn do_version_check_in_background (
461
457
api : ApiContext ,
462
- ) -> BoxFuture < ' static , Result < mullvad_api :: AppVersionResponse , Error > > {
458
+ ) -> BoxFuture < ' static , Result < AppVersionResponse , Error > > {
463
459
let download_future_factory = move || {
464
460
let when_available = api. api_handle . wait_background ( ) ;
465
461
let request = api. version_proxy . version_check (
@@ -721,21 +717,20 @@ mod test {
721
717
}
722
718
}
723
719
724
- fn fake_version_check ( ) -> BoxFuture < ' static , Result < mullvad_api :: AppVersionResponse , Error > > {
720
+ fn fake_version_check ( ) -> BoxFuture < ' static , Result < AppVersionResponse , Error > > {
725
721
Box :: pin ( async { Ok ( fake_version_response ( ) ) } )
726
722
}
727
723
728
- fn fake_version_check_err ( ) -> BoxFuture < ' static , Result < mullvad_api:: AppVersionResponse , Error > >
729
- {
724
+ fn fake_version_check_err ( ) -> BoxFuture < ' static , Result < AppVersionResponse , Error > > {
730
725
Box :: pin ( retry_future (
731
726
|| async { Err ( Error :: Download ( mullvad_api:: rest:: Error :: TimeoutError ) ) } ,
732
727
|_| true ,
733
728
std:: iter:: repeat ( UPDATE_INTERVAL_ERROR ) ,
734
729
) )
735
730
}
736
731
737
- fn fake_version_response ( ) -> mullvad_api :: AppVersionResponse {
738
- mullvad_api :: AppVersionResponse {
732
+ fn fake_version_response ( ) -> AppVersionResponse {
733
+ AppVersionResponse {
739
734
supported : true ,
740
735
latest : "2024.1" . to_owned ( ) ,
741
736
latest_stable : None ,
0 commit comments