Skip to content

Commit 9284db9

Browse files
authored
Merge pull request Azure#10813 from dingmeng-xue/detect-break
Fixed Static Analysis issue
2 parents 8441690 + 765886b commit 9284db9

File tree

2 files changed

+18
-4
lines changed

2 files changed

+18
-4
lines changed

tools/StaticAnalysis/BreakingChangeAnalyzer/BreakingChangeAnalyzer.cs

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -131,11 +131,14 @@ public void Analyze(
131131
var parentDirectory = Directory.GetParent(psd1).FullName;
132132
var psd1FileName = Path.GetFileName(psd1);
133133
var powershell = PowerShell.Create();
134-
powershell.AddScript("Import-LocalizedData -BaseDirectory " + parentDirectory +
135-
" -FileName " + psd1FileName +
136-
" -BindingVariable ModuleMetadata; $ModuleMetadata.NestedModules; $ModuleMetadata.RequiredModules | % { $_[\"ModuleName\"] };");
134+
135+
var script = $"Import-LocalizedData -BaseDirectory {parentDirectory} -FileName {psd1FileName} -BindingVariable ModuleMetadata;";
136+
powershell.AddScript($"{script} $ModuleMetadata.NestedModules;");
137137
var cmdletResult = powershell.Invoke();
138-
var nestedModules = cmdletResult.Where(c => c.ToString().StartsWith(".")).Select(c => c.ToString().Substring(2));
138+
var nestedModules = cmdletResult.Select(c => c.ToString()).Select(c => (c.StartsWith(".") ? c.Substring(2) : c)).ToList();
139+
140+
powershell.AddScript($"{script} $ModuleMetadata.RequiredModules | % {{ $_[\"ModuleName\"] }};");
141+
cmdletResult = powershell.Invoke();
139142
var requiredModules = cmdletResult.Where(c => !c.ToString().StartsWith(".")).Select(c => c.ToString()).ToList();
140143

141144
if (!nestedModules.Any()) continue;

tools/VersionController/Models/VersionMetadataHelper.cs

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
using System.Reflection;
99
using System.Text.RegularExpressions;
1010
using Tools.Common.Helpers;
11+
using Tools.Common.Issues;
1112
using Tools.Common.Loaders;
1213
using Tools.Common.Loggers;
1314
using Tools.Common.Models;
@@ -255,6 +256,7 @@ public Version GetVersionBumpForCommonCode()
255256
/// <returns>Version enum representing the version bump to be applied.</returns>
256257
public Version GetVersionBumpUsingSerialized(bool serialize = true)
257258
{
259+
Console.WriteLine("Comparing the cmdlet assumblies with metadata from JSON file...");
258260
var outputModuleManifestPath = _fileHelper.OutputModuleManifestPath;
259261
var outputModuleDirectory = _fileHelper.OutputModuleDirectory;
260262
var outputDirectories = _fileHelper.OutputDirectories;
@@ -311,6 +313,14 @@ public Version GetVersionBumpUsingSerialized(bool serialize = true)
311313
CheckBreakingChangesInModules(oldModuleMetadata, newModuleMetadata, issueLogger);
312314
if (issueLogger.Records.Any())
313315
{
316+
var currentColor = Console.ForegroundColor;
317+
Console.ForegroundColor = ConsoleColor.Yellow;
318+
Console.WriteLine($"Detected below {issueLogger.Records.Count} breack change(s):");
319+
foreach (IReportRecord record in issueLogger.Records)
320+
{
321+
Console.WriteLine(((BreakingChangeIssue)record).Target + " " + record.ProblemId + " " + record.Description);
322+
}
323+
Console.ForegroundColor = currentColor;
314324
tempVersionBump = Version.MAJOR;
315325
}
316326
else if (!oldModuleMetadata.Equals(newModuleMetadata))
@@ -349,6 +359,7 @@ public Version GetVersionBumpUsingSerialized(bool serialize = true)
349359
/// <returns>Version enum representing the version bump to be applied.</returns>
350360
public Version GetVersionBumpUsingGallery()
351361
{
362+
Console.WriteLine("Comparing the cmdlet assumblies with seemblies in the saved gallery folder...");
352363
var outputModuleManifestPath = _fileHelper.OutputModuleManifestPath;
353364
var outputModuleDirectory = _fileHelper.OutputModuleDirectory;
354365
var outputDirectories = _fileHelper.OutputDirectories;

0 commit comments

Comments
 (0)