Skip to content

Commit 4339238

Browse files
authored
build and test with .net 8 (#242)
* feat: build and test with .net 8 * fix: run fake though fsi * fix: workflow * fix: kill build.fsx.lock file * fix: checkout code 😂 * hk: update release notes
1 parent a11e58b commit 4339238

File tree

16 files changed

+98
-309
lines changed

16 files changed

+98
-309
lines changed

.github/workflows/dotnetcore.yml

+4-5
Original file line numberDiff line numberDiff line change
@@ -15,18 +15,17 @@ jobs:
1515
fail-fast: false
1616
matrix:
1717
os: [ubuntu-latest, windows-latest, macOS-latest]
18-
dotnet: [6.0.413]
1918
runs-on: ${{ matrix.os }}
2019

2120
steps:
2221
- uses: actions/checkout@v1
23-
- name: Setup .NET Core
24-
uses: actions/setup-dotnet@v1
22+
- name: Setup .NET 8.0 SDK
23+
uses: actions/setup-dotnet@v4
2524
with:
26-
dotnet-version: ${{ matrix.dotnet }}
25+
dotnet-version: '8.0.x'
2726
- name: Install local tools
2827
run: dotnet tool restore
2928
- name: Paket Restore
3029
run: dotnet paket restore
3130
- name: Build and Test
32-
run: dotnet fake run build.fsx
31+
run: dotnet fsi build.fsx

build.cmd

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
@echo off
22
dotnet tool restore
33
dotnet paket restore
4-
dotnet fake run build.fsx %*
4+
dotnet fsi build.fsx %*

build.fsx

+22-19
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,22 @@
1-
#r @"paket:
2-
source https://nuget.org/api/v2
3-
framework net6.0
4-
nuget FSharp.Core 6.0.0.0
5-
nuget Fake.Core.Target
6-
nuget Fake.Core.Process
7-
nuget Fake.Core.ReleaseNotes
8-
nuget Fake.IO.FileSystem
9-
nuget Fake.DotNet.Cli
10-
nuget Fake.DotNet.MSBuild
11-
nuget Fake.DotNet.AssemblyInfoFile
12-
nuget Fake.DotNet.Paket
13-
nuget Fake.DotNet.FSFormatting
14-
nuget Fake.Tools.Git
15-
nuget Fake.Api.GitHub //"
16-
#load "./.fake/build.fsx/intellisense.fsx"
1+
#r "nuget: Fake.Core.Target"
2+
#r "nuget: Fake.Core.Process"
3+
#r "nuget: Fake.Core.ReleaseNotes"
4+
#r "nuget: Fake.IO.FileSystem"
5+
#r "nuget: Fake.DotNet.Cli"
6+
#r "nuget: Fake.DotNet.MSBuild"
7+
#r "nuget: Fake.DotNet.AssemblyInfoFile"
8+
#r "nuget: Fake.DotNet.Paket"
9+
#r "nuget: Fake.DotNet.FSFormatting"
10+
#r "nuget: Fake.Tools.Git"
11+
#r "nuget: Fake.Api.GitHub"
12+
13+
// Boilerplate - https://github.com/fsprojects/FAKE/issues/2719#issuecomment-1470687052
14+
System.Environment.GetCommandLineArgs()
15+
|> Array.skip 2 // skip fsi.exe; build.fsx
16+
|> Array.toList
17+
|> Fake.Core.Context.FakeExecutionContext.Create false __SOURCE_FILE__
18+
|> Fake.Core.Context.RuntimeContext.Fake
19+
|> Fake.Core.Context.setExecutionContext
1720

1821
open Fake
1922
open Fake.Core.TargetOperators
@@ -88,7 +91,7 @@ let webApiInputStream = StreamRef.Empty
8891
Target.create "StartServer" (fun _ ->
8992
Target.activateFinal "StopServer"
9093

91-
CreateProcess.fromRawCommandLine "dotnet" "tests/Swashbuckle.WebApi.Server/bin/Release/net6.0/Swashbuckle.WebApi.Server.dll"
94+
CreateProcess.fromRawCommandLine "dotnet" "tests/Swashbuckle.WebApi.Server/bin/Release/net8.0/Swashbuckle.WebApi.Server.dll"
9295
|> CreateProcess.withStandardInput(CreatePipe webApiInputStream)
9396
|> Proc.start
9497
|> ignore
@@ -113,9 +116,9 @@ Target.create "BuildTests" (fun _ -> dotnet "build" "SwaggerProvider.TestsAndDoc
113116
let runTests assembly =
114117
dotnet "test" $"{assembly} -c Release --no-build"
115118

116-
Target.create "RunUnitTests" (fun _ -> runTests "tests/SwaggerProvider.Tests/bin/Release/net6.0/SwaggerProvider.Tests.dll")
119+
Target.create "RunUnitTests" (fun _ -> runTests "tests/SwaggerProvider.Tests/bin/Release/net8.0/SwaggerProvider.Tests.dll")
117120

118-
Target.create "RunIntegrationTests" (fun _ -> runTests "tests/SwaggerProvider.ProviderTests/bin/Release/net6.0/SwaggerProvider.ProviderTests.dll")
121+
Target.create "RunIntegrationTests" (fun _ -> runTests "tests/SwaggerProvider.ProviderTests/bin/Release/net8.0/SwaggerProvider.ProviderTests.dll")
119122

120123
Target.create "RunTests" ignore
121124

build.fsx.lock

-193
This file was deleted.

build.sh

+2-2
Original file line numberDiff line numberDiff line change
@@ -5,5 +5,5 @@ then
55
else
66
dotnet tool restore
77
dotnet paket restore
8-
dotnet fake run build.fsx $@
9-
fi
8+
dotnet fsi build.fsx $@
9+
fi

docs/RELEASE_NOTES.md

+3
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
#### 2.1.0 - Mar 14, 2024
2+
- Build and test with .NET 8.0
3+
14
#### 2.0.1 - Mar 12, 2024
25
- fix: update ProvidedTypes.fs (#235)
36
- FSharp.Data utilities update (#238)

global.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"sdk": {
3-
"version": "6.0.413",
3+
"version": "8.0.201",
44
"rollForward": "minor"
55
}
66
}

paket.dependencies

+4-7
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,13 @@
1-
version 7.2.1
1+
version 8.0.3
22
source https://api.nuget.org/v3/index.json
3-
frameworks: net6.0, netstandard2.0
3+
frameworks: net8.0, netstandard2.0
44

55
nuget FSharp.Core ~> 6 // We need task{} CE from F# 6.0
66
nuget System.Text.Json ~> 6
77
nuget FSharp.SystemTextJson
88
nuget Microsoft.OpenApi.Readers
99
nuget NETStandard.Library.NETFramework
1010

11-
nuget System.Text.Encodings.Web ~> 6
12-
nuget Microsoft.Bcl.AsyncInterfaces ~> 6
13-
1411
# delete when we drop custom parser for v2
1512
nuget YamlDotNet
1613

@@ -23,7 +20,7 @@ github fsprojects/FSharp.Data:main src/FSharp.Data.Runtime.Utilities/NameUtils.f
2320

2421
group Server
2522
source https://api.nuget.org/v3/index.json
26-
framework: net6.0
23+
framework: net8.0
2724

2825
nuget Microsoft.AspNetCore
2926
nuget Microsoft.AspNetCore.Mvc
@@ -34,7 +31,7 @@ group Server
3431

3532
group Test
3633
source https://api.nuget.org/v3/index.json
37-
frameworks: net6.0
34+
frameworks: net8.0
3835

3936
nuget FSharp.Compiler.Service
4037
nuget FSharp.Core

0 commit comments

Comments
 (0)