public static async Task <GithubUpdateReleaseResponse> ShouldUpdate(string ownerName, string projectName)
        {
            // Get current running assembly version and the latest release from GitHub.
            Task <GithubReleaseVersion> getRemoteVersion = GithubAutoUpdater.GetRemoteVersion(ownerName, projectName);
            string currentVersionName = GithubAutoUpdater.GetAssemblyVersion();
            GithubReleaseVersion remoteVersionDetails = await getRemoteVersion;
            string remoteVersionName = remoteVersionDetails.Version;

            // Remove the "V" heading char from the version name (e.g "V1.2.4")
            char[] charsToRemove  = { 'V', 'v' };
            var    remoteVersion  = new Version(remoteVersionName.TrimStart(charsToRemove));
            var    currentVersion = new Version(currentVersionName.TrimStart(charsToRemove));

            var result = new GithubUpdateReleaseResponse();

            if (currentVersion < remoteVersion)
            {
                result.ShouldUpdate  = true;
                result.NewVersionUrl = remoteVersionDetails.LatestVersionUrl;
            }
            else
            {
                result.ShouldUpdate  = false;
                result.NewVersionUrl = string.Empty;
            }

            return(result);
        }