atuin_server/utils.rs
1use eyre::Result;
2use semver::{Version, VersionReq};
3
4pub fn client_version_min(user_agent: &str, req: &str) -> Result<bool> {
5 if user_agent.is_empty() {
6 return Ok(false);
7 }
8
9 let version = user_agent.replace("atuin/", "");
10
11 let req = VersionReq::parse(req)?;
12 let version = Version::parse(version.as_str())?;
13
14 Ok(req.matches(&version))
15}