1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
use self_update::cargo_crate_version;

pub fn update() -> Result<(), Box<dyn ::std::error::Error>> {
    let releases = self_update::backends::gitlab::ReleaseList::configure()
        .repo_owner("fubz")
        .repo_name("telepair")
        .build()?
        .fetch()?;
    println!("found releases:");
    println!("{:#?}\n", releases);

    let status = self_update::backends::gitlab::Update::configure()
        .repo_owner("fubz")
        .repo_name("telepair")
        .bin_name("telepair")
        .show_download_progress(true)
        //.target_version_tag("v9.9.10")
        //.show_output(false)
        //.no_confirm(true)
        .current_version(cargo_crate_version!())
        .build()?
        .update()?;
    println!("Update status: `{}`!", status.version());
    Ok(())
}