diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile
index f9887589..6637ad8a 100644
--- a/.devcontainer/Dockerfile
+++ b/.devcontainer/Dockerfile
@@ -1,5 +1,5 @@
# Refer to https://hub.docker.com/_/microsoft-dotnet-sdk for available versions
-FROM mcr.microsoft.com/dotnet/sdk:9.0.306-noble@sha256:d88e637d15248531967111fba05c6725ad45ea1dace3d35d8cfe2c4d4094e25d
+FROM mcr.microsoft.com/dotnet/sdk:10.0.100@sha256:c7445f141c04f1a6b454181bd098dcfa606c61ba0bd213d0a702489e5bd4cd71
# Installing mono makes `dotnet test` work without errors even for net472.
# But installing it takes a long time, so it's excluded by default.
diff --git a/Directory.Build.props b/Directory.Build.props
index 02d41804..a3d5fb8e 100644
--- a/Directory.Build.props
+++ b/Directory.Build.props
@@ -12,6 +12,7 @@
true
true
true
+ true
true
@@ -43,7 +44,7 @@
- 13
+ 14
16.9
diff --git a/Directory.Packages.props b/Directory.Packages.props
index 78310fd9..c0924a53 100644
--- a/Directory.Packages.props
+++ b/Directory.Packages.props
@@ -9,7 +9,7 @@
-
+
diff --git a/Expand-Template.ps1 b/Expand-Template.ps1
index 04cf503d..5b08d843 100755
--- a/Expand-Template.ps1
+++ b/Expand-Template.ps1
@@ -110,6 +110,14 @@ try {
git mv test/Library.Tests "test/$LibraryName.Tests"
if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }
+ # Update project reference in test project. Add before removal to keep the same ItemGroup in place.
+ dotnet add "test/$LibraryName.Tests" reference "src/$LibraryName"
+ if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }
+ dotnet remove "test/$LibraryName.Tests" reference src/Library/Library.csproj
+ if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }
+ git add "test/$LibraryName.Tests/$LibraryName.Tests.csproj"
+ if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }
+
# Refresh solution file both to update paths and give the projects unique GUIDs
dotnet sln remove src/Library/Library.csproj
if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }
@@ -122,14 +130,6 @@ try {
git add "$LibraryName.slnx"
if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }
- # Update project reference in test project. Add before removal to keep the same ItemGroup in place.
- dotnet add "test/$LibraryName.Tests" reference "src/$LibraryName"
- if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }
- dotnet remove "test/$LibraryName.Tests" reference src/Library/Library.csproj
- if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }
- git add "test/$LibraryName.Tests/$LibraryName.Tests.csproj"
- if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }
-
# Establish a new strong-name key
& $sn.Path -k 2048 strongname.snk
if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }
diff --git a/global.json b/global.json
index cfaecd0d..895d51ba 100644
--- a/global.json
+++ b/global.json
@@ -1,6 +1,6 @@
{
"sdk": {
- "version": "9.0.306",
+ "version": "10.0.100",
"rollForward": "patch",
"allowPrerelease": false
}
diff --git a/tools/Install-DotNetSdk.ps1 b/tools/Install-DotNetSdk.ps1
index 402b4307..3d13e817 100644
--- a/tools/Install-DotNetSdk.ps1
+++ b/tools/Install-DotNetSdk.ps1
@@ -197,7 +197,7 @@ if ($InstallLocality -eq 'machine') {
$restartRequired = $false
$sdks |% {
if ($_.Version) { $version = $_.Version } else { $version = $_.Channel }
- if ($PSCmdlet.ShouldProcess(".NET SDK $_", "Install")) {
+ if ($PSCmdlet.ShouldProcess(".NET SDK $version ($arch)", "Install")) {
Install-DotNet -Version $version -Architecture $arch
$restartRequired = $restartRequired -or ($LASTEXITCODE -eq 3010)
@@ -281,10 +281,10 @@ if ($IncludeX86) {
}
if ($IsMacOS -or $IsLinux) {
- $DownloadUri = "https://raw.githubusercontent.com/dotnet/install-scripts/0b09de9bc136cacb5f849a6957ebd4062173c148/src/dotnet-install.sh"
+ $DownloadUri = "https://raw.githubusercontent.com/dotnet/install-scripts/a3fbd0fd625032bac207f1f590e5353fe26faa59/src/dotnet-install.sh"
$DotNetInstallScriptPath = "$DotNetInstallScriptRoot/dotnet-install.sh"
} else {
- $DownloadUri = "https://raw.githubusercontent.com/dotnet/install-scripts/0b09de9bc136cacb5f849a6957ebd4062173c148/src/dotnet-install.ps1"
+ $DownloadUri = "https://raw.githubusercontent.com/dotnet/install-scripts/a3fbd0fd625032bac207f1f590e5353fe26faa59/src/dotnet-install.ps1"
$DotNetInstallScriptPath = "$DotNetInstallScriptRoot/dotnet-install.ps1"
}
@@ -306,7 +306,7 @@ $global:LASTEXITCODE = 0
$sdks |% {
if ($_.Version) { $parameters = '-Version', $_.Version } else { $parameters = '-Channel', $_.Channel }
- if ($PSCmdlet.ShouldProcess(".NET SDK $_", "Install")) {
+ if ($PSCmdlet.ShouldProcess(".NET SDK $_ ($arch)", "Install")) {
$anythingInstalled = $true
Invoke-Expression -Command "$DotNetInstallScriptPathExpression $parameters -Architecture $arch -InstallDir $DotNetInstallDir $switches"