Skip to content

Commit

Permalink
Parallel compatibility checks
Browse files Browse the repository at this point in the history
  • Loading branch information
NikolayPianikov committed Aug 30, 2024
1 parent 1f810e5 commit f90131a
Showing 1 changed file with 8 additions and 10 deletions.
18 changes: 8 additions & 10 deletions build/CompatibilityCheckTarget.cs
Original file line number Diff line number Diff line change
Expand Up @@ -56,20 +56,18 @@ public async Task<IReadOnlyCollection<Package>> RunAsync(CancellationToken cance
"net20"
];

foreach (var framework in frameworks.Reverse())
{
await CompatibilityCheckAsync(generatorPackage.Path, framework, cancellationToken);
}

var packages = new List<Package> { generatorPackage };

var tasks = new List<Task>();
tasks.AddRange(frameworks.Reverse().Select(framework => CompatibilityCheckAsync(generatorPackage.Path, framework, cancellationToken)));

// Libraries
var packages = new List<Package> { generatorPackage };
foreach (var library in libraries)
{
await CompatibilityCheckAsync(generatorPackage.Path, library, cancellationToken);
tasks.Add(CompatibilityCheckAsync(generatorPackage.Path, library, cancellationToken));
packages.Add(library.Package);
}

await Task.WhenAll(tasks);
return packages;
}

Expand Down Expand Up @@ -119,7 +117,7 @@ private async Task CompatibilityCheckAsync(
settings.NextVersion.ToString(),
"-s",
Path.GetDirectoryName(generatorPackage)!)
.WithShortName($"add the package {generatorPackage} for {framework}")
.WithShortName($"add the package {Path.GetFileName(generatorPackage)} for {framework}")
.RunAsync(cancellationToken: cancellationToken).EnsureSuccess();

await new DotNetBuild().WithWorkingDirectory(tempDirectory)
Expand Down Expand Up @@ -169,7 +167,7 @@ private async Task CompatibilityCheckAsync(string generatorPackage, Library libr
framework,
"-s",
Path.GetDirectoryName(generatorPackage)!)
.WithShortName($"add package Pure.DI for the {templateName} template for {framework}")
.WithShortName($"add package {Path.GetFileName(generatorPackage)} for the {templateName} template for {framework}")
.RunAsync(cancellationToken: cancellationToken).EnsureSuccess();

var libraryPackageDir = Path.GetDirectoryName(library.Package.Path)!;
Expand Down

0 comments on commit f90131a

Please sign in to comment.