#[must_use]
pub fn parse_version_tuple(value: &str) -> (u64, u64, u64) {
let normalized = value.trim_start_matches('v');
let mut parts = normalized
.split('.')
.map(|part| part.parse::<u64>().unwrap_or(0));
(
parts.next().unwrap_or(0),
parts.next().unwrap_or(0),
parts.next().unwrap_or(0),
)
}