8 个稳定版本
2.2.0 | 2023年2月18日 |
---|---|
2.1.0 | 2023年1月4日 |
2.0.1 | 2023年1月1日 |
1.1.1 | 2022年12月31日 |
1.0.1 | 2022年12月31日 |
#2204 在 命令行工具
15KB
174 行
🔔 Tiny Update Notifier 🔔
适用于 Rust 命令行程序的轻量级更新通知工具
如果自上次检查以来超过24小时(可自定义),则检查更新,
如果找到新版本,则弹出通知 📢
支持 crates.io 和 GitHub 发布
安装
使用 Cargo 安装 tiny_update_notifier
cargo add tiny_update_notifier
用法
多线程/非阻塞
// check on crates.io
tiny_update_notifier::check_cratesIO(pkg_version, pkg_name);
// check on github releases
tiny_update_notifier::check_github(pkg_version, pkg_name, pkg_repo_url);
单线程/阻塞
tiny_update_notifier::Notifier::new(
tiny_update_notifier::Source,
pkg_version,
pkg_name,
pkg_repo_url
)
.interval(Duration) //Optional, default is 24h
.run();
示例
// Spawns a thread to check for updates on Crates.io and notify user if there is a new version available.
use tiny_update_notifier::check_cratesIO;
fn main() {
check_cratesIO(
env!("CARGO_PKG_VERSION"),
env!("CARGO_PKG_NAME"),
);
}
// Spawns a thread to check for updates on GitHub Releases and notify user if there is a new version available.
use tiny_update_notifier::check_github;
fn main() {
check_github(
env!("CARGO_PKG_VERSION"),
env!("CARGO_PKG_NAME"),
env!("CARGO_PKG_REPOSITORY"),
);
}
// Equivalent to check_github, except the interval is changed to 1 week
use std::{thread, time::Duration};
use tiny_update_notifier::{Notifier, Source};
fn main() {
thread::spawn(|| {
Notifier::new(
Source::GitHub,
env!("CARGO_PKG_VERSION"),
env!("CARGO_PKG_NAME"),
env!("CARGO_PKG_REPOSITORY"),
)
.interval(Duration::from_secs(60 * 60 * 24 * 7))
.run();
});
}
依赖项
~0.6–25MB
~345K SLoC