Skip to content

Commit 6560990

Browse files
committed
Target netstandard 2.0 with lib, update project to .net 8
1 parent c2cc3bb commit 6560990

File tree

14 files changed

+138
-111
lines changed

14 files changed

+138
-111
lines changed

build/BasicTasks.fs

Lines changed: 19 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,22 @@ let clean = BuildTask.create "Clean" [] {
2424
|> Shell.cleanDirs
2525
}
2626

27-
let build = BuildTask.create "Build" [clean] {
28-
solutionFile
29-
|> DotNet.build id
30-
}
27+
let buildSolution =
28+
BuildTask.create "BuildSolution" [ clean ] {
29+
solutionFile
30+
|> DotNet.build (fun p ->
31+
let msBuildParams =
32+
{p.MSBuildParams with
33+
Properties = ([
34+
"warnon", "3390"
35+
])
36+
DisableInternalBinLog = true
37+
}
38+
{
39+
p with
40+
MSBuildParams = msBuildParams
41+
42+
}
43+
|> DotNet.Options.withCustomParams (Some "-tl")
44+
)
45+
}

build/Build.fs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,28 +21,28 @@ open ReleaseTasks
2121
let _release =
2222
BuildTask.createEmpty
2323
"Release"
24-
[clean; build; runTests; pack; buildDocs; createTag; publishNuget; releaseDocs]
24+
[clean; buildSolution; runTests; pack; buildDocs; createTag; publishNuget; releaseDocs]
2525

2626
/// Full release of nuget package, git tag, and documentation for the prerelease version.
2727
let _preRelease =
2828
BuildTask.createEmpty
2929
"PreRelease"
30-
[setPrereleaseTag; clean; build; runTests; packPrerelease; buildDocsPrerelease; createPrereleaseTag; publishNugetPrerelease; prereleaseDocs]
30+
[setPrereleaseTag; clean; buildSolution; runTests; packPrerelease; buildDocsPrerelease; createPrereleaseTag; publishNugetPrerelease; prereleaseDocs]
3131

3232
/// Full release of nuget package for the prerelease version.
3333
let _releaseNoDocs =
3434
BuildTask.createEmpty
3535
"ReleaseNoDocs"
36-
[clean; build; runTests; pack; createTag; publishNuget;]
36+
[clean; buildSolution; runTests; pack; createTag; publishNuget;]
3737

3838
/// Full release of nuget package for the prerelease version.
3939
let _preReleaseNoDocs =
4040
BuildTask.createEmpty
4141
"PreReleaseNoDocs"
42-
[setPrereleaseTag; clean; build; runTests; packPrerelease; createPrereleaseTag; publishNugetPrerelease]
42+
[setPrereleaseTag; clean; buildSolution; runTests; packPrerelease; createPrereleaseTag; publishNugetPrerelease]
4343

4444
ReleaseNotesTasks.updateReleaseNotes |> ignore
4545

4646
[<EntryPoint>]
4747
let main args =
48-
runOrDefault build args
48+
runOrDefault buildSolution args

build/DocumentationTasks.fs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,28 +6,28 @@ open BasicTasks
66

77
open BlackFox.Fake
88

9-
let buildDocs = BuildTask.create "BuildDocs" [build] {
9+
let buildDocs = BuildTask.create "BuildDocs" [buildSolution] {
1010
printfn "building docs with stable version %s" stableVersionTag
1111
runDotNet
1212
(sprintf "fsdocs build --eval --clean --properties Configuration=Release --parameters fsdocs-package-version %s" stableVersionTag)
1313
"./"
1414
}
1515

16-
let buildDocsPrerelease = BuildTask.create "BuildDocsPrerelease" [setPrereleaseTag; build] {
16+
let buildDocsPrerelease = BuildTask.create "BuildDocsPrerelease" [setPrereleaseTag; buildSolution] {
1717
printfn "building docs with prerelease version %s" prereleaseTag
1818
runDotNet
1919
(sprintf "fsdocs build --eval --clean --properties Configuration=Release --parameters fsdocs-package-version %s" prereleaseTag)
2020
"./"
2121
}
2222

23-
let watchDocs = BuildTask.create "WatchDocs" [build] {
23+
let watchDocs = BuildTask.create "WatchDocs" [buildSolution] {
2424
printfn "watching docs with stable version %s" stableVersionTag
2525
runDotNet
2626
(sprintf "fsdocs watch --eval --clean --properties Configuration=Release --parameters fsdocs-package-version %s" stableVersionTag)
2727
"./"
2828
}
2929

30-
let watchDocsPrerelease = BuildTask.create "WatchDocsPrerelease" [setPrereleaseTag; build] {
30+
let watchDocsPrerelease = BuildTask.create "WatchDocsPrerelease" [setPrereleaseTag; buildSolution] {
3131
printfn "watching docs with prerelease version %s" prereleaseTag
3232
runDotNet
3333
(sprintf "fsdocs watch --eval --clean --properties Configuration=Release --parameters fsdocs-package-version %s" prereleaseTag)

build/PackageTasks.fs

Lines changed: 20 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ open TestTasks
88

99
open BlackFox.Fake
1010
open Fake.Core
11+
open Fake.DotNet
1112
open Fake.IO.Globbing.Operators
1213

1314
open System.Text.RegularExpressions
@@ -17,7 +18,7 @@ let private replaceCommitLink input =
1718
let commitLinkPattern = @"\[\[#[a-z0-9]*\]\(.*\)\] "
1819
Regex.Replace(input,commitLinkPattern,"")
1920

20-
let pack = BuildTask.create "Pack" [clean; build; runTests] {
21+
let pack = BuildTask.create "Pack" [clean; buildSolution; runTests] {
2122
if promptYesNo (sprintf "creating stable package with version %s OK?" stableVersionTag )
2223
then
2324
!! "src/**/*.*proj"
@@ -29,35 +30,39 @@ let pack = BuildTask.create "Pack" [clean; build; runTests] {
2930
"Version",stableVersionTag
3031
"PackageReleaseNotes", (release.Notes |> List.map replaceCommitLink |> String.concat "\r\n" )
3132
] @ p.MSBuildParams.Properties)
33+
DisableInternalBinLog = true
3234
}
3335
{
3436
p with
3537
MSBuildParams = msBuildParams
3638
OutputPath = Some pkgDir
3739
}
40+
|> DotNet.Options.withCustomParams (Some "-tl")
3841
))
3942
else failwith "aborted"
4043
}
4144

42-
let packPrerelease = BuildTask.create "PackPrerelease" [setPrereleaseTag; clean; build; runTests] {
45+
let packPrerelease = BuildTask.create "PackPrerelease" [setPrereleaseTag; clean; buildSolution; runTests] {
4346
if promptYesNo (sprintf "package tag will be %s OK?" prereleaseTag )
4447
then
4548
!! "src/**/*.*proj"
4649
-- "src/bin/*"
4750
|> Seq.iter (Fake.DotNet.DotNet.pack (fun p ->
48-
let msBuildParams =
49-
{p.MSBuildParams with
50-
Properties = ([
51-
"Version", prereleaseTag
52-
"PackageReleaseNotes", (release.Notes |> List.map replaceCommitLink |> String.toLines )
53-
] @ p.MSBuildParams.Properties)
54-
}
55-
{
56-
p with
57-
VersionSuffix = Some prereleaseSuffix
58-
OutputPath = Some pkgDir
59-
MSBuildParams = msBuildParams
60-
}
51+
let msBuildParams =
52+
{p.MSBuildParams with
53+
Properties = ([
54+
"Version", prereleaseTag
55+
"PackageReleaseNotes", (release.Notes |> List.map replaceCommitLink |> String.toLines )
56+
] @ p.MSBuildParams.Properties)
57+
DisableInternalBinLog = true
58+
}
59+
{
60+
p with
61+
VersionSuffix = Some prereleaseSuffix
62+
OutputPath = Some pkgDir
63+
MSBuildParams = msBuildParams
64+
}
65+
|> DotNet.Options.withCustomParams (Some "-tl")
6166
))
6267
else
6368
failwith "aborted"

build/ReleaseTasks.fs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,15 +15,15 @@ open Fake.Tools
1515
open Fake.IO
1616
open Fake.IO.Globbing.Operators
1717

18-
let createTag = BuildTask.create "CreateTag" [clean; build; runTests; pack] {
18+
let createTag = BuildTask.create "CreateTag" [clean; buildSolution; runTests; pack] {
1919
if promptYesNo (sprintf "tagging branch with %s OK?" stableVersionTag ) then
2020
Git.Branches.tag "" stableVersionTag
2121
Git.Branches.pushTag "" projectRepo stableVersionTag
2222
else
2323
failwith "aborted"
2424
}
2525

26-
let createPrereleaseTag = BuildTask.create "CreatePrereleaseTag" [setPrereleaseTag; clean; build; runTests; packPrerelease] {
26+
let createPrereleaseTag = BuildTask.create "CreatePrereleaseTag" [setPrereleaseTag; clean; buildSolution; runTests; packPrerelease] {
2727
if promptYesNo (sprintf "tagging branch with %s OK?" prereleaseTag ) then
2828
Git.Branches.tag "" prereleaseTag
2929
Git.Branches.pushTag "" projectRepo prereleaseTag
@@ -32,7 +32,7 @@ let createPrereleaseTag = BuildTask.create "CreatePrereleaseTag" [setPrereleaseT
3232
}
3333

3434

35-
let publishNuget = BuildTask.create "PublishNuget" [clean; build; runTests; pack] {
35+
let publishNuget = BuildTask.create "PublishNuget" [clean; buildSolution; runTests; pack] {
3636
let targets = (!! (sprintf "%s/*.*pkg" pkgDir ))
3737
for target in targets do printfn "%A" target
3838
let msg = sprintf "release package with version %s?" stableVersionTag
@@ -45,7 +45,7 @@ let publishNuget = BuildTask.create "PublishNuget" [clean; build; runTests; pack
4545
else failwith "aborted"
4646
}
4747

48-
let publishNugetPrerelease = BuildTask.create "PublishNugetPrerelease" [clean; build; runTests; packPrerelease] {
48+
let publishNugetPrerelease = BuildTask.create "PublishNugetPrerelease" [clean; buildSolution; runTests; packPrerelease] {
4949
let targets = (!! (sprintf "%s/*.*pkg" pkgDir ))
5050
for target in targets do printfn "%A" target
5151
let msg = sprintf "release package with version %s?" prereleaseTag

build/TestTasks.fs

Lines changed: 3 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ open Fake.DotNet
66
open ProjectInfo
77
open BasicTasks
88

9-
let runTests = BuildTask.create "RunTests" [clean; build] {
9+
let runTests = BuildTask.create "RunTests" [clean; buildSolution] {
1010
testProjects
1111
|> Seq.iter (fun testProject ->
1212
Fake.DotNet.DotNet.test(fun testParams ->
@@ -15,29 +15,9 @@ let runTests = BuildTask.create "RunTests" [clean; build] {
1515
Logger = Some "console;verbosity=detailed"
1616
Configuration = DotNet.BuildConfiguration.fromString configuration
1717
NoBuild = true
18+
MSBuildParams = { testParams.MSBuildParams with DisableInternalBinLog = true}
1819
}
19-
) testProject
20-
)
21-
}
22-
23-
// to do: use this once we have actual tests
24-
let runTestsWithCodeCov = BuildTask.create "RunTestsWithCodeCov" [clean; build] {
25-
let standardParams = Fake.DotNet.MSBuild.CliArguments.Create ()
26-
testProjects
27-
|> Seq.iter(fun testProject ->
28-
Fake.DotNet.DotNet.test(fun testParams ->
29-
{
30-
testParams with
31-
MSBuildParams = {
32-
standardParams with
33-
Properties = [
34-
"AltCover","true"
35-
"AltCoverCobertura","../../codeCov.xml"
36-
"AltCoverForce","true"
37-
]
38-
};
39-
Logger = Some "console;verbosity=detailed"
40-
}
20+
|> DotNet.Options.withCustomParams (Some "-tl")
4121
) testProject
4222
)
4323
}

build/build.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>net6.0</TargetFramework>
4+
<TargetFramework>net8.0</TargetFramework>
55
<OutputType>Exe</OutputType>
66
</PropertyGroup>
77

global.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"sdk": {
3-
"version": "6.0.100",
3+
"version": "8.0.100",
44
"rollForward": "latestMinor"
55
}
66
}

src/AnyBadge.NET.Tool/AnyBadge.NET.Tool.fsproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

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

88
<ItemGroup>

src/AnyBadge.NET/AnyBadge.NET.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>net6.0</TargetFramework>
4+
<TargetFramework>netstandard2.0</TargetFramework>
55
<OutputType>Library</OutputType>
66
<!-- Optional: Declare that the Repository URL can be published to NuSpec -->
77
<PublishRepositoryUrl>true</PublishRepositoryUrl>

0 commit comments

Comments
 (0)