From 9df36ed8987884cdfbe85c1b7665972202cb9fe6 Mon Sep 17 00:00:00 2001 From: Robert Holt Date: Wed, 28 Apr 2021 11:21:22 -0700 Subject: [PATCH 1/3] Make boolean readonly --- .../Commands/StartEditorServicesCommand.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/PowerShellEditorServices.Hosting/Commands/StartEditorServicesCommand.cs b/src/PowerShellEditorServices.Hosting/Commands/StartEditorServicesCommand.cs index 9cbc1dcbb..018a70224 100644 --- a/src/PowerShellEditorServices.Hosting/Commands/StartEditorServicesCommand.cs +++ b/src/PowerShellEditorServices.Hosting/Commands/StartEditorServicesCommand.cs @@ -36,7 +36,7 @@ namespace Microsoft.PowerShell.EditorServices.Commands public sealed class StartEditorServicesCommand : PSCmdlet { // TODO: Remove this when we drop support for PS6. - private static bool s_isWindows = + private readonly static bool s_isWindows = #if CoreCLR RuntimeInformation.IsOSPlatform(OSPlatform.Windows); #else From 865639359a907070471798056d11640b0a29c368 Mon Sep 17 00:00:00 2001 From: Robert Holt Date: Wed, 28 Apr 2021 11:21:33 -0700 Subject: [PATCH 2/3] Improve logging settings --- .../Configuration/HostLogger.cs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/PowerShellEditorServices.Hosting/Configuration/HostLogger.cs b/src/PowerShellEditorServices.Hosting/Configuration/HostLogger.cs index 5689bb8b6..af524352c 100644 --- a/src/PowerShellEditorServices.Hosting/Configuration/HostLogger.cs +++ b/src/PowerShellEditorServices.Hosting/Configuration/HostLogger.cs @@ -286,7 +286,10 @@ public StreamLogger(StreamWriter streamWriter) _messageQueue = new BlockingCollection(); // Start writer listening to queue - _writerThread = new Thread(RunWriter); + _writerThread = new Thread(RunWriter) + { + Name = "PSES Stream Logger Thread", + }; _writerThread.Start(); } @@ -306,6 +309,8 @@ public void OnCompleted() _fileWriter.Flush(); _fileWriter.Close(); _fileWriter.Dispose(); + _cancellationSource.Dispose(); + _messageQueue.Dispose(); } public void OnError(Exception error) From 7ddfb8e79226e9d7f97caf3dcf8bc17224e619e4 Mon Sep 17 00:00:00 2001 From: Robert Holt Date: Wed, 28 Apr 2021 11:42:08 -0700 Subject: [PATCH 3/3] Use explicit arguments in PSSA PowerShell creation --- .../Services/Analysis/PssaCmdletAnalysisEngine.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/PowerShellEditorServices/Services/Analysis/PssaCmdletAnalysisEngine.cs b/src/PowerShellEditorServices/Services/Analysis/PssaCmdletAnalysisEngine.cs index c6edb2591..b842193c7 100644 --- a/src/PowerShellEditorServices/Services/Analysis/PssaCmdletAnalysisEngine.cs +++ b/src/PowerShellEditorServices/Services/Analysis/PssaCmdletAnalysisEngine.cs @@ -326,7 +326,7 @@ private Task InvokePowerShellAsync(PSCommand command) private PowerShellResult InvokePowerShell(PSCommand command) { - using (var powerShell = System.Management.Automation.PowerShell.Create()) + using (var powerShell = System.Management.Automation.PowerShell.Create(RunspaceMode.NewRunspace)) { powerShell.RunspacePool = _analysisRunspacePool; powerShell.Commands = command; @@ -441,7 +441,7 @@ private IEnumerable GetPSScriptAnalyzerRules() /// A runspace pool with PSScriptAnalyzer loaded for running script analysis tasks. private static RunspacePool CreatePssaRunspacePool(out PSModuleInfo pssaModuleInfo) { - using (var ps = System.Management.Automation.PowerShell.Create()) + using (var ps = System.Management.Automation.PowerShell.Create(RunspaceMode.NewRunspace)) { // Run `Get-Module -ListAvailable -Name "PSScriptAnalyzer"` ps.AddCommand("Get-Module")