@@ -11,16 +11,16 @@ use serde::{Deserialize, Serialize};
11
11
use crate :: cache:: cache_dir;
12
12
13
13
const DAY_IN_SECS : u64 = 3600 * 24 ;
14
- const LATEST_ZIP_URL : & str =
15
- "https://github.com/robjtede/alfred-caniuse-rs/releases /latest/download/package.zip";
14
+ const LATEST_URL : & str = "https://github.com/robjtede/alfred-caniuse-rs/releases" ;
15
+ const LATEST_ZIP_PATH : & str = " /latest/download/package.zip";
16
16
const SELF_VERSION : & str = env ! ( "CARGO_PKG_VERSION" ) ;
17
17
const UPDATE_CHECK_FILENAME : & str = "update-check.json" ;
18
18
19
19
/// Returning None means no action to take.
20
20
pub fn self_update_check_item ( ) -> Option < alfred:: Item < ' static > > {
21
21
self_update_check ( ) . map ( |url| {
22
22
alfred:: ItemBuilder :: new ( "A workflow update is available." )
23
- . subtitle ( "Press enter to update ." )
23
+ . subtitle ( "Press enter to go to download page ." )
24
24
. arg ( url)
25
25
. into_item ( )
26
26
} )
@@ -35,7 +35,7 @@ fn self_update_check() -> Option<&'static str> {
35
35
Ok ( NeedsCheck :: No ) => return None ,
36
36
37
37
// cached file shows that self is outdated so skip API lookup
38
- Ok ( NeedsCheck :: KnownOutdated ) => return Some ( LATEST_ZIP_URL ) ,
38
+ Ok ( NeedsCheck :: KnownOutdated ) => return Some ( LATEST_URL ) ,
39
39
40
40
Err ( err) => {
41
41
eprintln ! ( "update check cache failed: {}" , err) ;
@@ -49,7 +49,7 @@ fn self_update_check() -> Option<&'static str> {
49
49
50
50
// ignore errors from fetching for cases when no internet connection is available
51
51
match self_update_check_inner ( ) {
52
- Ok ( true ) => return Some ( LATEST_ZIP_URL ) ,
52
+ Ok ( true ) => return Some ( LATEST_URL ) ,
53
53
Ok ( false ) => {
54
54
eprintln ! ( "no update available" ) ;
55
55
}
@@ -128,7 +128,8 @@ fn self_update_check_inner() -> eyre::Result<bool> {
128
128
. timeout ( std:: time:: Duration :: from_secs ( 1 ) )
129
129
. build ( ) ;
130
130
131
- let res = client. get ( LATEST_ZIP_URL ) . call ( ) ?;
131
+ let url = [ LATEST_URL , LATEST_ZIP_PATH ] . concat ( ) ;
132
+ let res = client. get ( & url) . call ( ) ?;
132
133
let latest_url = res
133
134
. header ( "location" )
134
135
. ok_or_else ( || eyre ! ( "no location header in update check response" ) ) ?;
0 commit comments