Skip to content

ci: add windows-11-arm runner - #2591

Draft
mxinden wants to merge 45 commits into
mozilla:mainfrom
mxinden:ci-windows-arm
Draft

mxinden wants to merge 45 commits into
mozilla:mainfrom
mxinden:ci-windows-arm

Conversation

@mxinden

@mxinden mxinden commented Apr 17, 2025 •

Copy link
Copy Markdown
Member

@larseggert

Copy link
Copy Markdown
Collaborator

rustup not being there may be due to https://github.com/actions/partner-runner-images/issues/77

Maybe we just install it?

@github-actions

github-actions Bot commented Apr 17, 2025 •

Copy link
Copy Markdown
Contributor

Benchmark results

Performance differences relative to 847a598.

1-conn/1-100mb-resp/mtu-1504 (aka. Download)/client: No change in performance detected.
       time:   [693.78 ms 697.61 ms 701.42 ms]
       thrpt:  [142.57 MiB/s 143.35 MiB/s 144.14 MiB/s]
change:
       time:   [-1.5580% -0.7959% +0.0525%] (p = 0.05 > 0.05)
       thrpt:  [-0.0524% +0.8022% +1.5826%]
1-conn/10_000-parallel-1b-resp/mtu-1504 (aka. RPS)/client: No change in performance detected.
       time:   [352.25 ms 353.62 ms 354.98 ms]
       thrpt:  [28.171 Kelem/s 28.279 Kelem/s 28.389 Kelem/s]
change:
       time:   [-0.3659% +0.2205% +0.7982%] (p = 0.47 > 0.05)
       thrpt:  [-0.7918% -0.2200% +0.3673%]
1-conn/1-1b-resp/mtu-1504 (aka. HPS)/client: No change in performance detected.
       time:   [25.488 ms 25.633 ms 25.785 ms]
       thrpt:  [38.782  elem/s 39.012  elem/s 39.234  elem/s]
change:
       time:   [-1.3696% -0.5205% +0.2719%] (p = 0.22 > 0.05)
       thrpt:  [-0.2712% +0.5232% +1.3886%]

Found 4 outliers among 100 measurements (4.00%)
4 (4.00%) high mild

1-conn/1-100mb-req/mtu-1504 (aka. Upload)/client: 💚 Performance has improved.
       time:   [1.7915 s 1.8133 s 1.8361 s]
       thrpt:  [54.463 MiB/s 55.147 MiB/s 55.820 MiB/s]
change:
       time:   [-8.3956% -6.6210% -4.8312%] (p = 0.00 < 0.05)
       thrpt:  [+5.0765% +7.0904% +9.1650%]

Found 1 outliers among 100 measurements (1.00%)
1 (1.00%) high mild

decode 4096 bytes, mask ff: No change in performance detected.
       time:   [12.070 µs 12.100 µs 12.138 µs]
       change: [-0.4081% -0.1094% +0.1954%] (p = 0.49 > 0.05)

Found 12 outliers among 100 measurements (12.00%)
3 (3.00%) low severe
2 (2.00%) low mild
1 (1.00%) high mild
6 (6.00%) high severe

decode 1048576 bytes, mask ff: No change in performance detected.
       time:   [3.1272 ms 3.1348 ms 3.1442 ms]
       change: [-0.7339% -0.2697% +0.1582%] (p = 0.26 > 0.05)

Found 6 outliers among 100 measurements (6.00%)
6 (6.00%) high severe

decode 4096 bytes, mask 7f: No change in performance detected.
       time:   [20.168 µs 20.224 µs 20.286 µs]
       change: [-0.3661% +0.0032% +0.4244%] (p = 0.98 > 0.05)

Found 21 outliers among 100 measurements (21.00%)
1 (1.00%) low severe
4 (4.00%) low mild
2 (2.00%) high mild
14 (14.00%) high severe

decode 1048576 bytes, mask 7f: No change in performance detected.
       time:   [5.2471 ms 5.2602 ms 5.2751 ms]
       change: [-0.3443% -0.0005% +0.3593%] (p = 1.00 > 0.05)

Found 14 outliers among 100 measurements (14.00%)
1 (1.00%) low mild
13 (13.00%) high severe

decode 4096 bytes, mask 3f: No change in performance detected.
       time:   [7.0074 µs 7.0185 µs 7.0385 µs]
       change: [-0.8880% -0.1196% +0.7775%] (p = 0.80 > 0.05)

Found 15 outliers among 100 measurements (15.00%)
5 (5.00%) low severe
2 (2.00%) low mild
1 (1.00%) high mild
7 (7.00%) high severe

decode 1048576 bytes, mask 3f: No change in performance detected.
       time:   [1.7922 ms 1.7980 ms 1.8051 ms]
       change: [-0.6316% -0.0830% +0.4601%] (p = 0.75 > 0.05)

Found 7 outliers among 100 measurements (7.00%)
1 (1.00%) high mild
6 (6.00%) high severe

1000 streams of 1 bytes/multistream: No change in performance detected.
       time:   [25.576 ms 25.602 ms 25.628 ms]
       change: [-0.0568% +0.0869% +0.2311%] (p = 0.23 > 0.05)

Found 57 outliers among 500 measurements (11.40%)
53 (10.60%) high mild
4 (0.80%) high severe

1000 streams of 1000 bytes/multistream: Change within noise threshold.
       time:   [143.92 ms 143.96 ms 143.99 ms]
       change: [+0.0182% +0.0530% +0.0891%] (p = 0.00 < 0.05)

Found 2 outliers among 500 measurements (0.40%)
2 (0.40%) high mild

coalesce_acked_from_zero 1+1 entries: No change in performance detected.
       time:   [94.809 ns 95.147 ns 95.482 ns]
       change: [-0.4014% +0.0250% +0.4502%] (p = 0.91 > 0.05)

Found 13 outliers among 100 measurements (13.00%)
13 (13.00%) high mild

coalesce_acked_from_zero 3+1 entries: No change in performance detected.
       time:   [112.69 ns 113.02 ns 113.37 ns]
       change: [-0.6434% -0.1758% +0.2601%] (p = 0.46 > 0.05)

Found 16 outliers among 100 measurements (16.00%)
1 (1.00%) low severe
2 (2.00%) low mild
13 (13.00%) high severe

coalesce_acked_from_zero 10+1 entries: No change in performance detected.
       time:   [111.94 ns 112.29 ns 112.74 ns]
       change: [-0.5043% +0.2238% +0.9630%] (p = 0.59 > 0.05)

Found 15 outliers among 100 measurements (15.00%)
4 (4.00%) low severe
4 (4.00%) low mild
7 (7.00%) high severe

coalesce_acked_from_zero 1000+1 entries: No change in performance detected.
       time:   [92.961 ns 93.453 ns 93.987 ns]
       change: [-0.5859% +0.4267% +1.4132%] (p = 0.41 > 0.05)

Found 6 outliers among 100 measurements (6.00%)
5 (5.00%) high mild
1 (1.00%) high severe

RxStreamOrderer::inbound_frame(): Change within noise threshold.
       time:   [117.33 ms 117.38 ms 117.44 ms]
       change: [+0.3764% +0.4410% +0.5103%] (p = 0.00 < 0.05)

Found 15 outliers among 100 measurements (15.00%)
1 (1.00%) low severe
5 (5.00%) low mild
9 (9.00%) high mild

SentPackets::take_ranges: No change in performance detected.
       time:   [8.2627 µs 8.5307 µs 8.7854 µs]
       change: [-3.2255% -0.6526% +2.0184%] (p = 0.63 > 0.05)

Found 23 outliers among 100 measurements (23.00%)
1 (1.00%) low severe
18 (18.00%) low mild
4 (4.00%) high mild

transfer/pacing-false/varying-seeds: Change within noise threshold.
       time:   [35.824 ms 35.885 ms 35.945 ms]
       change: [+0.7514% +1.0002% +1.2374%] (p = 0.00 < 0.05)
transfer/pacing-true/varying-seeds: Change within noise threshold.
       time:   [36.695 ms 36.799 ms 36.903 ms]
       change: [+0.1973% +0.6341% +1.0569%] (p = 0.00 < 0.05)
transfer/pacing-false/same-seed: Change within noise threshold.
       time:   [35.490 ms 35.542 ms 35.597 ms]
       change: [+0.5478% +0.7464% +0.9507%] (p = 0.00 < 0.05)

Found 4 outliers among 100 measurements (4.00%)
4 (4.00%) high mild

transfer/pacing-true/same-seed: Change within noise threshold.
       time:   [37.377 ms 37.444 ms 37.512 ms]
       change: [+0.2418% +0.4769% +0.7140%] (p = 0.00 < 0.05)

Found 1 outliers among 100 measurements (1.00%)
1 (1.00%) low mild

Client/server transfer results

Performance differences relative to 847a598.

Transfer of 33554432 bytes over loopback, 30 runs. All unit-less numbers are in milliseconds.

Client Server CC Pacing Mean ± σ Min Max MiB/s ± σ Δ main Δ main
neqo neqo reno on 329.9 ± 46.9 287.4 514.3 97.0 ± 0.7 -3.4 -1.0%
neqo neqo reno 345.5 ± 111.8 287.9 848.4 92.6 ± 0.3 -10.0 -2.8%
neqo neqo cubic on 330.1 ± 48.8 299.6 508.4 96.9 ± 0.7 8.0 2.5%
neqo neqo cubic 333.7 ± 51.3 294.7 498.3 95.9 ± 0.6 3.2 1.0%
google neqo reno on 769.7 ± 88.4 571.2 918.9 41.6 ± 0.4 8.0 1.0%
google neqo reno 771.5 ± 90.3 547.4 946.8 41.5 ± 0.4 11.7 1.5%
google neqo cubic on 775.1 ± 109.7 575.2 1185.1 41.3 ± 0.3 19.7 2.6%
google neqo cubic 757.9 ± 83.4 556.9 886.6 42.2 ± 0.4 -4.3 -0.6%
google google 575.5 ± 41.0 551.8 781.3 55.6 ± 0.8 2.7 0.5%
neqo msquic reno on 273.6 ± 42.3 243.9 430.1 117.0 ± 0.8 4.9 1.8%
neqo msquic reno 263.9 ± 18.6 243.4 312.4 121.2 ± 1.7 -9.9 -3.6%
neqo msquic cubic on 270.9 ± 36.5 245.6 434.1 118.1 ± 0.9 7.5 2.9%
neqo msquic cubic 267.9 ± 38.0 240.8 448.0 119.5 ± 0.8 0.5 0.2%
msquic msquic 196.8 ± 39.3 159.3 339.8 162.6 ± 0.8 0.1 0.1%

⬇️ Download logs

Comment thread .github/actions/rust/action.yml Fixed
@larseggert

Copy link
Copy Markdown
Collaborator

This is now stuck on actions/runner-images#14085

@larseggert larseggert added the blocked Blocked on something else label Apr 24, 2025
@codecov

codecov Bot commented Jul 19, 2025 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 94.25%. Comparing base (b29754d) to head (5428a28).

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #2591      +/-   ##
==========================================
- Coverage   94.35%   94.25%   -0.11%     
==========================================
  Files         127      131       +4     
  Lines       38806    39136     +330     
  Branches    38806    39136     +330     
==========================================
+ Hits        36614    36886     +272     
- Misses       1357     1405      +48     
- Partials      835      845      +10     
Flag Coverage Δ
freebsd 93.24% <ø> (-0.11%) ⬇️
linux 94.31% <ø> (ø)
macos 94.25% <ø> (+0.01%) ⬆️
windows 94.29% <ø> (-0.02%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

Components Coverage Δ
neqo-common 98.50% <ø> (ø)
neqo-crypto 86.90% <ø> (ø)
neqo-http3 93.95% <ø> (ø)
neqo-qpack 95.03% <ø> (ø)
neqo-transport 95.27% <ø> (ø)
neqo-udp 83.40% <ø> (ø)
mtu 86.61% <ø> (ø)

@larseggert

Copy link
Copy Markdown
Collaborator

There is a new version of the Win11 ARM image, but it's still shipping with the amd64 llvm toolchain.

@larseggert

Copy link
Copy Markdown
Collaborator

Now blocked because NSPR/NSS don't build on Windows/ARM. Sigh.

@github-actions

github-actions Bot commented Sep 19, 2025 •

Copy link
Copy Markdown
Contributor

🐰 Bencher Report

Branchci-windows-arm
TestbedOn-prem

🚨 1 Alert

IterationBenchmarkMeasure
Units
ViewBenchmark Result
(Result Δ%)
Upper Boundary
(Limit %)
3neqo-msquic-cubicLatency
milliseconds (ms)
📈 plot
🚷 threshold
🚨 alert (🔔)
159.62 ms
(+1.56%)Baseline: 157.16 ms
159.08 ms
(100.34%)

Click to view all benchmark results
BenchmarkLatencyBenchmark Result
milliseconds (ms)
(Result Δ%)
Upper Boundary
milliseconds (ms)
(Limit %)
google-neqo-cubic📈 view plot
🚷 view threshold
274.28 ms
(-1.85%)Baseline: 279.44 ms
286.11 ms
(95.87%)
BenchmarkLatencyBenchmark Result
milliseconds (ms)
(Result Δ%)
Upper Boundary
milliseconds (ms)
(Limit %)
msquic-neqo-cubic📈 view plot
🚷 view threshold
216.72 ms
(+4.04%)Baseline: 208.30 ms
240.34 ms
(90.17%)
BenchmarkLatencyBenchmark Result
milliseconds (ms)
(Result Δ%)
Upper Boundary
milliseconds (ms)
(Limit %)
neqo-google-cubic📈 view plot
🚷 view threshold
743.71 ms
(-3.06%)Baseline: 767.22 ms
789.20 ms
(94.24%)
BenchmarkLatencyBenchmark Result
milliseconds (ms)
(Result Δ%)
Upper Boundary
milliseconds (ms)
(Limit %)
neqo-msquic-cubic📈 view plot
🚷 view threshold
🚨 view alert (🔔)
159.62 ms
(+1.56%)Baseline: 157.16 ms
159.08 ms
(100.34%)

BenchmarkLatencyBenchmark Result
milliseconds (ms)
(Result Δ%)
Upper Boundary
milliseconds (ms)
(Limit %)
neqo-neqo-cubic-nopacing📈 view plot
🚷 view threshold
96.69 ms
(+0.34%)Baseline: 96.36 ms
98.23 ms
(98.43%)
BenchmarkLatencyBenchmark Result
milliseconds (ms)
(Result Δ%)
Upper Boundary
milliseconds (ms)
(Limit %)
neqo-neqo-cubic📈 view plot
🚷 view threshold
98.32 ms
(+0.84%)Baseline: 97.50 ms
99.81 ms
(98.51%)
BenchmarkLatencyBenchmark Result
milliseconds (ms)
(Result Δ%)
Upper Boundary
milliseconds (ms)
(Limit %)
neqo-neqo-reno-nopacing📈 view plot
🚷 view threshold
97.36 ms
(+0.68%)Baseline: 96.71 ms
99.24 ms
(98.11%)
BenchmarkLatencyBenchmark Result
milliseconds (ms)
(Result Δ%)
Upper Boundary
milliseconds (ms)
(Limit %)
neqo-neqo-reno📈 view plot
🚷 view threshold
96.15 ms
(-1.38%)Baseline: 97.49 ms
99.65 ms
(96.48%)
BenchmarkLatencyBenchmark Result
milliseconds (ms)
(Result Δ%)
Upper Boundary
milliseconds (ms)
(Limit %)
neqo-quiche-cubic📈 view plot
🚷 view threshold
193.99 ms
(+0.81%)Baseline: 192.43 ms
195.22 ms
(99.37%)
BenchmarkLatencyBenchmark Result
milliseconds (ms)
(Result Δ%)
Upper Boundary
milliseconds (ms)
(Limit %)
neqo-s2n-cubic📈 view plot
🚷 view threshold
222.45 ms
(+0.80%)Baseline: 220.67 ms
224.26 ms
(99.19%)
BenchmarkLatencyBenchmark Result
milliseconds (ms)
(Result Δ%)
Upper Boundary
milliseconds (ms)
(Limit %)
quiche-neqo-cubic📈 view plot
🚷 view threshold
153.94 ms
(+0.10%)Baseline: 153.78 ms
156.51 ms
(98.36%)
BenchmarkLatencyBenchmark Result
milliseconds (ms)
(Result Δ%)
Upper Boundary
milliseconds (ms)
(Limit %)
s2n-neqo-cubic📈 view plot
🚷 view threshold
173.14 ms
(-0.40%)Baseline: 173.84 ms
177.40 ms
(97.60%)
🐰 View full continuous benchmarking report in Bencher

@github-actions

github-actions Bot commented Sep 19, 2025 •

Copy link
Copy Markdown
Contributor

🐰 Bencher Report

Branchci-windows-arm
TestbedOn-prem

🚨 2 Alerts

BenchmarkMeasure
Units
ViewBenchmark Result
(Result Δ%)
Upper Boundary
(Limit %)
decode 1048576 bytes, mask 3fLatency
milliseconds (ms)
📈 plot
🚷 threshold
🚨 alert (🔔)
3.19 ms
(+82.82%)Baseline: 1.75 ms
2.44 ms
(130.78%)

decode 4096 bytes, mask 3fLatency
microseconds (µs)
📈 plot
🚷 threshold
🚨 alert (🔔)
12.52 µs
(+72.89%)Baseline: 7.24 µs
10.83 µs
(115.69%)

Click to view all benchmark results
BenchmarkLatencyBenchmark Result
nanoseconds (ns)
(Result Δ%)
Upper Boundary
nanoseconds (ns)
(Limit %)
1-conn/1-100mb-req/mtu-1504 (aka. Upload)/client📈 view plot
🚷 view threshold
206,750,000.00 ns
(-0.50%)Baseline: 207,784,721.19 ns
216,955,939.90 ns
(95.30%)
1-conn/1-100mb-resp/mtu-1504 (aka. Download)/client📈 view plot
🚷 view threshold
198,860,000.00 ns
(-1.56%)Baseline: 202,014,256.51 ns
211,741,996.80 ns
(93.92%)
1-conn/1-1b-resp/mtu-1504 (aka. HPS)/client📈 view plot
🚷 view threshold
38,524,000.00 ns
(+12.73%)Baseline: 34,174,594.80 ns
46,114,933.30 ns
(83.54%)
1-conn/10_000-parallel-1b-resp/mtu-1504 (aka. RPS)/client📈 view plot
🚷 view threshold
285,120,000.00 ns
(-1.32%)Baseline: 288,926,189.59 ns
302,132,017.61 ns
(94.37%)
1-streams/each-1000-bytes/simulated-time📈 view plot
🚷 view threshold
118,870,000.00 ns
(+0.05%)Baseline: 118,816,152.42 ns
120,511,375.01 ns
(98.64%)
1-streams/each-1000-bytes/wallclock-time📈 view plot
🚷 view threshold
581,520.00 ns
(-1.41%)Baseline: 589,838.29 ns
610,539.70 ns
(95.25%)
1000-streams/each-1-bytes/simulated-time📈 view plot
🚷 view threshold
2,331,900,000.00 ns
(-75.42%)Baseline: 9,488,156,877.32 ns
24,136,002,039.77 ns
(9.66%)
1000-streams/each-1-bytes/wallclock-time📈 view plot
🚷 view threshold
12,414,000.00 ns
(-7.05%)Baseline: 13,355,697.03 ns
15,178,786.71 ns
(81.79%)
1000-streams/each-1000-bytes/simulated-time📈 view plot
🚷 view threshold
16,396,000,000.00 ns
(-8.06%)Baseline: 17,833,628,252.79 ns
20,853,710,552.29 ns
(78.62%)
1000-streams/each-1000-bytes/wallclock-time📈 view plot
🚷 view threshold
50,039,000.00 ns
(-0.94%)Baseline: 50,516,011.15 ns
55,723,293.42 ns
(89.80%)
RxStreamOrderer::inbound_frame()📈 view plot
🚷 view threshold
110,250,000.00 ns
(+0.47%)Baseline: 109,735,743.49 ns
111,385,511.00 ns
(98.98%)
coalesce_acked_from_zero 1+1 entries📈 view plot
🚷 view threshold
89.68 ns
(+0.64%)Baseline: 89.11 ns
90.41 ns
(99.19%)
coalesce_acked_from_zero 10+1 entries📈 view plot
🚷 view threshold
105.49 ns
(-0.52%)Baseline: 106.04 ns
107.11 ns
(98.49%)
coalesce_acked_from_zero 1000+1 entries📈 view plot
🚷 view threshold
91.69 ns
(+0.86%)Baseline: 90.91 ns
95.26 ns
(96.25%)
coalesce_acked_from_zero 3+1 entries📈 view plot
🚷 view threshold
106.21 ns
(-0.30%)Baseline: 106.53 ns
107.53 ns
(98.77%)
decode 1048576 bytes, mask 3f📈 view plot
🚷 view threshold
🚨 view alert (🔔)
3,193,100.00 ns
(+82.82%)Baseline: 1,746,544.80 ns
2,441,571.23 ns
(130.78%)

decode 1048576 bytes, mask 7f📈 view plot
🚷 view threshold
2,598,700.00 ns
(-47.13%)Baseline: 4,914,819.33 ns
6,308,615.54 ns
(41.19%)
decode 1048576 bytes, mask ff📈 view plot
🚷 view threshold
1,842,600.00 ns
(-37.58%)Baseline: 2,951,985.69 ns
3,616,803.60 ns
(50.95%)
decode 4096 bytes, mask 3f📈 view plot
🚷 view threshold
🚨 view alert (🔔)
12,524.00 ns
(+72.89%)Baseline: 7,243.95 ns
10,825.19 ns
(115.69%)

decode 4096 bytes, mask 7f📈 view plot
🚷 view threshold
10,158.00 ns
(-47.05%)Baseline: 19,185.10 ns
24,634.26 ns
(41.24%)
decode 4096 bytes, mask ff📈 view plot
🚷 view threshold
7,237.30 ns
(-34.91%)Baseline: 11,118.22 ns
13,650.88 ns
(53.02%)
sent::Packets::take_ranges📈 view plot
🚷 view threshold
4,533.90 ns
(-3.19%)Baseline: 4,683.36 ns
4,925.01 ns
(92.06%)
transfer/pacing-false/same-seed/simulated-time/run📈 view plot
🚷 view threshold
23,941,000,000.00 ns
(-5.28%)Baseline: 25,274,386,194.03 ns
26,198,006,728.55 ns
(91.38%)
transfer/pacing-false/same-seed/wallclock-time/run📈 view plot
🚷 view threshold
23,501,000.00 ns
(-7.16%)Baseline: 25,313,871.27 ns
27,092,530.23 ns
(86.74%)
transfer/pacing-false/varying-seeds/simulated-time/run📈 view plot
🚷 view threshold
23,941,000,000.00 ns
(-4.66%)Baseline: 25,111,589,552.24 ns
25,778,572,951.39 ns
(92.87%)
transfer/pacing-false/varying-seeds/wallclock-time/run📈 view plot
🚷 view threshold
23,483,000.00 ns
(-7.76%)Baseline: 25,458,761.19 ns
27,322,591.82 ns
(85.95%)
transfer/pacing-true/same-seed/simulated-time/run📈 view plot
🚷 view threshold
23,676,000,000.00 ns
(-6.52%)Baseline: 25,326,604,477.61 ns
26,422,725,793.16 ns
(89.60%)
transfer/pacing-true/same-seed/wallclock-time/run📈 view plot
🚷 view threshold
23,722,000.00 ns
(-10.40%)Baseline: 26,474,578.36 ns
28,853,597.15 ns
(82.22%)
transfer/pacing-true/varying-seeds/simulated-time/run📈 view plot
🚷 view threshold
23,676,000,000.00 ns
(-4.99%)Baseline: 24,920,208,955.22 ns
25,629,840,254.81 ns
(92.38%)
transfer/pacing-true/varying-seeds/wallclock-time/run📈 view plot
🚷 view threshold
23,904,000.00 ns
(-7.91%)Baseline: 25,957,063.43 ns
27,916,652.27 ns
(85.63%)
🐰 View full continuous benchmarking report in Bencher

Copilot AI review requested due to automatic review settings September 23, 2025 12:15

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull Request Overview

This PR adds support for Windows ARM64 runners in GitHub Actions CI by introducing the windows-11-arm runner to the workflow matrices. The change enables cross-platform testing on the newly available Windows ARM64 hosted runners from GitHub.

  • Adds windows-11-arm to the OS matrix across multiple workflow files
  • Configures MSVC toolchain for ARM64 architecture support
  • Updates NSS build configuration to handle ARM64-specific environment variables

Reviewed Changes

Copilot reviewed 5 out of 5 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
.github/workflows/firefox.yml Adds windows-11-arm to the OS matrix for Firefox builds
.github/workflows/clippy.yml Adds windows-11-arm to the OS matrix for Clippy checks
.github/workflows/check.yml Adds windows-11-arm to matrix and includes ARM release builds
.github/actions/rust/action.yml Configures MSVC for ARM64 cross-compilation
.github/actions/nss/action.yml Updates NSS build with ARM64 support and environment configuration

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

Comment thread .github/actions/nss/action.yml Outdated
Comment thread .github/actions/nss/action.yml Outdated
Comment thread .github/actions/nss/action.yml Outdated
Copilot AI review requested due to automatic review settings September 23, 2025 12:17

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull Request Overview

Copilot reviewed 5 out of 5 changed files in this pull request and generated 1 comment.


Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

Comment thread .github/actions/nss/action.yml Outdated
Copilot AI review requested due to automatic review settings September 24, 2025 13:06

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull Request Overview

Copilot reviewed 5 out of 5 changed files in this pull request and generated 1 comment.


Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

Comment thread .github/actions/nss/action.yml Outdated
Copilot AI review requested due to automatic review settings September 24, 2025 14:00

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull Request Overview

Copilot reviewed 4 out of 4 changed files in this pull request and generated 1 comment.


Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

Comment thread .github/actions/nss/action.yml Outdated
@github-actions

Copy link
Copy Markdown
Contributor

Failed Interop Tests

QUIC Interop Runner, client vs. server, differences relative to 836046b.

neqo-latest as client

neqo-latest as server

All results

Succeeded Interop Tests

QUIC Interop Runner, client vs. server

neqo-latest as client

neqo-latest as server

Unsupported Interop Tests

QUIC Interop Runner, client vs. server

neqo-latest as client

neqo-latest as server

@larseggert

Copy link
Copy Markdown
Collaborator

@Not-Nik have you managed to get NSS to compile on Windows/ARM in the meantime? Any pointers?

@Not-Nik

Not-Nik commented Dec 11, 2025

Copy link
Copy Markdown
Member

Not any further than we got in previous discussions, unfortunately.

@larseggert
larseggert force-pushed the ci-windows-arm branch 3 times, most recently from 131bfed to bcd225d Compare February 24, 2026 09:19
@codspeed

codspeed Bot commented Feb 24, 2026 •

Copy link
Copy Markdown
Contributor

Merging this PR will not alter performance

✅ 24 untouched benchmarks
⏩ 27 skipped benchmarks1


Comparing mxinden:ci-windows-arm (5428a28) with main (b29754d)

Open in CodSpeed

Footnotes

  1. 27 benchmarks were skipped, so the baseline results were used instead. If they were deleted from the codebase, click here and archive them to remove them from the performance reports. ↩

@larseggert
larseggert force-pushed the ci-windows-arm branch 2 times, most recently from 896529c to 831ded1 Compare February 24, 2026 09:47

- name: Install Rust
uses: dtolnay/rust-toolchain@efa25f7f19611383d5b0ccf2d1c8914531636bf9 # zizmor: ignore[stale-action-refs]
with:

Check notice

Code scanning / zizmor

action functionality is already included by the runner Note

action functionality is already included by the runner
@github-actions

github-actions Bot commented Apr 2, 2026

Copy link
Copy Markdown
Contributor

Failed Interop Tests

QUIC Interop Runner, client vs. server, differences relative to main at b29754d.

neqo-pr as clientneqo-pr as server
neqo-pr vs. go-x-net: BP BA
neqo-pr vs. haproxy: BP BA
neqo-pr vs. kwik: S L1 C1 BP BA
neqo-pr vs. linuxquic: C1
neqo-pr vs. lsquic: L1 C1
neqo-pr vs. msquic: A L1 C1
neqo-pr vs. mvfst: H DC LR M R Z 3 B U A L1 L2 C1 C2 6 BP BA
neqo-pr vs. neqo: Z A
neqo-pr vs. nginx: BP BA
neqo-pr vs. ngtcp2: CM
neqo-pr vs. picoquic: A
neqo-pr vs. quic-go: A
neqo-pr vs. quiche: BP BA
neqo-pr vs. s2n-quic: ⚠️BP BA CM
neqo-pr vs. tquic: S BP BA
neqo-pr vs. xquic: A 🚀L1
aioquic vs. neqo-pr: Z 🚀L1 CM
go-x-net vs. neqo-pr: CM
kwik vs. neqo-pr: Z BP BA CM
lsquic vs. neqo-pr: Z
msquic vs. neqo-pr: Z CM
mvfst vs. neqo-pr: Z A L1 C1 CM
neqo vs. neqo-pr: Z A
openssl vs. neqo-pr: LR M A CM
picoquic vs. neqo-pr: Z
quic-go vs. neqo-pr: CM
quiche vs. neqo-pr: Z ⚠️C1 CM
quinn vs. neqo-pr: Z ⚠️C1 V2 CM
s2n-quic vs. neqo-pr: CM
tquic vs. neqo-pr: Z CM
xquic vs. neqo-pr: M CM
All results

Succeeded Interop Tests

QUIC Interop Runner, client vs. server

neqo-pr as client

neqo-pr as server

Unsupported Interop Tests

QUIC Interop Runner, client vs. server

neqo-pr as client

neqo-pr as server

@larseggert

Copy link
Copy Markdown
Collaborator

Most of this PR is moving to mozilla/actions#33

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

blocked Blocked on something else

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants