#nullable enable using SysVersion = System.Version; namespace MediaBrowser.Model.Updates { /// /// Class PackageVersionInfo. /// public class VersionInfo { private SysVersion? _version; /// /// Gets or sets the version. /// /// The version. public string Version { get => _version == null ? string.Empty : _version.ToString(); set => _version = SysVersion.Parse(value); } /// /// Gets the version as a . /// public SysVersion VersionNumber => _version ?? new SysVersion(0, 0, 0); /// /// Gets or sets the changelog for this version. /// /// The changelog. public string? Changelog { get; set; } /// /// Gets or sets the ABI that this version was built against. /// /// The target ABI version. public string? TargetAbi { get; set; } /// /// Gets or sets the maximum ABI that this version will work with. /// /// The target ABI version. public string? MaxAbi { get; set; } /// /// Gets or sets the source URL. /// /// The source URL. public string? SourceUrl { get; set; } /// /// Gets or sets a checksum for the binary. /// /// The checksum. public string? Checksum { get; set; } /// /// Gets or sets a timestamp of when the binary was built. /// /// The timestamp. public string? Timestamp { get; set; } /// /// Gets or sets the repository name. /// public string RepositoryName { get; set; } = string.Empty; /// /// Gets or sets the repository url. /// public string RepositoryUrl { get; set; } = string.Empty; } }