diff --git a/.pipelines/PowerShellEditorServices-OneBranch.yml b/.pipelines/PowerShellEditorServices-OneBranch.yml index 980603f14..2d524ef1e 100644 --- a/.pipelines/PowerShellEditorServices-OneBranch.yml +++ b/.pipelines/PowerShellEditorServices-OneBranch.yml @@ -88,7 +88,7 @@ extends: system: Custom customVersion: $(package.version) - task: UseDotNet@2 - displayName: Use .NET 8.x SDK + displayName: Use .NET SDK in global.json inputs: packageType: sdk useGlobalJson: true diff --git a/PowerShellEditorServices.build.ps1 b/PowerShellEditorServices.build.ps1 index 62cb53369..c5d34aedf 100644 --- a/PowerShellEditorServices.build.ps1 +++ b/PowerShellEditorServices.build.ps1 @@ -56,11 +56,10 @@ if (Get-Command git -ErrorAction SilentlyContinue) { Task FindDotNet { Assert (Get-Command dotnet -ErrorAction SilentlyContinue) "dotnet not found, please install it: https://aka.ms/dotnet-cli" - # Strip out semantic version metadata so it can be cast to `Version` - [Version]$existingVersion, $null = (dotnet --version) -split " " -split "-" - Assert ($existingVersion -ge [Version]("8.0")) ".NET SDK 8.0 or higher is required, please update it: https://aka.ms/dotnet-cli" - - Write-Build DarkGreen "Using dotnet v$(dotnet --version) at path $((Get-Command dotnet).Source)" + [string[]]$dotnetInfo = dotnet --version 2>&1 + $missingDotnet = ($dotnetInfo -match '(Install the .+ \.NET SDK) or update')[0] + Assert (!$missingDotnet) ($missingDotnet -replace 'or update.+') + Write-Build DarkGreen "Using dotnet v$($dotnetInfo) at path $((Get-Command dotnet).Source)" } Task Clean FindDotNet, { diff --git a/global.json b/global.json index 910363ade..d46d21e50 100644 --- a/global.json +++ b/global.json @@ -1,6 +1,6 @@ { "sdk": { - "version": "8.0.416", + "version": "10.0.100", "rollForward": "latestFeature", "allowPrerelease": false } diff --git a/src/PowerShellEditorServices/Services/CodeLens/ReferencesCodeLensProvider.cs b/src/PowerShellEditorServices/Services/CodeLens/ReferencesCodeLensProvider.cs index 0307163cc..5696b4736 100644 --- a/src/PowerShellEditorServices/Services/CodeLens/ReferencesCodeLensProvider.cs +++ b/src/PowerShellEditorServices/Services/CodeLens/ReferencesCodeLensProvider.cs @@ -25,7 +25,6 @@ internal class ReferencesCodeLensProvider : ICodeLensProvider /// private readonly IDocumentSymbolProvider _symbolProvider; private readonly SymbolsService _symbolsService; - private readonly WorkspaceService _workspaceService; public static string Id => nameof(ReferencesCodeLensProvider); @@ -38,11 +37,9 @@ internal class ReferencesCodeLensProvider : ICodeLensProvider /// /// Construct a new ReferencesCodeLensProvider for a given EditorSession. /// - /// /// - public ReferencesCodeLensProvider(WorkspaceService workspaceService, SymbolsService symbolsService) + public ReferencesCodeLensProvider(SymbolsService symbolsService) { - _workspaceService = workspaceService; _symbolsService = symbolsService; // TODO: Pull this from components _symbolProvider = new ScriptDocumentSymbolProvider(); diff --git a/src/PowerShellEditorServices/Services/PowerShell/Debugging/IPowerShellDebugContext.cs b/src/PowerShellEditorServices/Services/PowerShell/Debugging/IPowerShellDebugContext.cs index 506109b7d..9c3de43d6 100644 --- a/src/PowerShellEditorServices/Services/PowerShell/Debugging/IPowerShellDebugContext.cs +++ b/src/PowerShellEditorServices/Services/PowerShell/Debugging/IPowerShellDebugContext.cs @@ -13,13 +13,13 @@ internal interface IPowerShellDebugContext DebuggerStopEventArgs LastStopEventArgs { get; } - public bool IsDebuggingRemoteRunspace { get; set; } + bool IsDebuggingRemoteRunspace { get; set; } - public event Action DebuggerStopped; + event Action DebuggerStopped; - public event Action DebuggerResuming; + event Action DebuggerResuming; - public event Action BreakpointUpdated; + event Action BreakpointUpdated; void Continue(); diff --git a/src/PowerShellEditorServices/Services/PowerShell/Debugging/PowerShellDebugContext.cs b/src/PowerShellEditorServices/Services/PowerShell/Debugging/PowerShellDebugContext.cs index f88aa38d5..90aa1f630 100644 --- a/src/PowerShellEditorServices/Services/PowerShell/Debugging/PowerShellDebugContext.cs +++ b/src/PowerShellEditorServices/Services/PowerShell/Debugging/PowerShellDebugContext.cs @@ -114,9 +114,9 @@ public void SetDebugResuming(DebuggerResumeAction debuggerResumeAction) // then this came over LSP and we need to set it. _psesHost.SetExit(); - if (LastStopEventArgs is not null) + if (LastStopEventArgs is { } lastStopEventArgs) { - LastStopEventArgs.ResumeAction = debuggerResumeAction; + lastStopEventArgs.ResumeAction = debuggerResumeAction; } // We need to tell whatever is happening right now in the debug prompt to wrap up so we diff --git a/src/PowerShellEditorServices/Services/PowerShell/Execution/SynchronousTask.cs b/src/PowerShellEditorServices/Services/PowerShell/Execution/SynchronousTask.cs index fc7f97cd8..bdb069cfd 100644 --- a/src/PowerShellEditorServices/Services/PowerShell/Execution/SynchronousTask.cs +++ b/src/PowerShellEditorServices/Services/PowerShell/Execution/SynchronousTask.cs @@ -20,15 +20,15 @@ internal interface ISynchronousTask internal abstract class SynchronousTask : ISynchronousTask { - private readonly TaskCompletionSource _taskCompletionSource; + private TaskCompletionSource _taskCompletionSource { get; } - private readonly CancellationToken _taskRequesterCancellationToken; + private CancellationToken _taskRequesterCancellationToken { get; } - private bool _executionCanceled; + private bool _executionCanceled { get; set; } - private TResult _result; + private TResult _result { get; set; } - private ExceptionDispatchInfo _exceptionInfo; + private ExceptionDispatchInfo _exceptionInfo { get; set; } protected SynchronousTask( ILogger logger, diff --git a/src/PowerShellEditorServices/Services/Symbols/ReferenceTable.cs b/src/PowerShellEditorServices/Services/Symbols/ReferenceTable.cs index 6cb8e52c4..26a251512 100644 --- a/src/PowerShellEditorServices/Services/Symbols/ReferenceTable.cs +++ b/src/PowerShellEditorServices/Services/Symbols/ReferenceTable.cs @@ -22,7 +22,7 @@ internal sealed class ReferenceTable private readonly ConcurrentDictionary> _symbolReferences = new(StringComparer.OrdinalIgnoreCase); - private bool _isInited; + private bool _isInited { get; set; } public ReferenceTable(ScriptFile parent) => _parent = parent; diff --git a/src/PowerShellEditorServices/Services/Symbols/SymbolsService.cs b/src/PowerShellEditorServices/Services/Symbols/SymbolsService.cs index 99f8bbbc8..827b4eee5 100644 --- a/src/PowerShellEditorServices/Services/Symbols/SymbolsService.cs +++ b/src/PowerShellEditorServices/Services/Symbols/SymbolsService.cs @@ -70,7 +70,7 @@ public SymbolsService( _codeLensProviders = new ConcurrentDictionary(); if (configurationService.CurrentSettings.EnableReferencesCodeLens) { - ReferencesCodeLensProvider referencesProvider = new(_workspaceService, this); + ReferencesCodeLensProvider referencesProvider = new(this); _ = _codeLensProviders.TryAdd(referencesProvider.ProviderId, referencesProvider); } @@ -495,7 +495,7 @@ void CloseUnopenedFiles() return; } - TryRegisterCodeLensProvider(new ReferencesCodeLensProvider(_workspaceService, this)); + TryRegisterCodeLensProvider(new ReferencesCodeLensProvider(this)); return; } diff --git a/src/PowerShellEditorServices/Services/Workspace/RemoteFileManagerService.cs b/src/PowerShellEditorServices/Services/Workspace/RemoteFileManagerService.cs index 961338023..d1ec7943d 100644 --- a/src/PowerShellEditorServices/Services/Workspace/RemoteFileManagerService.cs +++ b/src/PowerShellEditorServices/Services/Workspace/RemoteFileManagerService.cs @@ -691,10 +691,7 @@ private void RemovePSEditFunction(IRunspaceInfo runspaceInfo) } try { - if (runspaceInfo.Runspace.Events != null) - { - runspaceInfo.Runspace.Events.ReceivedEvents.PSEventReceived -= HandlePSEventReceivedAsync; - } + runspaceInfo.Runspace.Events.ReceivedEvents.PSEventReceived -= HandlePSEventReceivedAsync; if (runspaceInfo.Runspace.RunspaceStateInfo.State == RunspaceState.Opened) {