Skip to content

chore: migrate the build pipeline from NUKE to Fallout - #1017

Merged
vbreuss merged 5 commits into
mainfrom
chore/migrate-to-fallout
Sep 2, 2026
Merged

chore: migrate the build pipeline from NUKE to Fallout#1017
vbreuss merged 5 commits into
mainfrom
chore/migrate-to-fallout

Conversation

@vbreuss

@vbreuss vbreuss commented Sep 2, 2026

Copy link
Copy Markdown
Member

Fixes the CI break from the .NET SDK 10.0.400 runner update and migrates the build pipeline from NUKE to Fallout.

Root cause: SDK 10.0.400's MSBuild expects NuGet.Frameworks 7.9.0.0, but the build host loads 6.x via NUKE, so in-process project evaluation fails with an assembly mismatch. Fallout has the same issue (Fallout-build/Fallout#638).

Changes

  • Pin NuGet.Frameworks 7.9.0 in the build project and the SDK to the 10.0.3xx band (global.json, workflows).
  • Migrate to Fallout 10.4.0 via fallout-migrate, plus manual follow-ups (package versions, dependabot, docs, BuildProjectFile in .fallout/parameters.json).
  • Run the xunit.v3 framework tests via dotnet run; Microsoft.Testing.Platform 2.3.3 no longer supports dotnet test through the VSTest bridge on the .NET 10 SDK.
  • Fix the .gitignore temp-folder entry, whose leading ./ git never matched.

Verified locally: build project compiles, fallout --help lists all targets, XunitTestingPlatformFrameworks passes. Future SDK band bumps must update global.json, the workflows and the NuGet.Frameworks pin together.

@vbreuss vbreuss self-assigned this Sep 2, 2026
Copilot AI lite review requested due to automatic review settings September 2, 2026 19:37
@vbreuss vbreuss added the dependencies Pull requests that update a dependency file label Sep 2, 2026

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

The new Fallout parameters/schema currently leave build project selection ambiguous and can default to a non-existent build project path, which can break fallout-based runs.

Once you've addressed the issues Copilot identified, you can request another Copilot review.

Pull request overview

This PR migrates the repository’s build orchestration from NUKE to Fallout by updating the pipeline build project, build scripts, and CI configuration to use Fallout packages and conventions.

Changes:

  • Switched Pipeline/* build code from Nuke.Common* APIs/packages to Fallout.* equivalents.
  • Updated build scripts and ignore rules to use .fallout/temp instead of .nuke/temp.
  • Updated CI workflows and supporting configuration/docs to reflect the Fallout-based build.
File summaries
File Description
Source/Directory.Build.props Updates inline comment to reference Fallout compile step.
Pipeline/Configuration.cs Replaces NUKE tooling import with Fallout tooling import.
Pipeline/BuildExtensions.cs Updates CI/Sonar imports from NUKE to Fallout.
Pipeline/Build.UnitTest.cs Migrates build target code to Fallout namespaces/tools.
Pipeline/Build.Pack.cs Migrates pack target to Fallout namespaces/utilities.
Pipeline/Build.MutationTests.cs Migrates mutation test target to Fallout namespaces/tools.
Pipeline/Build.FrameworkTest.cs Migrates framework test target to Fallout namespaces/tools.
Pipeline/Build.csproj Replaces NUKE packages/properties with Fallout equivalents and adds NuGet.Frameworks.
Pipeline/Build.cs Switches base build type from NukeBuild to FalloutBuild and updates imports.
Pipeline/Build.Compile.cs Migrates compile target dependencies (DotNet/GitVersion/etc.) to Fallout.
Pipeline/Build.CodeCoverage.cs Migrates report generator usage to Fallout tooling.
Pipeline/Build.CodeAnalysis.cs Migrates SonarScanner usage to Fallout tooling.
Pipeline/Build.Benchmarks.cs Migrates benchmark target dependencies to Fallout tooling.
Pipeline/Build.ApiChecks.cs Migrates API checks target to Fallout tooling.
global.json Changes SDK roll-forward policy to latestPatch.
Directory.Packages.props Replaces NUKE package versions with Fallout versions and adds NuGet.Frameworks.
build.sh Updates temp directory path from .nuke/temp to .fallout/temp.
build.ps1 Updates temp directory path from .nuke/temp to .fallout/temp.
.gitignore Updates ignored temp directory from .nuke/temp to .fallout/temp.
.github/workflows/ci.yml Updates CI .NET SDK version spec for 10.x to 10.0.3xx.
.github/workflows/ci-analysis.yml Updates analysis workflow .NET SDK version spec for 10.x to 10.0.3xx.
.github/workflows/build.yml Updates build workflow .NET SDK version spec for 10.x to 10.0.3xx.
.github/dependabot.yml Renames dependency group/patterns from NUKE to Fallout.
.github/copilot-instructions.md Updates build-system references and Fallout temp path guidance.
.fallout/parameters.json Adds Fallout parameters file for solution selection.
.fallout/build.schema.json Updates schema target list and renames NukeBuild definition to FalloutBuild, adding BuildProjectFile.
Review details

Suppressed comments (1)

.fallout/build.schema.json:128

  • The BuildProjectFile schema description currently states a default of build/_build.csproj, but that file doesn’t exist in this repository. Consider removing the repository-incorrect default from the description so IDE hints/docs don’t point contributors to a non-existent path.
  • Files reviewed: 25/27 changed files
  • Comments generated: 1
  • Review effort level: Lite

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread .github/copilot-instructions.md
Copilot AI review requested due to automatic review settings September 2, 2026 19:41

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔵 Needs a closer look

Fallout configuration is incomplete/inconsistent for direct Fallout tool invocation (notably missing explicit build project path) and includes documentation/schema text issues that should be corrected as part of the migration.

Review details

Suppressed comments (2)

Previously missed (1) — in code that hasn't changed since the last review.

.fallout/build.schema.json:155

  • Minor typo/capitalization: "sonarcloud" should be "SonarCloud" (product name) in this schema description.

.github/copilot-instructions.md:129

  • The documentation here says global.json requires .NET SDK 8.0.407, but global.json in this PR pins the SDK to 10.0.300. Updating this line avoids confusing contributors about the required SDK.
### Key Configuration Files
- **global.json**: SDK version requirements (.NET 8.0.407)
- **Directory.Packages.props**: Centralized package management
- **aweXpect.slnx**: Main solution file
- **Pipeline/Build.cs**: Fallout build configuration
  • Files reviewed: 25/27 changed files
  • Comments generated: 0 new
  • Review effort level: Lite

@github-actions

github-actions Bot commented Sep 2, 2026

Copy link
Copy Markdown
Contributor

Test Results

    7 files  ±0      7 suites  ±0   51s ⏱️ +6s
1 330 tests  - 2  1 329 ✅  - 2  1 💤 ±0  0 ❌ ±0 
7 342 runs  ±0  7 341 ✅ ±0  1 💤 ±0  0 ❌ ±0 

Results for commit 38ac8dd. ± Comparison against base commit 2d32dc7.

This pull request removes 126 and adds 124 tests. Note that renamed tests count towards both.
aweXpect.Core.Tests.Core.Exceptions.FailExceptionTests ‑ InnerException_ShouldBeSet(message: "message0b2b1cef-771e-410e-b47d-24ed98d200ae")
aweXpect.Core.Tests.Core.Exceptions.FailExceptionTests ‑ InnerException_ShouldBeSet(message: "message1bddf16e-424f-46b4-b216-11f4d24a8922")
aweXpect.Core.Tests.Core.Exceptions.FailExceptionTests ‑ InnerException_ShouldBeSet(message: "message64b62333-b8df-4dd7-9c5d-077743bdc355")
aweXpect.Core.Tests.Core.Exceptions.FailExceptionTests ‑ InnerException_ShouldBeSet(message: "message6c1e6c44-f2e3-483a-92bf-3586bacb1767")
aweXpect.Core.Tests.Core.Exceptions.FailExceptionTests ‑ InnerException_ShouldBeSet(message: "message7f0e2abd-3e9c-4ad6-95ca-5414097d9c52")
aweXpect.Core.Tests.Core.Exceptions.FailExceptionTests ‑ InnerException_ShouldBeSet(message: "messaged94eebb5-1838-4c3c-8413-ddfb55a8937a")
aweXpect.Core.Tests.Core.Exceptions.FailExceptionTests ‑ Message_ShouldBeSet(message: "message0bbf2cae-cd30-45d2-b187-c0da7b0cf062")
aweXpect.Core.Tests.Core.Exceptions.FailExceptionTests ‑ Message_ShouldBeSet(message: "message0fd94f9d-7913-49a4-b302-d2d716965b4d")
aweXpect.Core.Tests.Core.Exceptions.FailExceptionTests ‑ Message_ShouldBeSet(message: "message999412cf-f746-47c2-9aa9-0faecdf78779")
aweXpect.Core.Tests.Core.Exceptions.FailExceptionTests ‑ Message_ShouldBeSet(message: "messageb86c0d66-381e-46ac-8199-f3feab2531c9")
…
aweXpect.Core.Tests.Core.Exceptions.FailExceptionTests ‑ InnerException_ShouldBeSet(message: "message0017fcc4-7e1f-40c2-9839-96747e0caf17")
aweXpect.Core.Tests.Core.Exceptions.FailExceptionTests ‑ InnerException_ShouldBeSet(message: "message07c75828-66b9-42f1-ba12-3d02d1271fc3")
aweXpect.Core.Tests.Core.Exceptions.FailExceptionTests ‑ InnerException_ShouldBeSet(message: "message4cfc5442-d334-4215-acfe-4805aacf535a")
aweXpect.Core.Tests.Core.Exceptions.FailExceptionTests ‑ InnerException_ShouldBeSet(message: "message69ac221d-524d-48f7-9725-a68c5712c9b0")
aweXpect.Core.Tests.Core.Exceptions.FailExceptionTests ‑ InnerException_ShouldBeSet(message: "messagea10b34fc-94f0-42fd-b039-2f1406a5cdda")
aweXpect.Core.Tests.Core.Exceptions.FailExceptionTests ‑ InnerException_ShouldBeSet(message: "messagef35a591f-d7b4-4020-a4b0-e71fc723a967")
aweXpect.Core.Tests.Core.Exceptions.FailExceptionTests ‑ Message_ShouldBeSet(message: "message06b31af5-d5d7-4b1a-951b-c2efc760d87f")
aweXpect.Core.Tests.Core.Exceptions.FailExceptionTests ‑ Message_ShouldBeSet(message: "message2f321fa5-30a8-415d-833b-97551aa54fa0")
aweXpect.Core.Tests.Core.Exceptions.FailExceptionTests ‑ Message_ShouldBeSet(message: "message5611b3f0-78c4-43d6-b808-3d4fab7cf2fa")
aweXpect.Core.Tests.Core.Exceptions.FailExceptionTests ‑ Message_ShouldBeSet(message: "messagec0276cb1-6f9d-488e-aff5-f1b2b7288dc5")
…

♻️ This comment has been updated with latest results.

Copilot AI review requested due to automatic review settings September 2, 2026 19:52
… pipeline

The Nuke build evaluates test projects in-process with the MSBuild API of the
installed SDK. Since the runners picked up SDK 10.0.400, its MSBuild expects
NuGet.Frameworks 7.9.0.0, while Nuke transitively loads 6.12.1, which fails
with "manifest definition does not match the assembly reference" in
GetTargetFrameworks() for projects with a singular TargetFramework.

- Reference NuGet.Frameworks 7.9.0 directly from the build project so the
  loaded assembly matches the SDK.
- Pin global.json to the 10.0.3xx band via rollForward=latestPatch and make
  the workflows install 10.0.3xx so the runner SDK can no longer drift.
NUKE 10.x is the last NUKE release; development continues in the Fallout
hard-fork. Migrated with `fallout-migrate` (Fallout 10.4.0) and finished the
parts the tool leaves alone: central package versions, .gitignore, the
dependabot group, and the NUKE mentions in the docs.

The `.gitignore` entry for the temp directory also lost its leading `./`,
which git never matched, so the new `.fallout/temp` folder is really ignored.

Fallout still evaluates projects in-process with the SDK's MSBuild, so the
NuGet.Frameworks and SDK band pins from the previous commit stay in place.
…tnet test`

Microsoft.Testing.Platform 2.3.3 refuses to run through the VSTest bridge on
the .NET 10 SDK ("Testing with VSTest target is no longer supported"), so the
`dotnet test --no-build` invocation in `XunitTestingPlatformFrameworks` exited
with code 1 before running any test.

Start the Microsoft.Testing.Platform executable directly with `dotnet run`,
as the TUnit target already does, keeping the xunit TRX reporter arguments.
The `TestingPlatformDotnetTestSupport` opt-in only served the `dotnet test`
path and is removed.
`dotnet fallout` looks for `build/_build.csproj` unless `BuildProjectFile` is
set in `.fallout/parameters.json`, so direct tool invocation failed with
"Could not locate build project". The bootstrap scripts were unaffected
because they hardcode the project path.

Also rename the GitHub client user agent left over from NUKE.
The block registered NUKE's commercial NuGet feed when NUKE_ENTERPRISE_TOKEN
was set. Fallout has no equivalent and its own bootstrap template carries no
such block, so it is dead code after the migration.
@vbreuss
vbreuss force-pushed the chore/migrate-to-fallout branch from f52b874 to 38ac8dd Compare September 2, 2026 19:57

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔵 Needs a closer look

The updated DotNetRun invocation for xUnit testing platform passes space-joined flag/value strings as single arguments, which is likely to break runner argument parsing in CI/local builds.

Review details

Suppressed comments (2)

Previously missed (2) — in code that hasn't changed since the last review.

.fallout/build.schema.json:67

  • The schema was migrated to FalloutBuild, but the NoLogo option description still references the "NUKE" logo, which is confusing for users of the Fallout-based build pipeline.
    Pipeline/Build.FrameworkTest.cs:133
  • DotNetRun is new here, but the SetProcessAdditionalArguments below uses space-joined flag/value strings (e.g. --results-directory {…}). In this build pipeline, additional args are treated as discrete arguments (see e.g. AddProcessAdditionalArguments("/overrideconfig", "tag-prefix=core/v")), so embedding spaces will pass a single argument containing a space and is likely to be mis-parsed by the test runner.
  • Files reviewed: 26/27 changed files
  • Comments generated: 0 new
  • Review effort level: Lite

Copilot AI review requested due to automatic review settings September 2, 2026 19:57

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔵 Needs a closer look

It changes core build/CI infrastructure (tooling, SDK banding, and test execution strategy) and should be validated by a human reviewer via CI outcomes and release-impact awareness.

Review details
  • Files reviewed: 26/27 changed files
  • Comments generated: 0 new
  • Review effort level: Lite

@sonarqubecloud

sonarqubecloud Bot commented Sep 2, 2026

Copy link
Copy Markdown

@vbreuss
vbreuss enabled auto-merge (squash) September 2, 2026 20:04
@vbreuss
vbreuss merged commit 5323273 into main Sep 2, 2026
14 checks passed
@vbreuss
vbreuss deleted the chore/migrate-to-fallout branch September 2, 2026 20:06
@github-actions

github-actions Bot commented Sep 4, 2026

Copy link
Copy Markdown
Contributor

This is addressed in release v2.36.0.

vbreuss added a commit to Testably/aweXpect.Json that referenced this pull request Sep 4, 2026
NUKE no longer supports the .NET SDK the build agents install, so CI fails
before it reaches any target. This ports the migration the core repository
made in Testably/aweXpect#1017.

- Rename `.nuke` to `.fallout` and point the Fallout global tool at
  `Pipeline/Build.csproj` through `BuildProjectFile` in `parameters.json`.
- Replace Nuke.Common/Nuke.Components 10.1.0 with Fallout.Common/
  Fallout.Components 10.4.0 and rewrite the pipeline namespaces:
  `Nuke.Common.ProjectModel` becomes `Fallout.Solutions`, everything else
  `Fallout.Common.*`.
- Pin NuGet.Frameworks to 7.9.0: the SDK's MSBuild expects
  `NuGet.Frameworks 7.9.0.0` while the build host otherwise resolves 6.x
  transitively, which breaks in-process project evaluation.
- Pin the SDK to the 10.0.3xx band in `global.json` and the workflows.
  `global.json`, the workflow `dotnet-version` lists and the
  NuGet.Frameworks pin have to be bumped together from now on.
- Drop the NUKE enterprise feed handling from the bootstrap scripts and
  ignore `.fallout/temp/`.

Fallout 10.4.0 is the latest listed release; the entire 11.0.x band is
unlisted on nuget.org.

Verified locally: the pipeline project compiles, `--help` lists every
target, and `UnitTests` and `Pack` succeed in Release.
vbreuss added a commit to Testably/aweXpect.Migration that referenced this pull request Sep 4, 2026
NUKE no longer supports the .NET SDK the build agents install, so CI fails
before it reaches any target. This ports the migration the core repository
made in Testably/aweXpect#1017.

- Rename `.nuke` to `.fallout` and point the Fallout global tool at
  `Pipeline/Build.csproj` through `BuildProjectFile` in `parameters.json`.
- Replace Nuke.Common/Nuke.Components 10.1.0 with Fallout.Common/
  Fallout.Components 10.4.0 and rewrite the pipeline namespaces:
  `Nuke.Common.ProjectModel` becomes `Fallout.Solutions`, everything else
  `Fallout.Common.*`.
- Pin NuGet.Frameworks to 7.9.0: the SDK's MSBuild expects
  `NuGet.Frameworks 7.9.0.0` while the build host otherwise resolves 6.x
  transitively, which breaks in-process project evaluation.
- Pin the SDK to the 10.0.3xx band in `global.json` and the workflows.
  `global.json`, the workflow `dotnet-version` lists and the
  NuGet.Frameworks pin have to be bumped together from now on.
- Drop the NUKE enterprise feed handling from the bootstrap scripts and
  ignore `.fallout/temp/`.

Fallout 10.4.0 is the latest listed release; the entire 11.0.x band is
unlisted on nuget.org.

Verified locally: the pipeline project compiles, `--help` lists every
target, and `UnitTests` and `Pack` succeed in Release.
vbreuss added a commit to Testably/aweXpect.Mockolate that referenced this pull request Sep 4, 2026
NUKE no longer supports the .NET SDK the build agents install, so CI fails
before it reaches any target. This ports the migration the core repository
made in Testably/aweXpect#1017.

- Rename `.nuke` to `.fallout` and point the Fallout global tool at
  `Pipeline/Build.csproj` through `BuildProjectFile` in `parameters.json`.
- Replace Nuke.Common/Nuke.Components 10.1.0 with Fallout.Common/
  Fallout.Components 10.4.0 and rewrite the pipeline namespaces:
  `Nuke.Common.ProjectModel` becomes `Fallout.Solutions`, everything else
  `Fallout.Common.*`.
- Pin NuGet.Frameworks to 7.9.0: the SDK's MSBuild expects
  `NuGet.Frameworks 7.9.0.0` while the build host otherwise resolves 6.x
  transitively, which breaks in-process project evaluation.
- Pin the SDK to the 10.0.3xx band in `global.json` and the workflows.
  `global.json`, the workflow `dotnet-version` lists and the
  NuGet.Frameworks pin have to be bumped together from now on.
- Drop the NUKE enterprise feed handling from the bootstrap scripts and
  ignore `.fallout/temp/`.

Fallout 10.4.0 is the latest listed release; the entire 11.0.x band is
unlisted on nuget.org.

Verified locally: the pipeline project compiles, `--help` lists every
target, and `UnitTests` and `Pack` succeed in Release.
vbreuss added a commit to Testably/aweXpect.Reflection that referenced this pull request Sep 4, 2026
NUKE no longer supports the .NET SDK the build agents install, so CI fails
before it reaches any target. This ports the migration the core repository
made in Testably/aweXpect#1017.

- Rename `.nuke` to `.fallout` and point the Fallout global tool at
  `Pipeline/Build.csproj` through `BuildProjectFile` in `parameters.json`.
- Replace Nuke.Common/Nuke.Components 10.1.0 with Fallout.Common/
  Fallout.Components 10.4.0 and rewrite the pipeline namespaces:
  `Nuke.Common.ProjectModel` becomes `Fallout.Solutions`, everything else
  `Fallout.Common.*`.
- Pin NuGet.Frameworks to 7.9.0: the SDK's MSBuild expects
  `NuGet.Frameworks 7.9.0.0` while the build host otherwise resolves 6.x
  transitively, which breaks in-process project evaluation.
- Pin the SDK to the 10.0.3xx band in `global.json` and the workflows.
  `global.json`, the workflow `dotnet-version` lists and the
  NuGet.Frameworks pin have to be bumped together from now on.
- Drop the NUKE enterprise feed handling from the bootstrap scripts and
  ignore `.fallout/temp/`.

Fallout 10.4.0 is the latest listed release; the entire 11.0.x band is
unlisted on nuget.org.

Verified locally: the pipeline project compiles, `--help` lists every
target, and `UnitTests` and `Pack` succeed in Release.
vbreuss added a commit to Testably/aweXpect.Testably that referenced this pull request Sep 4, 2026
NUKE no longer supports the .NET SDK the build agents install, so CI fails
before it reaches any target. This ports the migration the core repository
made in Testably/aweXpect#1017.

- Rename `.nuke` to `.fallout` and point the Fallout global tool at
  `Pipeline/Build.csproj` through `BuildProjectFile` in `parameters.json`.
- Replace Nuke.Common/Nuke.Components 10.1.0 with Fallout.Common/
  Fallout.Components 10.4.0 and rewrite the pipeline namespaces:
  `Nuke.Common.ProjectModel` becomes `Fallout.Solutions`, everything else
  `Fallout.Common.*`.
- Pin NuGet.Frameworks to 7.9.0: the SDK's MSBuild expects
  `NuGet.Frameworks 7.9.0.0` while the build host otherwise resolves 6.x
  transitively, which breaks in-process project evaluation.
- Pin the SDK to the 10.0.3xx band in `global.json` and the workflows.
  `global.json`, the workflow `dotnet-version` lists and the
  NuGet.Frameworks pin have to be bumped together from now on.
- Drop the NUKE enterprise feed handling from the bootstrap scripts and
  ignore `.fallout/temp/`.

Fallout 10.4.0 is the latest listed release; the entire 11.0.x band is
unlisted on nuget.org.

Verified locally: the pipeline project compiles, `--help` lists every
target, and `UnitTests` and `Pack` succeed in Release.
vbreuss added a commit to Testably/aweXpect.Web that referenced this pull request Sep 4, 2026
NUKE no longer supports the .NET SDK the build agents install, so CI fails
before it reaches any target. This ports the migration the core repository
made in Testably/aweXpect#1017.

- Rename `.nuke` to `.fallout` and point the Fallout global tool at
  `Pipeline/Build.csproj` through `BuildProjectFile` in `parameters.json`.
- Replace Nuke.Common/Nuke.Components 10.1.0 with Fallout.Common/
  Fallout.Components 10.4.0 and rewrite the pipeline namespaces:
  `Nuke.Common.ProjectModel` becomes `Fallout.Solutions`, everything else
  `Fallout.Common.*`.
- Pin NuGet.Frameworks to 7.9.0: the SDK's MSBuild expects
  `NuGet.Frameworks 7.9.0.0` while the build host otherwise resolves 6.x
  transitively, which breaks in-process project evaluation.
- Pin the SDK to the 10.0.3xx band in `global.json` and the workflows.
  `global.json`, the workflow `dotnet-version` lists and the
  NuGet.Frameworks pin have to be bumped together from now on.
- Drop the NUKE enterprise feed handling from the bootstrap scripts and
  ignore `.fallout/temp/`.

Fallout 10.4.0 is the latest listed release; the entire 11.0.x band is
unlisted on nuget.org.

Verified locally: the pipeline project compiles, `--help` lists every
target, and `UnitTests` and `Pack` succeed in Release.
vbreuss added a commit to Testably/aweXpect.Reflection that referenced this pull request Sep 4, 2026
NUKE no longer supports the .NET SDK the build agents install, so CI fails
before it reaches any target. This ports the migration the core repository
made in Testably/aweXpect#1017.

- Rename `.nuke` to `.fallout` and point the Fallout global tool at
  `Pipeline/Build.csproj` through `BuildProjectFile` in `parameters.json`.
- Replace Nuke.Common/Nuke.Components 10.1.0 with Fallout.Common/
  Fallout.Components 10.4.0 and rewrite the pipeline namespaces:
  `Nuke.Common.ProjectModel` becomes `Fallout.Solutions`, everything else
  `Fallout.Common.*`.
- Pin NuGet.Frameworks to 7.9.0: the SDK's MSBuild expects
  `NuGet.Frameworks 7.9.0.0` while the build host otherwise resolves 6.x
  transitively, which breaks in-process project evaluation.
- Pin the SDK to the 10.0.3xx band in `global.json` and the workflows.
  `global.json`, the workflow `dotnet-version` lists and the
  NuGet.Frameworks pin have to be bumped together from now on.
- Drop the NUKE enterprise feed handling from the bootstrap scripts and
  ignore `.fallout/temp/`.

Fallout 10.4.0 is the latest listed release; the entire 11.0.x band is
unlisted on nuget.org.

Verified locally: the pipeline project compiles, `--help` lists every
target, and `UnitTests` and `Pack` succeed in Release.
vbreuss added a commit to Testably/aweXpect.Mockolate that referenced this pull request Sep 4, 2026
NUKE no longer supports the .NET SDK the build agents install, so CI fails
before it reaches any target. This ports the migration the core repository
made in Testably/aweXpect#1017.

- Rename `.nuke` to `.fallout` and point the Fallout global tool at
  `Pipeline/Build.csproj` through `BuildProjectFile` in `parameters.json`.
- Replace Nuke.Common/Nuke.Components 10.1.0 with Fallout.Common/
  Fallout.Components 10.4.0 and rewrite the pipeline namespaces:
  `Nuke.Common.ProjectModel` becomes `Fallout.Solutions`, everything else
  `Fallout.Common.*`.
- Pin NuGet.Frameworks to 7.9.0: the SDK's MSBuild expects
  `NuGet.Frameworks 7.9.0.0` while the build host otherwise resolves 6.x
  transitively, which breaks in-process project evaluation.
- Pin the SDK to the 10.0.3xx band in `global.json` and the workflows.
  `global.json`, the workflow `dotnet-version` lists and the
  NuGet.Frameworks pin have to be bumped together from now on.
- Drop the NUKE enterprise feed handling from the bootstrap scripts and
  ignore `.fallout/temp/`.

Fallout 10.4.0 is the latest listed release; the entire 11.0.x band is
unlisted on nuget.org.

Verified locally: the pipeline project compiles, `--help` lists every
target, and `UnitTests` and `Pack` succeed in Release.
vbreuss added a commit to Testably/aweXpect.Testably that referenced this pull request Sep 4, 2026
NUKE no longer supports the .NET SDK the build agents install, so CI fails
before it reaches any target. This ports the migration the core repository
made in Testably/aweXpect#1017.

- Rename `.nuke` to `.fallout` and point the Fallout global tool at
  `Pipeline/Build.csproj` through `BuildProjectFile` in `parameters.json`.
- Replace Nuke.Common/Nuke.Components 10.1.0 with Fallout.Common/
  Fallout.Components 10.4.0 and rewrite the pipeline namespaces:
  `Nuke.Common.ProjectModel` becomes `Fallout.Solutions`, everything else
  `Fallout.Common.*`.
- Pin NuGet.Frameworks to 7.9.0: the SDK's MSBuild expects
  `NuGet.Frameworks 7.9.0.0` while the build host otherwise resolves 6.x
  transitively, which breaks in-process project evaluation.
- Pin the SDK to the 10.0.3xx band in `global.json` and the workflows.
  `global.json`, the workflow `dotnet-version` lists and the
  NuGet.Frameworks pin have to be bumped together from now on.
- Drop the NUKE enterprise feed handling from the bootstrap scripts and
  ignore `.fallout/temp/`.

Fallout 10.4.0 is the latest listed release; the entire 11.0.x band is
unlisted on nuget.org.

Verified locally: the pipeline project compiles, `--help` lists every
target, and `UnitTests` and `Pack` succeed in Release.
vbreuss added a commit to Testably/aweXpect.Json that referenced this pull request Sep 4, 2026
NUKE no longer supports the .NET SDK the build agents install, so CI fails
before it reaches any target. This ports the migration the core repository
made in Testably/aweXpect#1017.

- Rename `.nuke` to `.fallout` and point the Fallout global tool at
  `Pipeline/Build.csproj` through `BuildProjectFile` in `parameters.json`.
- Replace Nuke.Common/Nuke.Components 10.1.0 with Fallout.Common/
  Fallout.Components 10.4.0 and rewrite the pipeline namespaces:
  `Nuke.Common.ProjectModel` becomes `Fallout.Solutions`, everything else
  `Fallout.Common.*`.
- Pin NuGet.Frameworks to 7.9.0: the SDK's MSBuild expects
  `NuGet.Frameworks 7.9.0.0` while the build host otherwise resolves 6.x
  transitively, which breaks in-process project evaluation.
- Pin the SDK to the 10.0.3xx band in `global.json` and the workflows.
  `global.json`, the workflow `dotnet-version` lists and the
  NuGet.Frameworks pin have to be bumped together from now on.
- Drop the NUKE enterprise feed handling from the bootstrap scripts and
  ignore `.fallout/temp/`.

Fallout 10.4.0 is the latest listed release; the entire 11.0.x band is
unlisted on nuget.org.

Verified locally: the pipeline project compiles, `--help` lists every
target, and `UnitTests` and `Pack` succeed in Release.
vbreuss added a commit to Testably/aweXpect.Web that referenced this pull request Sep 5, 2026
NUKE no longer supports the .NET SDK the build agents install, so CI fails before it reaches any target. This ports the migration the core repository made in Testably/aweXpect#1017.

- Rename `.nuke` to `.fallout` and point the Fallout global tool at `Pipeline/Build.csproj` through `BuildProjectFile` in `parameters.json`.
- Replace Nuke.Common/Nuke.Components 10.1.0 with Fallout.Common/ Fallout.Components 10.4.0 and rewrite the pipeline namespaces: `Nuke.Common.ProjectModel` becomes `Fallout.Solutions`, everything else `Fallout.Common.*`.
- Pin NuGet.Frameworks to 7.9.0: the SDK's MSBuild expects `NuGet.Frameworks 7.9.0.0` while the build host otherwise resolves 6.x transitively, which breaks in-process project evaluation.
- Pin the SDK to the 10.0.3xx band in `global.json` and the workflows. `global.json`, the workflow `dotnet-version` lists and the NuGet.Frameworks pin have to be bumped together from now on.
- Drop the NUKE enterprise feed handling from the bootstrap scripts and ignore `.fallout/temp/`.

Fallout 10.4.0 is the latest listed release; the entire 11.0.x band is unlisted on nuget.org.

Verified locally: the pipeline project compiles, `--help` lists every target, and `UnitTests` and `Pack` succeed in Release.
vbreuss added a commit to Testably/aweXpect.Migration that referenced this pull request Sep 5, 2026
NUKE no longer supports the .NET SDK the build agents install, so CI fails
before it reaches any target. This ports the migration the core repository
made in Testably/aweXpect#1017.

- Rename `.nuke` to `.fallout` and point the Fallout global tool at
  `Pipeline/Build.csproj` through `BuildProjectFile` in `parameters.json`.
- Replace Nuke.Common/Nuke.Components 10.1.0 with Fallout.Common/
  Fallout.Components 10.4.0 and rewrite the pipeline namespaces:
  `Nuke.Common.ProjectModel` becomes `Fallout.Solutions`, everything else
  `Fallout.Common.*`.
- Pin NuGet.Frameworks to 7.9.0: the SDK's MSBuild expects
  `NuGet.Frameworks 7.9.0.0` while the build host otherwise resolves 6.x
  transitively, which breaks in-process project evaluation.
- Pin the SDK to the 10.0.3xx band in `global.json` and the workflows.
  `global.json`, the workflow `dotnet-version` lists and the
  NuGet.Frameworks pin have to be bumped together from now on.
- Drop the NUKE enterprise feed handling from the bootstrap scripts and
  ignore `.fallout/temp/`.

Fallout 10.4.0 is the latest listed release; the entire 11.0.x band is
unlisted on nuget.org.

Verified locally: the pipeline project compiles, `--help` lists every
target, and `UnitTests` and `Pack` succeed in Release.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file state: released The issue is released

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants