Avatar for the ada-url user
ada-url
ada
BlogDocsChangelog

Rewrite C API with pure-C implementation (IDNA-only C++ bridge) and expanded fuzzing

#1093
Comparing
copilot/rewrite-url-aggregator-c
(
8d993be
) with
main
(
3e20f41
)
CodSpeed Performance Gauge
0%
Untouched
27
New
6
Skipped
4

Benchmarks

37 total
BasicBench_C_API_search_params
benchmarks/bench_c_api.cpp
CodSpeed Performance Gauge
N/A
N/A5.9 µs
BasicBench_C_API_parse_href
benchmarks/bench_c_api.cpp
CodSpeed Performance Gauge
N/A
N/A27.9 µs
BasicBench_C_API_copy
benchmarks/bench_c_api.cpp
CodSpeed Performance Gauge
N/A
N/A29.8 µs
BasicBench_C_API_can_parse
benchmarks/bench_c_api.cpp
CodSpeed Performance Gauge
N/A
N/A26.7 µs
BasicBench_C_API_set_href
benchmarks/bench_c_api.cpp
CodSpeed Performance Gauge
N/A
N/A38.6 µs
BasicBench_C_API_parse_all_getters
benchmarks/bench_c_api.cpp
CodSpeed Performance Gauge
N/A
N/A29.4 µs
SpecialQuery
benchmarks/percent_encode.cpp
CodSpeed Performance Gauge
-2%
3.3 µs3.3 µs
Bench_IPv4_NonDecimal_AdaURL
benchmarks/bench_ipv4.cpp
CodSpeed Performance Gauge
+2%
4.4 ms4.3 ms
Bench_IPv4_NonDecimal_Aggregator
benchmarks/bench_ipv4.cpp
CodSpeed Performance Gauge
+1%
5.3 ms5.2 ms
BBC_BasicBench_AdaURL_href
unknown_file
CodSpeed Performance Gauge
-1%
23.6 µs23.8 µs
BBC_BasicBench_AdaURL_CanParse
unknown_file
CodSpeed Performance Gauge
-1%
12 µs12.1 µs
BBC_BasicBench_AdaURL_aggregator_href
unknown_file
CodSpeed Performance Gauge
-1%
16 µs16.2 µs
Query
benchmarks/percent_encode.cpp
CodSpeed Performance Gauge
-1%
3.3 µs3.3 µs
Fragment
benchmarks/percent_encode.cpp
CodSpeed Performance Gauge
-1%
3.3 µs3.3 µs
Bench_DNS_Aggregator
benchmarks/bench_ipv4.cpp
CodSpeed Performance Gauge
-1%
93.5 ms94.3 ms
BenchData_BasicBench_AdaURL_aggregator_href
unknown_file
CodSpeed Performance Gauge
-1%
92.5 ms93.3 ms
Bench_DNS_AdaURL
benchmarks/bench_ipv4.cpp
CodSpeed Performance Gauge
-1%
97.5 ms98.2 ms
Bench_BasicBench_AdaURL_href
unknown_file
CodSpeed Performance Gauge
-1%
31.9 µs32.1 µs
UserInfo
benchmarks/percent_encode.cpp
CodSpeed Performance Gauge
-1%
4.3 µs4.3 µs
Bench_IPv4_Decimal_Aggregator
benchmarks/bench_ipv4.cpp
CodSpeed Performance Gauge
-1%
3.2 ms3.2 ms
BasicBench_AdaURL_URLPattern_Test
benchmarks/urlpattern.cpp
CodSpeed Performance Gauge
-1%
52.2 µs52.5 µs
BenchData_BasicBench_AdaURL_CanParse
unknown_file
CodSpeed Performance Gauge
-1%
66.5 ms66.9 ms
BenchData_BasicBench_AdaURL_href
unknown_file
CodSpeed Performance Gauge
-1%
131.9 ms132.6 ms
Bench_BasicBench_AdaURL_aggregator_href
unknown_file
CodSpeed Performance Gauge
0%
24.2 µs24.3 µs
Bench_BasicBench_whatwg
unknown_file
CodSpeed Performance Gauge
0%
31.9 µs31.8 µs

Commits

Click on a commit to change the comparison range
Base
main
3e20f41
+0.06%
Rewrite C API: pure-C url aggregator in ada_c.c, C++ bridge in ada_c_bridge.cpp
1ab39fd
5 months ago
by Copilot
0%
Expand C API fuzzing: add getters, setters, search_params, can_parse, and IDNA fuzz functions
5248db9
5 months ago
by Copilot
+0.15%
Changes before error encountered
f2e45cb
5 months ago
by Copilot
-0.38%
Implement search params, origin, can_parse and version in pure C; reduce C++ bridge to parse/setters/IDNA only
7f38bed
5 months ago
by Copilot
-0.18%
Implement URL setters/clears in pure C; reduce C++ bridge to parse + IDNA only
8d993be
5 months ago
by Copilot
© 2026 CodSpeed Technology
Home Terms Privacy Docs