diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile
index cc17c531c..0ccbd0f6a 100644
--- a/.devcontainer/Dockerfile
+++ b/.devcontainer/Dockerfile
@@ -1,6 +1,6 @@
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License.
-FROM mcr.microsoft.com/dotnet/sdk:8.0
+FROM mcr.microsoft.com/dotnet/sdk:10.0
RUN pwsh --command Install-Module platyPS,Pester -Force
\ No newline at end of file
diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json
index dbbc9c7ee..f2528912e 100644
--- a/.devcontainer/devcontainer.json
+++ b/.devcontainer/devcontainer.json
@@ -1,6 +1,6 @@
// For format details, see https://aka.ms/vscode-remote/devcontainer.json
{
- "name": "C# (.NET 8.0)",
+ "name": "C# (.NET 10.0)",
"dockerFile": "Dockerfile",
"customizations": {
"vscode": {
diff --git a/Directory.Packages.props b/Directory.Packages.props
index bd8565ee8..615ee267a 100644
--- a/Directory.Packages.props
+++ b/Directory.Packages.props
@@ -10,7 +10,7 @@
-
+
diff --git a/Engine/Engine.csproj b/Engine/Engine.csproj
index 63b9a1b9c..ff6135f06 100644
--- a/Engine/Engine.csproj
+++ b/Engine/Engine.csproj
@@ -2,7 +2,7 @@
$(ModuleVersion)
- net8;net462
+ net10.0;net462
Microsoft.Windows.PowerShell.ScriptAnalyzer
$(ModuleVersion)
Engine
@@ -18,11 +18,11 @@
portable
-
+
$(DefineConstants);CORECLR
-
+
@@ -69,10 +69,10 @@
-
+
-
+
$(DefineConstants);PSV7;CORECLR
diff --git a/Engine/PSScriptAnalyzer.psm1 b/Engine/PSScriptAnalyzer.psm1
index 50348fa75..95f4dbb58 100644
--- a/Engine/PSScriptAnalyzer.psm1
+++ b/Engine/PSScriptAnalyzer.psm1
@@ -9,8 +9,8 @@ $PSModuleRoot = $PSModule.ModuleBase
# Import the appropriate nested binary module based on the current PowerShell version
$binaryModuleRoot = $PSModuleRoot
-# This should be the equivalent of 7.4.x i.e. latest major/minor supported but lowest patch.
-[Version] $minimumPowerShellCoreVersion = '7.4.6'
+# Keep this aligned with the oldest supported PowerShell 7.6 patch.
+[Version] $minimumPowerShellCoreVersion = '7.6.6'
if ($PSVersionTable.PSVersion.Major -ge 6) {
$binaryModuleRoot = Join-Path -Path $PSModuleRoot -ChildPath "PSv$($PSVersionTable.PSVersion.Major)"
# Minimum PowerShell Core version given by PowerShell Core support itself and
diff --git a/NuGet.Config b/NuGet.Config
index f003b0fbd..0e7ba9510 100644
--- a/NuGet.Config
+++ b/NuGet.Config
@@ -3,5 +3,17 @@
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/README.md b/README.md
index 1d2252082..95907c650 100644
--- a/README.md
+++ b/README.md
@@ -75,9 +75,9 @@ To install **PSScriptAnalyzer** from source code:
### Requirements
-- [Latest .NET 8.0 SDK](https://dotnet.microsoft.com/en-us/download/dotnet/8.0)
+- [Latest .NET 10.0 SDK](https://dotnet.microsoft.com/en-us/download/dotnet/10.0)
- If building for Windows PowerShell versions, then the .NET Framework 4.6.2 [targeting pack](https://dotnet.microsoft.com/en-us/download/dotnet-framework/net462) (also referred to as developer/targeting pack) need to be installed. This is only possible on Windows.
-- Optional but recommended for development: [Visual Studio 2022](https://www.visualstudio.com/downloads)
+- Optional but recommended for development: [Visual Studio](https://www.visualstudio.com/downloads)
- Or [Visual Studio Code](https://code.visualstudio.com/download)
- [Pester v6 PowerShell module, available on PowerShell Gallery](https://github.com/pester/Pester)
- [PlatyPS PowerShell module, available on PowerShell Gallery](https://github.com/PowerShell/platyPS/releases)
diff --git a/Rules/Rules.csproj b/Rules/Rules.csproj
index 7641bb033..cfffc6031 100644
--- a/Rules/Rules.csproj
+++ b/Rules/Rules.csproj
@@ -2,7 +2,7 @@
$(ModuleVersion)
- net8;net462
+ net10.0;net462
Microsoft.Windows.PowerShell.ScriptAnalyzer.BuiltinRules
$(ModuleVersion)
Rules
@@ -16,7 +16,7 @@
-
+
@@ -53,7 +53,7 @@
PrepareResources;$(CompileDependsOn)
-
+
$(DefineConstants);PSV7;CORECLR
diff --git a/build.psm1 b/build.psm1
index 041b207a9..11dd83f08 100644
--- a/build.psm1
+++ b/build.psm1
@@ -144,7 +144,7 @@ function Start-ScriptAnalyzerBuild
$framework = 'net462'
if ($PSVersion -eq 7) {
- $framework = 'net8'
+ $framework = 'net10.0'
}
Push-Location -Path $projectRoot
diff --git a/global.json b/global.json
index de3e16bd7..99bfe4cad 100644
--- a/global.json
+++ b/global.json
@@ -1,6 +1,6 @@
{
"sdk": {
- "version": "8.0.419",
+ "version": "10.0.401",
"rollForward": "latestFeature"
}
}