using System.Reflection; namespace NozCli; public static class VersionInfo { private static readonly string _informational = typeof(VersionInfo).Assembly .GetCustomAttribute() ?.InformationalVersion ?? "0.0.0"; // "0.1.0+abc1234" → "0.1.0" public static string Version => _informational.Contains('+') ? _informational[.._informational.IndexOf('+')] : _informational; // "0.1.0+abc1234" → "abc1234", or "" if no hash public static string GitHash => _informational.Contains('+') ? _informational[(_informational.IndexOf('+') + 1)..] : ""; public static string Full => GitHash.Length > 0 ? $"{Version} ({GitHash})" : Version; }