Skip to content

Add availability macro and extend swift settings to all modules#806

Merged
adam-fowler merged 6 commits intomainfrom
availability-macro
Apr 9, 2026
Merged

Add availability macro and extend swift settings to all modules#806
adam-fowler merged 6 commits intomainfrom
availability-macro

Conversation

@adam-fowler
Copy link
Copy Markdown
Member

Add @available(hummingbird 2.0, *)

@adam-fowler adam-fowler requested a review from Joannis as a code owner April 8, 2026 15:01
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Apr 8, 2026

✅ Pull request no significant performance differences ✅

Summary

New baseline 'pull_request' is WITHIN the 'main' baseline thresholds.

Full Benchmark Comparison

Comparing results between 'main' and 'pull_request'

Host '9370b58faac5' with 4 'x86_64' processors with 15 GB memory, running:
#8~24.04.1-Ubuntu SMP Mon Jan 26 18:35:40 UTC 2026

HummingbirdBenchmarks

HTTP:Cookie:Decode metrics

Malloc (total): results within specified thresholds, fold down for details.

Malloc (total) * p0 p25 p50 p75 p90 p99 p100 Samples
main 4 4 4 4 4 4 4 387
pull_request 4 4 4 4 4 4 4 387
Δ 0 0 0 0 0 0 0 0
Improvement % 0 0 0 0 0 0 0 0

HTTP:URI:Decode metrics

Malloc (total): results within specified thresholds, fold down for details.

Malloc (total) * p0 p25 p50 p75 p90 p99 p100 Samples
main 1 1 1 1 1 1 1 3491
pull_request 1 1 1 1 1 1 1 3455
Δ 0 0 0 0 0 0 0 -36
Improvement % 0 0 0 0 0 0 0 -36

HTTP:URI:QueryParameters metrics

Malloc (total): results within specified thresholds, fold down for details.

Malloc (total) * p0 p25 p50 p75 p90 p99 p100 Samples
main 7 7 7 7 7 7 7 901
pull_request 7 7 7 7 7 7 7 888
Δ 0 0 0 0 0 0 0 -13
Improvement % 0 0 0 0 0 0 0 -13

Router:Echo metrics

Malloc (total): results within specified thresholds, fold down for details.

Malloc (total) * p0 p25 p50 p75 p90 p99 p100 Samples
main 818 818 818 818 818 818 818 1556
pull_request 818 818 818 818 818 818 818 1555
Δ 0 0 0 0 0 0 0 -1
Improvement % 0 0 0 0 0 0 0 -1

Router:GET metrics

Malloc (total): results within specified thresholds, fold down for details.

Malloc (total) * p0 p25 p50 p75 p90 p99 p100 Samples
main 468 468 468 468 468 468 468 2755
pull_request 468 468 468 468 468 468 468 2779
Δ 0 0 0 0 0 0 0 24
Improvement % 0 0 0 0 0 0 0 24

Router:Middleware metrics

Malloc (total): results within specified thresholds, fold down for details.

Malloc (total) * p0 p25 p50 p75 p90 p99 p100 Samples
main 373 373 373 373 373 373 373 2489
pull_request 373 373 373 373 373 373 373 2525
Δ 0 0 0 0 0 0 0 36
Improvement % 0 0 0 0 0 0 0 36

Router:PUT metrics

Malloc (total): results within specified thresholds, fold down for details.

Malloc (total) * p0 p25 p50 p75 p90 p99 p100 Samples
main 1320 1320 1320 1320 1320 1320 1320 1112
pull_request 1320 1320 1320 1320 1320 1320 1320 1130
Δ 0 0 0 0 0 0 0 18
Improvement % 0 0 0 0 0 0 0 18

Router:Parameters metrics

Malloc (total): results within specified thresholds, fold down for details.

Malloc (total) * p0 p25 p50 p75 p90 p99 p100 Samples
main 668 668 668 668 668 668 668 2326
pull_request 668 668 668 668 668 668 668 2328
Δ 0 0 0 0 0 0 0 2
Improvement % 0 0 0 0 0 0 0 2

RouterBuilder:Middleware metrics

Malloc (total): results within specified thresholds, fold down for details.

Malloc (total) * p0 p25 p50 p75 p90 p99 p100 Samples
main 372 372 372 372 372 372 372 2595
pull_request 372 372 372 372 372 372 372 2584
Δ 0 0 0 0 0 0 0 -11
Improvement % 0 0 0 0 0 0 0 -11

TrieRouter:LongPaths metrics

Malloc (total): results within specified thresholds, fold down for details.

Malloc (total) * p0 p25 p50 p75 p90 p99 p100 Samples
main 2 2 2 2 2 2 2 263
pull_request 2 2 2 2 2 2 2 264
Δ 0 0 0 0 0 0 0 1
Improvement % 0 0 0 0 0 0 0 1

TrieRouter:Parameters metrics

Malloc (total): results within specified thresholds, fold down for details.

Malloc (total) * p0 p25 p50 p75 p90 p99 p100 Samples
main 7 7 7 7 7 7 7 202
pull_request 7 7 7 7 7 7 7 207
Δ 0 0 0 0 0 0 0 5
Improvement % 0 0 0 0 0 0 0 5

TrieRouter:Routing metrics

Malloc (total): results within specified thresholds, fold down for details.

Malloc (total) * p0 p25 p50 p75 p90 p99 p100 Samples
main 2 2 2 2 2 2 2 271
pull_request 2 2 2 2 2 2 2 264
Δ 0 0 0 0 0 0 0 -7
Improvement % 0 0 0 0 0 0 0 -7

URLEncodedForm:Decode metrics

Malloc (total): results within specified thresholds, fold down for details.

Malloc (total) * p0 p25 p50 p75 p90 p99 p100 Samples
main 29 29 29 29 29 29 29 56
pull_request 29 29 29 29 29 29 29 55
Δ 0 0 0 0 0 0 0 -1
Improvement % 0 0 0 0 0 0 0 -1

URLEncodedForm:Encode metrics

Malloc (total): results within specified thresholds, fold down for details.

Malloc (total) * p0 p25 p50 p75 p90 p99 p100 Samples
main 24 24 24 24 24 24 24 221
pull_request 24 24 24 24 24 24 24 214
Δ 0 0 0 0 0 0 0 -7
Improvement % 0 0 0 0 0 0 0 -7

@codecov
Copy link
Copy Markdown

codecov Bot commented Apr 8, 2026

Codecov Report

❌ Patch coverage is 88.88889% with 1 line in your changes missing coverage. Please review.
✅ Project coverage is 83.06%. Comparing base (61b0255) to head (2ce1fc7).
⚠️ Report is 1 commits behind head on main.

Files with missing lines Patch % Lines
...ummingbirdHTTP2/HTTP2ServerConnectionManager.swift 80.00% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #806      +/-   ##
==========================================
+ Coverage   83.05%   83.06%   +0.01%     
==========================================
  Files         124      124              
  Lines        6183     6183              
==========================================
+ Hits         5135     5136       +1     
+ Misses       1048     1047       -1     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Comment thread Package.swift Outdated
@adam-fowler adam-fowler merged commit 43f9063 into main Apr 9, 2026
10 checks passed
@adam-fowler adam-fowler deleted the availability-macro branch April 9, 2026 13:54
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