leo_lang::cli::helpers::updater

Struct Updater

Source
pub struct Updater;

Implementations§

Source§

impl Updater

Source

const LEO_BIN_NAME: &'static str = "leo"

Source

const LEO_CACHE_LAST_CHECK_FILE: &'static str = "leo_cache_last_update_check"

Source

const LEO_CACHE_VERSION_FILE: &'static str = "leo_cache_latest_version"

Source

const LEO_REPO_NAME: &'static str = "leo"

Source

const LEO_REPO_OWNER: &'static str = "AleoHQ"

Source

const LEO_UPDATE_CHECK_INTERVAL: Duration = _

Source

pub fn show_available_releases() -> Result<String>

Show all available releases for leo.

Source

pub fn update_to_latest_release(show_output: bool) -> Result<Status>

Update leo to the latest release.

Source

pub fn update_available() -> Result<String>

Check if there is an available update for leo and return the newest release.

Source

pub fn read_latest_version() -> Result<Option<String>, CliError>

Read the latest version from the version file.

Source

pub fn get_cli_string() -> Result<Option<String>, CliError>

Generate the CLI message if a new version is available.

Source

pub fn print_cli() -> Result<(), CliError>

Display the CLI message if a new version is available.

Source

pub fn check_for_updates(force: bool) -> Result<bool, CliError>

Check for updates, respecting the update interval. (Currently once per day.) If a new version is found, write it to a cache file and alert in every call.

Source

fn update_check_files( cache_dir: &Path, last_check_file: &Path, version_file: &Path, latest_version: &str, ) -> Result<(), CliError>

Updates the check files with the latest version information and timestamp.

This function creates the cache directory if it doesn’t exist, writes the current time to the last check file, and writes the latest version to the version file.

Source

fn should_check_for_updates(last_check_file: &Path) -> Result<bool, CliError>

Determines if an update check should be performed based on the last check time.

This function reads the last check timestamp from a file and compares it with the current time to decide if enough time has passed for a new check.

Source

fn get_current_time() -> Result<u64, CliError>

Gets the current system time as seconds since the Unix epoch.

Source

fn get_version_file_path() -> PathBuf

Get the path to the file storing the latest version information.

Source

fn get_cache_dir() -> PathBuf

Get the cache directory for Leo.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
§

impl<T> Pointable for T

§

const ALIGN: usize = _

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more