Skip to content

build: migrate the build pipeline from Nuke to Fallout - #890

Merged
vbreuss merged 1 commit into
mainfrom
build/migrate-to-fallout
Oct 18, 2026
Merged

vbreuss merged 1 commit into
mainfrom
build/migrate-to-fallout

Conversation

@vbreuss

@vbreuss vbreuss commented Oct 18, 2026

Copy link
Copy Markdown
Member

The other Testably repositories build with Fallout, so Mockolate is the odd one out in its build scripts, pipeline code, Dependabot groups and tooling folder. Moving it over lets the pipelines be shared and aligned across the repositories. The SDK pin follows them too and only rolls forward to new patches.

@vbreuss vbreuss self-assigned this Oct 18, 2026
Copilot AI balanced review requested due to automatic review settings October 18, 2026 08:34

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.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@vbreuss
vbreuss added this pull request to stack #893 October 18, 2026 08:36
@github-actions

Copy link
Copy Markdown

Test Results

    24 files      24 suites   10m 38s ⏱️
 4 529 tests  4 527 ✅ 2 💤 0 ❌
28 684 runs  28 680 ✅ 4 💤 0 ❌

Results for commit 28ce306.

@github-actions

github-actions Bot commented Oct 18, 2026 •

Copy link
Copy Markdown

🚀 Benchmark Results

Details

BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.303
[Host] : .NET 10.0.13 (10.0.13, 10.0.1326.50504), X64 RyuJIT x86-64-v3

Job=InProcess Toolchain=InProcessEmitToolchain IterationCount=15
LaunchCount=1 WarmupCount=10

Method N Mean Error StdDev Ratio Allocated Alloc Ratio
baseline* 1 291.2 ns 8.78 ns 8.21 ns 0.78 1.93 KB 1.00
Mockolate 1 373.2 ns 9.79 ns 9.16 ns 1.00 1.93 KB 1.00
Imposter 1 578.5 ns 22.16 ns 20.73 ns 1.55 3.96 KB 2.05
TUnitMocks 1 491.3 ns 9.96 ns 9.32 ns 1.32 2.02 KB 1.05
Moq 1 186,125.0 ns 804.38 ns 713.06 ns 498.98 14.58 KB 7.55
NSubstitute 1 6,313.5 ns 49.38 ns 46.19 ns 16.93 9.12 KB 4.72
FakeItEasy 1 6,326.9 ns 57.80 ns 54.06 ns 16.96 8.05 KB 4.17
baseline* 10 535.8 ns 5.49 ns 5.14 ns 0.82 2.14 KB 1.00
Mockolate 10 653.9 ns 6.41 ns 5.36 ns 1.00 2.14 KB 1.00
Imposter 10 913.4 ns 19.64 ns 18.37 ns 1.40 4.8 KB 2.24
TUnitMocks 10 1,394.4 ns 12.15 ns 10.77 ns 2.13 3.73 KB 1.74
Moq 10 191,728.3 ns 940.98 ns 880.19 ns 293.24 18.48 KB 8.63
NSubstitute 10 8,957.5 ns 55.05 ns 51.49 ns 13.70 12.07 KB 5.64
FakeItEasy 10 9,553.7 ns 116.60 ns 103.36 ns 14.61 15.42 KB 7.20
Details

BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 3.08GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.303
[Host] : .NET 10.0.13 (10.0.13, 10.0.1326.50504), X64 RyuJIT x86-64-v3

Job=InProcess Toolchain=InProcessEmitToolchain IterationCount=15
LaunchCount=1 WarmupCount=10

Event Mean Error StdDev Ratio Allocated Alloc Ratio
baseline* 236.4 ns 2.00 ns 1.87 ns 0.71 1.7 KB 1.00
Mockolate 332.7 ns 17.32 ns 16.21 ns 1.00 1.7 KB 1.00
Imposter 1,071.7 ns 40.83 ns 38.19 ns 3.23 7.18 KB 4.22
TUnitMocks 209.8 ns 5.82 ns 5.44 ns 0.63 1.34 KB 0.79
Moq 16,244.9 ns 89.43 ns 79.28 ns 48.93 12.67 KB 7.44
NSubstitute 5,820.4 ns 52.54 ns 49.15 ns 17.53 9.05 KB 5.31
FakeItEasy 219,980.8 ns 1,317.87 ns 1,232.73 ns 662.61 15.26 KB 8.96
Details

BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 2.60GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.303
[Host] : .NET 10.0.13 (10.0.13, 10.0.1326.50504), X64 RyuJIT x86-64-v4

Job=InProcess Toolchain=InProcessEmitToolchain IterationCount=15
LaunchCount=1 WarmupCount=10

Callback Mean Error StdDev Ratio Allocated Alloc Ratio
baseline* 362.1 ns 8.31 ns 7.77 ns 1.43 1.57 KB 1.00
Mockolate 253.4 ns 2.73 ns 2.56 ns 1.00 1.57 KB 1.00
Imposter 343.3 ns 6.81 ns 6.04 ns 1.35 2.37 KB 1.51
TUnitMocks 472.0 ns 8.05 ns 6.72 ns 1.86 2 KB 1.27
Moq 55,785.3 ns 287.53 ns 240.10 ns 220.18 8.88 KB 5.66
NSubstitute 3,572.5 ns 79.70 ns 66.56 ns 14.10 7.71 KB 4.91
FakeItEasy 3,644.6 ns 92.00 ns 86.06 ns 14.38 6.81 KB 4.33
Details

BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Intel Xeon 6973P-C 3.68GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.303
[Host] : .NET 10.0.13 (10.0.13, 10.0.1326.50504), X64 RyuJIT x86-64-v4

Job=InProcess Toolchain=InProcessEmitToolchain IterationCount=15
LaunchCount=1 WarmupCount=10

Indexer N Mean Error StdDev Ratio Allocated Alloc Ratio
baseline* 1 1,058.5 ns 26.48 ns 23.47 ns 1.41 3.77 KB 1.00
Mockolate 1 751.4 ns 50.37 ns 47.12 ns 1.00 3.77 KB 1.00
Imposter 1 649.0 ns 26.61 ns 24.89 ns 0.87 4.99 KB 1.33
Moq 1 80,093.6 ns 653.07 ns 610.88 ns 106.96 20.6 KB 5.47
NSubstitute 1 7,071.3 ns 122.46 ns 114.55 ns 9.44 12.78 KB 3.39
FakeItEasy 1 6,048.8 ns 269.24 ns 224.83 ns 8.08 13.62 KB 3.62
baseline* 10 2,596.8 ns 17.14 ns 16.03 ns 1.27 4.82 KB 1.00
Mockolate 10 2,052.2 ns 136.79 ns 127.95 ns 1.00 4.82 KB 1.00
Imposter 10 1,062.6 ns 70.42 ns 65.87 ns 0.52 6.47 KB 1.34
Moq 10 90,353.2 ns 1,159.29 ns 968.06 ns 44.19 30.11 KB 6.25
NSubstitute 10 16,762.6 ns 175.47 ns 164.13 ns 8.20 25.58 KB 5.31
FakeItEasy 10 15,110.6 ns 824.87 ns 771.58 ns 7.39 32.98 KB 6.84
Details

BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 9V74 3.69GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.303
[Host] : .NET 10.0.13 (10.0.13, 10.0.1326.50504), X64 RyuJIT x86-64-v4

Job=InProcess Toolchain=InProcessEmitToolchain IterationCount=15
LaunchCount=1 WarmupCount=10

CreateMock Mean Error StdDev Ratio Allocated Alloc Ratio
baseline* 9.887 ns 0.1868 ns 0.1656 ns 0.69 160 B 1.00
Mockolate 14.35 ns 0.229 ns 0.214 ns 1.00 160 B 1.00
Imposter 239.74 ns 6.721 ns 6.286 ns 16.71 2240 B 14.00
TUnitMocks 29.96 ns 0.355 ns 0.332 ns 2.09 200 B 1.25
Moq 1,081.84 ns 9.701 ns 9.075 ns 75.42 2096 B 13.10
NSubstitute 1,599.71 ns 22.157 ns 20.726 ns 111.53 5048 B 31.55
FakeItEasy 1,785.71 ns 37.454 ns 35.034 ns 124.50 2763 B 17.27
Details

BenchmarkDotNet v0.15.8, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
AMD EPYC 7763 2.66GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.303
[Host] : .NET 10.0.13 (10.0.13, 10.0.1326.50504), X64 RyuJIT x86-64-v3

Job=InProcess Toolchain=InProcessEmitToolchain IterationCount=15
LaunchCount=1 WarmupCount=10

Property N Mean Error StdDev Ratio Allocated Alloc Ratio
baseline* 1 531.7 ns 21.36 ns 19.98 ns 1.00 2.41 KB 1.00
Mockolate 1 530.6 ns 14.49 ns 12.84 ns 1.00 2.41 KB 1.00
Imposter 1 404.9 ns 2.72 ns 2.41 ns 0.76 2.98 KB 1.23
TUnitMocks 1 457.9 ns 3.18 ns 2.82 ns 0.86 1.64 KB 0.68
Moq 1 11,888.7 ns 79.82 ns 74.67 ns 22.42 10.39 KB 4.30
NSubstitute 1 7,789.6 ns 22.65 ns 20.08 ns 14.69 11.45 KB 4.74
FakeItEasy 1 8,261.6 ns 43.25 ns 38.34 ns 15.58 11.24 KB 4.66
baseline* 10 1,008.5 ns 5.49 ns 4.86 ns 0.95 2.91 KB 1.00
Mockolate 10 1,058.2 ns 6.46 ns 5.39 ns 1.00 2.91 KB 1.00
Imposter 10 634.2 ns 3.09 ns 2.74 ns 0.60 3.26 KB 1.12
TUnitMocks 10 1,561.0 ns 3.66 ns 3.42 ns 1.48 3.94 KB 1.35
Moq 10 18,603.7 ns 100.46 ns 83.89 ns 17.58 18.28 KB 6.29
NSubstitute 10 17,992.6 ns 67.95 ns 63.56 ns 17.00 21.08 KB 7.25
FakeItEasy 10 19,576.9 ns 85.11 ns 71.07 ns 18.50 30.81 KB 10.60

baseline* rows show the corresponding Mockolate benchmark from the most recent successful main branch build with results, for regression comparison.

The other Testably repositories build with Fallout, so Mockolate is the odd one out in its build scripts, pipeline code, Dependabot groups and tooling folder. Moving it over lets the pipelines be shared and aligned across the repositories. The SDK pin follows them too and only rolls forward to new patches.
@vbreuss
vbreuss force-pushed the build/migrate-to-fallout branch from 28ce306 to 38d7486 Compare October 18, 2026 11:40
Copilot AI balanced review requested due to automatic review settings October 18, 2026 11:40

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.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@vbreuss
vbreuss merged commit 13c40ce into main Oct 18, 2026
14 checks passed
@vbreuss
vbreuss deleted the build/migrate-to-fallout branch October 18, 2026 11:40
@sonarqubecloud

Copy link
Copy Markdown

github-actions Bot added a commit that referenced this pull request Oct 18, 2026
github-actions Bot added a commit that referenced this pull request Oct 18, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants