Function check_version

Source
pub async fn check_version<C: Config, R: Registry>(
    config: &C,
    registry: &R,
) -> Result<(bool, RemoteVersion)>
Expand description

Check if there’s a new version available Example:


	use cli_autoupdate::check_version;
   	struct LabConfig;
	struct LabRegistry;

	#[tokio::main]
	async fn main() {
		let config = LabConfig;
   		let registry = LabRegistry;
   		let (has_update, version) = check_version(&config, &registry).await.unwrap();
   		if has_update {
   			let bin_name = console::style("binary_name").cyan().italic().bold();
   			let this_version = config.version();
   			let other_version = console::style(version.version).green();
   			let update_url = registry.get_base_url().join(version.path.as_str()).unwrap();

   			println!(
   				"A new release of {} is available: {} → {}",
   				bin_name, this_version, other_version
 			);
   			println!("Released on {}", version.datetime);
   			println!("{}", console::style(update_url).yellow());
		}
   	}