Skip to content

Commit 8391d98

Browse files
Upgrade to .NET 9 (#279)
1 parent b68b3f5 commit 8391d98

File tree

26 files changed

+93
-26
lines changed

26 files changed

+93
-26
lines changed

Dockerfile

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM --platform=$BUILDPLATFORM mcr.microsoft.com/dotnet/sdk:8.0 AS build
1+
FROM --platform=$BUILDPLATFORM mcr.microsoft.com/dotnet/sdk:9.0 AS build
22
ARG TARGETARCH
33

44
WORKDIR /tmp
@@ -22,6 +22,7 @@ RUN dotnet add package FSharp.Core -v 6.0.1
2222
RUN dotnet add package FSharp.Core -v 7.0.400
2323
RUN dotnet add package FSharp.Core -v 8.0.101
2424
RUN dotnet add package FSharp.Core -v 8.0.403
25+
RUN dotnet add package FSharp.Core -v 9.0.201
2526
RUN dotnet add package FParsec -v 1.1.1
2627
RUN dotnet add package FsToolkit.ErrorHandling -v 4.15.2
2728

@@ -36,7 +37,7 @@ COPY src/Exercism.TestRunner.FSharp/ ./
3637
RUN dotnet publish -a $TARGETARCH -c Release -o /opt/test-runner --no-restore
3738

3839
# Build runtime image
39-
FROM --platform=$BUILDPLATFORM mcr.microsoft.com/dotnet/sdk:8.0 AS runtime
40+
FROM --platform=$BUILDPLATFORM mcr.microsoft.com/dotnet/sdk:9.0 AS runtime
4041

4142
ENV DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=false
4243
ENV DOTNET_ROLL_FORWARD=Major

src/Exercism.TestRunner.FSharp/Exercism.TestRunner.FSharp.fsproj

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
<PropertyGroup>
44
<OutputType>Exe</OutputType>
5-
<TargetFramework>net8.0</TargetFramework>
5+
<TargetFramework>net9.0</TargetFramework>
66
</PropertyGroup>
77

88
<ItemGroup>
@@ -23,7 +23,7 @@
2323
<PackageReference Include="Fantomas.Core" Version="6.3.4" />
2424
<PackageReference Include="Fantomas.FCS" Version="6.3.4" />
2525
<PackageReference Include="Humanizer.Core" Version="2.14.1" />
26-
<PackageReference Update="FSharp.Core" Version="8.0.200" />
26+
<PackageReference Update="FSharp.Core" Version="9.0.201" />
2727
</ItemGroup>
2828

2929
</Project>

src/Exercism.TestRunner.FSharp/Rewrite.fs

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -72,9 +72,10 @@ let private rewriteProjectFile (context: TestRunContext) =
7272
let originalProjectFile = File.ReadAllText(context.ProjectFile)
7373
let rewrittenProjectFile =
7474
originalProjectFile
75-
.Replace("net5.0", "net8.0")
76-
.Replace("net6.0", "net8.0")
77-
.Replace("net7.0", "net8.0")
75+
.Replace("net5.0", "net9.0")
76+
.Replace("net6.0", "net9.0")
77+
.Replace("net7.0", "net9.0")
78+
.Replace("net8.0", "net9.0")
7879
originalProjectFile, rewrittenProjectFile
7980

8081
let rewriteTests (context: TestRunContext) =

tests/AllTestsWithTask/AllTestsWithTask.fsproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22

33
<PropertyGroup>
4-
<TargetFramework>net8.0</TargetFramework>
4+
<TargetFramework>net9.0</TargetFramework>
55

66
<IsPackable>false</IsPackable>
77
</PropertyGroup>

tests/ClassBasedTests/ClassBasedTests.fsproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22

33
<PropertyGroup>
4-
<TargetFramework>net8.0</TargetFramework>
4+
<TargetFramework>net9.0</TargetFramework>
55

66
<IsPackable>false</IsPackable>
77
</PropertyGroup>

tests/DifferentTestCodeFormats/DifferentTestCodeFormats.fsproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22

33
<PropertyGroup>
4-
<TargetFramework>net8.0</TargetFramework>
4+
<TargetFramework>net9.0</TargetFramework>
55

66
<IsPackable>false</IsPackable>
77
</PropertyGroup>

tests/DifferentTypesOfTests/DifferentTypesOfTests.fsproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22

33
<PropertyGroup>
4-
<TargetFramework>net8.0</TargetFramework>
4+
<TargetFramework>net9.0</TargetFramework>
55

66
<IsPackable>false</IsPackable>
77
</PropertyGroup>
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
module DotnetSixProject
2+
3+
let add x y = x + y
4+
5+
let sub x y = x - y
6+
7+
let mul x y = x * y
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
<Project Sdk="Microsoft.NET.Sdk">
2+
3+
<PropertyGroup>
4+
<TargetFramework>net8.0</TargetFramework>
5+
6+
<IsPackable>false</IsPackable>
7+
</PropertyGroup>
8+
9+
<ItemGroup>
10+
<Compile Include="DotnetEightProject.fs" />
11+
<Compile Include="DotnetEightProjectTests.fs" />
12+
</ItemGroup>
13+
14+
<ItemGroup>
15+
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.8.3" />
16+
<PackageReference Include="xunit" Version="2.4.1" />
17+
<PackageReference Include="xunit.runner.visualstudio" Version="2.4.3" />
18+
<PackageReference Include="FsUnit.xUnit" Version="4.0.4" />
19+
<PackageReference Include="Exercism.Tests" Version="0.1.0-alpha" />
20+
</ItemGroup>
21+
22+
</Project>
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
module DotnetSixProjectTests
2+
3+
open Xunit
4+
open FsUnit.Xunit
5+
open Exercism.Tests
6+
open DotnetSixProject
7+
8+
[<Fact>]
9+
let ``Add should add numbers`` () = add 1 1 |> should equal 2
10+
11+
[<Fact(Skip = "Remove this Skip property to run this test")>]
12+
let ``Sub should subtract numbers`` () = sub 7 3 |> should equal 4
13+
14+
[<Fact(Skip = "Remove this Skip property to run this test")>]
15+
let ``Mul should multiply numbers`` () = mul 2 3 |> should equal 6

0 commit comments

Comments
 (0)