Skip to content

Commit 011956b

Browse files
committed
Merge branch 'release/8.0.0'
2 parents d8ff60a + d496769 commit 011956b

File tree

199 files changed

+53314
-18882
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

199 files changed

+53314
-18882
lines changed

.gitlab-ci.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
image: mcr.microsoft.com/dotnet/sdk:5.0
1+
image: mcr.microsoft.com/dotnet/sdk:8.0
22

33
variables:
44
GIT_DEPTH: 0

.space.kts

+1-1
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ job("continuous") {
2222
}
2323
}
2424

25-
container("mcr.microsoft.com/dotnet/sdk:6.0") {
25+
container("mcr.microsoft.com/dotnet/sdk:8.0") {
2626
shellScript {
2727
content = "./build.sh Test"
2828
}

CHANGELOG.md

+25-1
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,29 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
66

77
## [vNext]
88

9+
## [8.0.0] / 2024-01-18
10+
- Changed string parameters to violate requirement when empty or whitespace
11+
- Added on-demand value injection using `OnDemandAttribute` and `OnDemandValueInjectionAttribute`
12+
- Added `AbsolutePath` division operator for `..` range expression
13+
- Added `DOTNET_NOLOGO` to bootstrapping files
14+
- Fixed `BinaryFormatterSerialization` warning by suppression
15+
- Fixed .NET SDK discovery in bootstrapping files
16+
- Fixed quotation for bootstrapping script invocation
17+
- Fixed filtering on `FileAttributes`
18+
- Fixed quoting in `AppVeyor` generation
19+
- Fixed members in `AzurePipelinesImage`
20+
- Fixed members in `GitHubActionsImage`
21+
- Fixed lower-case naming in `DotNetVerbosity` members
22+
- Fixed missing `DotNetTasks` commands
23+
- Fixed missing `EntityFrameworkTasks` command
24+
- Fixed logging in `NpmTasks`
25+
- Fixed argument type in `OctopusTasks`
26+
- Fixed missing argument in `SonarScannerTasks`
27+
- Fixed value formatting in `SonarScannerTasks`
28+
- Fixed members in `NUnitLabelType`
29+
- Fixed deprecated argument in `NUnitTasks`
30+
- Fixed members in `ReportGeneratorReportTypes`
31+
932
## [7.0.6] / 2023-09-24
1033
- Fixed logging of Docker target execution to fall back to debug messages
1134

@@ -1103,7 +1126,8 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
11031126
- Added CLT tasks for Git
11041127
- Fixed background color in console output
11051128

1106-
[vNext]: https://github.com/nuke-build/nuke/compare/7.0.6...HEAD
1129+
[vNext]: https://github.com/nuke-build/nuke/compare/8.0.0...HEAD
1130+
[8.0.0]: https://github.com/nuke-build/nuke/compare/7.0.6...8.0.0
11071131
[7.0.6]: https://github.com/nuke-build/nuke/compare/7.0.5...7.0.6
11081132
[7.0.5]: https://github.com/nuke-build/nuke/compare/7.0.4...7.0.5
11091133
[7.0.4]: https://github.com/nuke-build/nuke/compare/7.0.3...7.0.4

CONTRIBUTING.md

-1
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@ There are a number of minimal to zero efforts you can make to show your support
2929
- Follow [@nukebuildnet](https://twitter.com/nukebuildnet) and [@nuke@dotnet.social](https://dotnet.social/@nuke)
3030
- Upvote, share, and comment our content (see [#mentions](https://app.slack.com/client/T9QUKHC4A/CDJD8CGQ5) on Slack)
3131
- Talk about NUKE on social media and let others know where it can help (tag us!)
32-
- Give ratings where possible (e.g., extensions for [Rider](https://plugins.jetbrains.com/plugin/10803-nuke-support/reviews) or [Visual Studio](https://marketplace.visualstudio.com/items?itemName=nuke.visualstudio&ssr=false#review-details))
3332

3433
The above points are considered somewhat of the norm in exchange for using the project free of charge.
3534

Dockerfile

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# docker build --no-cache --progress=plain -t my-image .
22
ARG registryUrl
33

4-
FROM mcr.microsoft.com/dotnet/sdk:6.0 AS builder
4+
FROM mcr.microsoft.com/dotnet/sdk:8.0 AS builder
55

66
WORKDIR /
77
COPY ./ /code

README.md

+7
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,7 @@ Thanks to all companies, organizations, and individuals who are sponsoring the f
8484
[![Daniel Valadas](https://avatars.githubusercontent.com/valadas?s=60&v=4)](https://github.com/valadas)
8585
[![Anton Wieslander](https://avatars.githubusercontent.com/T0shik?s=60&v=4)](https://github.com/T0shik)
8686
[![business//acts](https://avatars.githubusercontent.com/BusinessActs?s=60&v=4)](https://github.com/BusinessActs)
87+
[![Petabridge](https://avatars.githubusercontent.com/petabridge?s=60&v=4)](https://github.com/petabridge)
8788
[![Steven Kuhn](https://avatars.githubusercontent.com/stevenkuhn?s=60&v=4)](https://github.com/stevenkuhn)
8889

8990
[![Stephan Müller](https://avatars.githubusercontent.com/chaquotay?s=45&v=4)](https://github.com/chaquotay)
@@ -96,6 +97,8 @@ Thanks to all companies, organizations, and individuals who are sponsoring the f
9697
[![Derek Beattie](https://avatars.githubusercontent.com/dbeattie71?s=45&v=4)](https://github.com/dbeattie71)
9798
[![Andrei Andreev](https://avatars.githubusercontent.com/Razenpok?s=45&v=4)](https://github.com/Razenpok)
9899
[![patrik53](https://avatars.githubusercontent.com/patrik53?s=45&v=4)](https://github.com/patrik53)
100+
[![Cesare Caoduro](https://avatars.githubusercontent.com/Cesare-Caoduro_aecom?s=45&v=4)](https://github.com/Cesare-Caoduro_aecom)
101+
[![Kirill Osenkov](https://avatars.githubusercontent.com/KirillOsenkov?s=45&v=4)](https://github.com/KirillOsenkov)
99102
[<img height="45px" src="https://images.opencollective.com/archon-systems-inc/85fa9b1/logo/256.png" alt="Archon Systems Inc." />](https://opencollective.com/archon-systems-inc/)
100103
[<img height="45px" src="https://images.opencollective.com/bitzer-electronics-as/39862ac/logo/256.png" alt="BITZER Electronics A/S" />](https://opencollective.com/bitzer-electronics-as)
101104

@@ -104,3 +107,7 @@ Thanks to all companies, organizations, and individuals who are sponsoring the f
104107
Thanks to [JetBrains](https://jetbrains.com) for providing licenses for [Rider](https://jetbrains.com/rider) and access to a [TeamCity Cloud](https://jetbrains.com/teamcity) instance, which both make open-source development a real pleasure!
105108

106109
[<img src="https://raw.githubusercontent.com/nuke-build/nuke/develop/images/jetbrains.png" width="450" />](https://jetbrains.com/)
110+
111+
Thanks to [SignPath](https://signpath.io?utm_source=foundation&utm_medium=github&utm_campaign=nukebuild) for providing free code signing service and to the [SignPath Foundation](https://signpath.org?utm_source=foundation&utm_medium=github&utm_campaign=nukebuild) for a free code signing certificate.
112+
113+
[<img src="https://raw.githubusercontent.com/SignPath/website/3168d6c7f0e60e647c13fd746df18b52cd52f59c/docs/assets/logo_signpath_500.png" width="450" />](https://signpath.io?utm_source=foundation&utm_medium=github&utm_campaign=nukebuild)

appveyor.continuous.yml

+3-3
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,6 @@ build_script:
3131
- sh: ./build.cmd Test Pack
3232

3333
artifacts:
34-
- path: output/test-results/*.trx
35-
- path: output/test-results/*.xml
36-
- path: output/packages/*.nupkg
34+
- path: 'output/test-results/*.trx'
35+
- path: 'output/test-results/*.xml'
36+
- path: 'output/packages/*.nupkg'

appveyor.yml

+3-3
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,9 @@ build_script:
2929
- sh: ./build.cmd Pack Test SignPackages Publish
3030

3131
artifacts:
32-
- path: output/packages/*.nupkg
33-
- path: output/test-results/*.trx
34-
- path: output/test-results/*.xml
32+
- path: 'output/packages/*.nupkg'
33+
- path: 'output/test-results/*.trx'
34+
- path: 'output/test-results/*.xml'
3535

3636
environment:
3737
PublicNuGetApiKey:

azure-pipelines.qodana.yml

+15
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
pool:
2+
vmImage: 'ubuntu-latest'
3+
4+
jobs:
5+
- job: QodanaScan
6+
displayName: 'Qodana Scan'
7+
steps:
8+
- task: Cache@2 # Not required, but Qodana will open projects with cache faster.
9+
inputs:
10+
key: '"$(Build.Repository.Name)" | "$(Build.SourceBranchName)" | "$(Build.SourceVersion)"'
11+
path: '$(Agent.TempDirectory)/qodana/cache'
12+
restoreKeys: |
13+
"$(Build.Repository.Name)" | "$(Build.SourceBranchName)"
14+
"$(Build.Repository.Name)"
15+
- task: QodanaScan@2023

build.ps1

+2-2
Original file line numberDiff line numberDiff line change
@@ -20,9 +20,8 @@ $DotNetGlobalFile = "$PSScriptRoot\global.json"
2020
$DotNetInstallUrl = "https://dot.net/v1/dotnet-install.ps1"
2121
$DotNetChannel = "STS"
2222

23-
$env:DOTNET_SKIP_FIRST_TIME_EXPERIENCE = 1
2423
$env:DOTNET_CLI_TELEMETRY_OPTOUT = 1
25-
$env:DOTNET_MULTILEVEL_LOOKUP = 0
24+
$env:DOTNET_NOLOGO = 1
2625
$env:DOTNET_ROLL_FORWARD = "Major"
2726
$env:NUKE_TELEMETRY_OPTOUT = 1
2827

@@ -72,6 +71,7 @@ else {
7271
ExecSafe { & powershell $DotNetInstallFile -InstallDir $DotNetDirectory -Version $DotNetVersion -NoPath }
7372
}
7473
$env:DOTNET_EXE = "$DotNetDirectory\dotnet.exe"
74+
$env:PATH = "$DotNetDirectory;$env:PATH"
7575
}
7676

7777
Write-Output "Microsoft (R) .NET SDK version $(& $env:DOTNET_EXE --version)"

build.sh

+2-2
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,7 @@ DOTNET_INSTALL_URL="https://dot.net/v1/dotnet-install.sh"
1717
DOTNET_CHANNEL="STS"
1818

1919
export DOTNET_CLI_TELEMETRY_OPTOUT=1
20-
export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1
21-
export DOTNET_MULTILEVEL_LOOKUP=0
20+
export DOTNET_NOLOGO=1
2221
export DOTNET_ROLL_FORWARD="Major"
2322
export NUKE_TELEMETRY_OPTOUT=1
2423

@@ -65,6 +64,7 @@ else
6564
"$DOTNET_INSTALL_FILE" --install-dir "$DOTNET_DIRECTORY" --version "$DOTNET_VERSION" --no-path
6665
fi
6766
export DOTNET_EXE="$DOTNET_DIRECTORY/dotnet"
67+
export PATH="$DOTNET_DIRECTORY:$PATH"
6868
fi
6969

7070
echo "Microsoft (R) .NET SDK version $("$DOTNET_EXE" --version)"

build/Build.CI.SpaceAutomation.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77

88
[SpaceAutomation(
99
name: "continuous",
10-
image: "mcr.microsoft.com/dotnet/sdk:6.0",
10+
image: "mcr.microsoft.com/dotnet/sdk:8.0",
1111
OnPush = true,
1212
InvokedTargets = new[] { nameof(ITest.Test) })]
1313
partial class Build

build/Build.ReleaseImage.cs

+2-2
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ partial class Build
7171
.DrawText(
7272
text: "New Release".ToUpperInvariant(),
7373
color: Color.WhiteSmoke,
74-
textOptions: new TextOptions(thinFont.CreateFont(100))
74+
textOptions: new RichTextOptions(thinFont.CreateFont(100))
7575
{
7676
Origin = new PointF(image.Width / 2f, image.Height / 2f - 120),
7777
HorizontalAlignment = HorizontalAlignment.Center,
@@ -80,7 +80,7 @@ partial class Build
8080
.DrawText(
8181
text: MajorMinorPatchVersion,
8282
color: Color.WhiteSmoke,
83-
textOptions: new TextOptions(boldFont.CreateFont(230))
83+
textOptions: new RichTextOptions(boldFont.CreateFont(230))
8484
{
8585
Origin = new PointF(image.Width / 2f, image.Height / 2f + 60),
8686
HorizontalAlignment = HorizontalAlignment.Center,

build/_build.csproj

+7-7
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
<PropertyGroup>
66
<OutputType>Exe</OutputType>
7-
<TargetFramework>net6.0</TargetFramework>
7+
<TargetFramework>net8.0</TargetFramework>
88
<LangVersion>preview</LangVersion>
99
<RootNamespace></RootNamespace>
1010
<NoWarn>CS0649;CS0169</NoWarn>
@@ -53,12 +53,12 @@
5353

5454
<ItemGroup>
5555
<PackageReference Include="linqtotwitter" Version="6.15.0" />
56-
<PackageReference Include="SixLabors.ImageSharp.Drawing" Version="1.0.0-beta14" />
57-
<PackageDownload Include="Codecov.Tool" Version="[1.12.3]" />
58-
<PackageDownload Include="GitVersion.Tool" Version="[5.8.0]" />
59-
<PackageDownload Include="JetBrains.ReSharper.GlobalTools" Version="[2022.3.2]" />
60-
<PackageDownload Include="ReportGenerator" Version="[4.6.1]" />
61-
<PackageDownload Include="xunit.runner.console" Version="[2.4.1]" />
56+
<PackageReference Include="SixLabors.ImageSharp.Drawing" Version="2.0.1" />
57+
<PackageDownload Include="Codecov.Tool" Version="[1.13.0]" />
58+
<PackageDownload Include="GitVersion.Tool" Version="[5.12.0]" />
59+
<PackageDownload Include="JetBrains.ReSharper.GlobalTools" Version="[2023.2.3]" />
60+
<PackageDownload Include="ReportGenerator" Version="[5.2.0]" />
61+
<PackageDownload Include="xunit.runner.console" Version="[2.6.1]" />
6262
</ItemGroup>
6363

6464
<ItemGroup>
+39
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
---
2+
title: Installation
3+
---
4+
5+
Before you can set up a build project, you need to install NUKE's dedicated [.NET global tool](https://docs.microsoft.com/en-us/dotnet/core/tools/global-tools):
6+
7+
```powershell
8+
# terminal-command
9+
dotnet tool install Nuke.GlobalTool --global
10+
```
11+
12+
From now on, you can use the global tool to:
13+
14+
- [Set up new builds](02-setup.md)
15+
- [Run existing builds](03-execution.md)
16+
- [Leverage shell completion](../06-global-tool/00-shell-completion.md)
17+
- [Add tool & library packages](../06-global-tool/01-packages.md)
18+
- [Navigate around root directories](../06-global-tool/03-navigation.md)
19+
- [Convert CAKE build scripts](../06-global-tool/04-cake.md)
20+
- [Manage secrets in parameter files](../06-global-tool/02-secrets.md)
21+
22+
:::note
23+
If you're running on Linux-based systems, it's worth checking if the `nuke` global tool is available. This can be verified with `where nuke`. If the global tool is not found, you have to manually add `$HOME/.dotnet/tools` to your terminal configuration:
24+
25+
<Tabs>
26+
<TabItem value="zsh" label="Zsh" default>
27+
28+
```powershell
29+
# terminal-command
30+
echo 'export PATH=$HOME/.dotnet/tools:$PATH' >> ~/.zshrc
31+
```
32+
33+
</TabItem>
34+
</Tabs>
35+
:::
36+
37+
:::info
38+
While theoretically, you could use NUKE by only adding its main NuGet package, we highly recommend using the dedicated global tool to set up new builds. This ensures that your repository will run consistently in different environments and that your build implementation is always properly formatted.
39+
:::

0 commit comments

Comments
 (0)