Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions src/GitExtensions.PluginManager/Plugin.cs
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,7 @@ public override bool Execute(GitUIEventArgs gitUiCommands)
Args args = new Args();
args.Path = pluginsPath;
args.Dependencies = new List<Args.Dependency>() { new Args.Dependency("GitExtensions.Extensibility") };
args.Tags = "GitExtensions";
args.Monikers = FrameworkMonikers;
args.SelfPackageId = PackageId;
args.ProcessNamesToKillBeforeChange = new[] { Process.GetCurrentProcess().ProcessName };
Expand Down
2 changes: 1 addition & 1 deletion src/GitExtensions.PluginManager/PluginSettings.cs
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ internal class PluginSettings : IEnumerable<ISetting>
/// <summary>
/// Gets current value of <see cref="CloseInstancesProperty"/>.
/// </summary>
public bool CloseInstances => source.GetValue(CloseInstancesProperty.Name, CloseInstancesProperty.DefaultValue, t => Boolean.Parse(t));
public bool CloseInstances => source.GetValue(CloseInstancesProperty.Name, CloseInstancesProperty.DefaultValue, t => bool.Parse(t));

public PluginSettings(ISettingsSource source)
{
Expand Down
6 changes: 3 additions & 3 deletions src/PackageManager.Cli/Args.cs
Original file line number Diff line number Diff line change
Expand Up @@ -105,16 +105,16 @@ public override string ToString()
{
StringBuilder result = new StringBuilder();

if (!String.IsNullOrEmpty(Path))
if (!string.IsNullOrEmpty(Path))
result.Append($"--path \"{Path}\"");

if (!String.IsNullOrEmpty(SelfPackageId))
if (!string.IsNullOrEmpty(SelfPackageId))
result.Append($" --selfpackageid {SelfPackageId}");

if (IsSelfUpdate)
result.Append(" --selfupdate");

if (!String.IsNullOrEmpty(SelfOriginalPath))
if (!string.IsNullOrEmpty(SelfOriginalPath))
result.Append($" --selforiginalpath \"{SelfOriginalPath}\"");

return result.ToString();
Expand Down
2 changes: 1 addition & 1 deletion src/PackageManager.Cli/Program.cs
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ public async Task MainAsync(string[] args)
UpdatesViewModel viewModel = CreateUpdatesViewModel();
await viewModel.Refresh.ExecuteAsync();

PackageUpdateViewModel packageModel = viewModel.Packages.FirstOrDefault(p => p.Target.Id == Args.PackageId);
PackageUpdateViewModel packageModel = viewModel.Packages.FirstOrDefault(p => string.Equals(p.Target.Id, Args.PackageId, StringComparison.CurrentCultureIgnoreCase));
if (packageModel != null && viewModel.Update.CanExecute(packageModel))
{
await viewModel.Update.ExecuteAsync(packageModel);
Expand Down
2 changes: 1 addition & 1 deletion src/PackageManager.NuGet/Models/NuGetPackage.cs
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ public async Task<IPackageContent> GetContentAsync(CancellationToken cancellatio
=> await contentService.DownloadAsync(repository, source, cancellationToken);

public async Task<IEnumerable<IPackage>> GetVersionsAsync(bool isPrereleaseIncluded, CancellationToken cancellationToken)
=> await versionService.GetListAsync(Int32.MaxValue, source, repository, isPrereleaseIncluded: isPrereleaseIncluded, cancellationToken: cancellationToken);
=> await versionService.GetListAsync(int.MaxValue, source, repository, isPrereleaseIncluded: isPrereleaseIncluded, cancellationToken: cancellationToken);

public bool Equals(IPackage other)
=> Equals((IPackageIdentity)other);
Expand Down
2 changes: 1 addition & 1 deletion src/PackageManager.NuGet/Models/NuGetPackageIdentity.cs
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ public bool Equals(IPackageIdentity other)
if (other == null)
return false;

return Id == other.Id && Version == other.Version;
return string.Equals(Id, other.Id, StringComparison.CurrentCultureIgnoreCase) && string.Equals(Version, other.Version, StringComparison.CurrentCultureIgnoreCase);
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ public class NuGetPackageSourceCollection : DisposableBase, IPackageSourceCollec

public event Action Changed;

public IPackageSource Primary => Sources.FirstOrDefault(s => s.Name == Provider.ActivePackageSourceName);
public IPackageSource Primary => Sources.FirstOrDefault(s => string.Equals(s.Name, Provider.ActivePackageSourceName, StringComparison.CurrentCultureIgnoreCase));
public IReadOnlyCollection<IPackageSource> All => Sources;

public NuGetPackageSourceCollection(INuGetPackageSourceProvider provider)
Expand Down Expand Up @@ -66,7 +66,7 @@ public void Remove(IPackageSource source)

public void MarkAsPrimary(IPackageSource source)
{
if (Provider.ActivePackageSourceName == source?.Name)
if (string.Equals(Provider.ActivePackageSourceName, source?.Name, StringComparison.CurrentCultureIgnoreCase))
return;

if (source == null)
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace PackageManager.Services
{
public class EmptyNuGetSearchTermTransformer : INuGetSearchTermTransformer
{
public void Transform(NuGetSearchTerm searchTerm)
{
}

public readonly static EmptyNuGetSearchTermTransformer Instance = new EmptyNuGetSearchTermTransformer();
}
}
3 changes: 2 additions & 1 deletion src/PackageManager.NuGet/Services/INuGetPackageFilter.cs
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,13 @@
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;

namespace PackageManager.Services
{
public interface INuGetPackageFilter
{
NuGetPackageFilterResult IsPassed(IPackageSearchMetadata package);
Task<NuGetPackageFilterResult> FilterAsync(SourceRepository repository, IPackageSearchMetadata package, CancellationToken cancellationToken);
}
}
14 changes: 14 additions & 0 deletions src/PackageManager.NuGet/Services/INuGetSearchTermTransformer.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace PackageManager.Services
{
public interface INuGetSearchTermTransformer
{
void Transform(NuGetSearchTerm searchTerm);
}
}
10 changes: 5 additions & 5 deletions src/PackageManager.NuGet/Services/NuGetInstallService.cs
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ public bool IsInstalled(string packageId)
using (Stream fileContent = new FileStream(ConfigFilePath, FileMode.Open))
{
PackagesConfigReader reader = new PackagesConfigReader(fileContent);
return reader.GetPackages().Any(p => p.PackageIdentity.Id == packageId);
return reader.GetPackages().Any(p => string.Equals(p.PackageIdentity.Id, packageId, StringComparison.CurrentCultureIgnoreCase));
}
}

Expand All @@ -77,7 +77,7 @@ public bool IsInstalled(IPackageIdentity package)
using (Stream fileContent = new FileStream(ConfigFilePath, FileMode.Open))
{
PackagesConfigReader reader = new PackagesConfigReader(fileContent);
return reader.GetPackages().Any(p => p.PackageIdentity.Id == package.Id && p.PackageIdentity.Version.ToFullString() == package.Version);
return reader.GetPackages().Any(p => string.Equals(p.PackageIdentity.Id, package.Id, StringComparison.CurrentCultureIgnoreCase) && string.Equals(p.PackageIdentity.Version.ToFullString(), package.Version, StringComparison.CurrentCultureIgnoreCase));
}
}

Expand Down Expand Up @@ -118,7 +118,7 @@ public void Uninstall(string packageId)
ReadPackageConfig(
(p, cache) =>
{
if (p.PackageIdentity.Id == packageId)
if (string.Equals(p.PackageIdentity.Id, packageId, StringComparison.CurrentCultureIgnoreCase))
{
version = p.PackageIdentity.Version;
framework = p.TargetFramework;
Expand Down Expand Up @@ -182,7 +182,7 @@ await ReadPackageConfig(
{
log.Debug($"Package '{package.PackageIdentity}' was found.");

NuGetPackageFilterResult filterResult = packageFilter.IsPassed(metadata);
NuGetPackageFilterResult filterResult = await packageFilter.FilterAsync(repository, metadata, cancellationToken);
result.Add(new NuGetInstalledPackage(
new NuGetPackage(metadata, repository, contentService, versionService),
filterResult == NuGetPackageFilterResult.Ok
Expand All @@ -209,7 +209,7 @@ public async Task<IPackageIdentity> FindInstalledAsync(string packageId, Cancell
await ReadPackageConfig(
(package, context) =>
{
if (package.PackageIdentity.Id == packageId)
if (string.Equals(package.PackageIdentity.Id, packageId, StringComparison.CurrentCultureIgnoreCase))
{
result = new NuGetPackageIdentity(package.PackageIdentity);
return Task.FromResult(true);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ public async Task<IPackageContent> DownloadAsync(SourceRepository repository, IP
using (var sourceCacheContext = new SourceCacheContext())
{
var context = new PackageDownloadContext(sourceCacheContext, Path.GetTempPath(), true);
var result = await download.GetDownloadResourceResultAsync(package.Identity, context, String.Empty, nuGetLog, cancellationToken);
var result = await download.GetDownloadResourceResultAsync(package.Identity, context, string.Empty, nuGetLog, cancellationToken);
if (result.Status == DownloadResourceResultStatus.Cancelled)
throw new OperationCanceledException();
else if (result.Status == DownloadResourceResultStatus.NotFound)
Expand Down
16 changes: 8 additions & 8 deletions src/PackageManager.NuGet/Services/NuGetPackageVersionService.cs
Original file line number Diff line number Diff line change
Expand Up @@ -45,10 +45,10 @@ public async Task<IReadOnlyList<IPackage>> GetListAsync(int resultCount, IPackag
try
{
List<IPackage> result = new List<IPackage>();
if (await SearchOlderVersionsDirectly(result, resultCount, package, repository, versionFilter))
if (await SearchOlderVersionsDirectlyAsync(result, resultCount, package, repository, versionFilter, cancellationToken))
return result;

if (await SearchOlderVersionsUsingMetadataResource(result, resultCount, package, repository, versionFilter, isPrereleaseIncluded, cancellationToken))
if (await SearchOlderVersionsUsingMetadataResourceAsync(result, resultCount, package, repository, versionFilter, isPrereleaseIncluded, cancellationToken))
return result;

return new List<IPackage>();
Expand All @@ -60,7 +60,7 @@ public async Task<IReadOnlyList<IPackage>> GetListAsync(int resultCount, IPackag
}
}

private async Task<bool> SearchOlderVersionsDirectly(List<IPackage> result, int resultCount, IPackageSearchMetadata package, SourceRepository repository, Func<IPackageSearchMetadata, IPackageSearchMetadata, bool> versionFilter)
private async Task<bool> SearchOlderVersionsDirectlyAsync(List<IPackage> result, int resultCount, IPackageSearchMetadata package, SourceRepository repository, Func<IPackageSearchMetadata, IPackageSearchMetadata, bool> versionFilter, CancellationToken cancellationToken)
{
bool isSuccess = false;
IEnumerable<VersionInfo> versions = null;
Expand All @@ -81,7 +81,7 @@ private async Task<bool> SearchOlderVersionsDirectly(List<IPackage> result, int
// TODO: Filter prelease on V2 feed.
if (version.PackageSearchMetadata != null && versionFilter(package, version.PackageSearchMetadata))
{
IPackage item = ProcessOlderVersion(repository, version.PackageSearchMetadata);
IPackage item = await ProcessOlderVersionAsync(repository, version.PackageSearchMetadata, cancellationToken);
if (item != null)
{
result.Add(item);
Expand All @@ -96,7 +96,7 @@ private async Task<bool> SearchOlderVersionsDirectly(List<IPackage> result, int
return isSuccess;
}

private async Task<bool> SearchOlderVersionsUsingMetadataResource(List<IPackage> result, int resultCount, IPackageSearchMetadata package, SourceRepository repository, Func<IPackageSearchMetadata, IPackageSearchMetadata, bool> versionFilter, bool isPrereleaseIncluded, CancellationToken cancellationToken)
private async Task<bool> SearchOlderVersionsUsingMetadataResourceAsync(List<IPackage> result, int resultCount, IPackageSearchMetadata package, SourceRepository repository, Func<IPackageSearchMetadata, IPackageSearchMetadata, bool> versionFilter, bool isPrereleaseIncluded, CancellationToken cancellationToken)
{
PackageMetadataResource metadataResource = await repository.GetResourceAsync<PackageMetadataResource>(cancellationToken);
if (metadataResource == null)
Expand All @@ -118,7 +118,7 @@ private async Task<bool> SearchOlderVersionsUsingMetadataResource(List<IPackage>
{
if (versionFilter(package, version))
{
IPackage item = ProcessOlderVersion(repository, version);
IPackage item = await ProcessOlderVersionAsync(repository, version, cancellationToken);
if (item != null)
{
result.Add(item);
Expand All @@ -132,11 +132,11 @@ private async Task<bool> SearchOlderVersionsUsingMetadataResource(List<IPackage>
return true;
}

private IPackage ProcessOlderVersion(SourceRepository repository, IPackageSearchMetadata version)
private async Task<IPackage> ProcessOlderVersionAsync(SourceRepository repository, IPackageSearchMetadata version, CancellationToken cancellationToken)
{
log.Debug($"Found '{version.Identity}'.");

NuGetPackageFilterResult filterResult = filter.IsPassed(version);
NuGetPackageFilterResult filterResult = await filter.FilterAsync(repository, version, cancellationToken);
switch (filterResult)
{
case NuGetPackageFilterResult.Ok:
Expand Down
Loading