public async Task FailToUploadPackageVersion(string apiKey = null)
        {
            PackageInfo packageInfo = null;

            lock (ExistingPackagesLock)
            {
                packageInfo = Packages.LastOrDefault(p => p.HasSameOwnerAsApiKey(apiKey));
            }

            if (packageInfo == null)
            {
                packageInfo = await PackageInfo.CreateForUpload(this, GetApiKeyWithSameOwnerThatCanUpload(apiKey));
            }

            await packageInfo.FailToUploadNewVersion(this, apiKey);
        }