Avatar for the Bluetooth-Devices user
Bluetooth-Devices
habluetooth
BlogDocsChangelog

perf: propagate _adv_data_changed flag to skip dedup in _scanner_adv_received

#368Closed
Comparing
opt/adv-data-changed-flag
(
3b69d76
) with
main
(
84e1b33
)
CodSpeed Performance Gauge
+7%
Improvement
1
Untouched
10
Ignored
2

Benchmarks

13 total
test_inject_100_different_manufacturer_data
tests/test_benchmark_base_scanner.py
CodSpeed Performance Gauge
+7%
281.2 µs262.2 µs
test_inject_100_bluez_raw_end_to_end_changed
tests/test_benchmark_base_scanner.py
CodSpeed Performance Gauge
+2%
962.6 µs939.2 µs
test_inject_100_bleak_changed_advertisements
tests/test_benchmark_base_scanner.py
CodSpeed Performance Gauge
0%
440.1 µs440.6 µs
test_inject_100_different_advertisements
tests/test_benchmark_base_scanner.py
CodSpeed Performance Gauge
0%
196.2 µs196.6 µs
test_inject_100_raw_unchanged_advertisements
tests/test_benchmark_base_scanner.py
CodSpeed Performance Gauge
0%
132.5 µs132.8 µs
test_inject_100_bleak_unchanged_advertisements
tests/test_benchmark_base_scanner.py
CodSpeed Performance Gauge
-1%
399.1 µs401.3 µs
test_inject_100_bluez_raw_end_to_end_unchanged
tests/test_benchmark_base_scanner.py
CodSpeed Performance Gauge
-1%
726.7 µs731.4 µs
test_inject_100_complex_advertisements
tests/test_benchmark_base_scanner.py
CodSpeed Performance Gauge
-1%
160 µs161.9 µs
test_inject_100_different_service_data
tests/test_benchmark_base_scanner.py
CodSpeed Performance Gauge
-1%
193.6 µs196.1 µs
test_inject_100_simple_advertisements
tests/test_benchmark_base_scanner.py
CodSpeed Performance Gauge
-2%
166.4 µs169.6 µs
test_inject_100_rotating_manufacturer_data
tests/test_benchmark_base_scanner.py
CodSpeed Performance Gauge
-3%
202.2 µs209.2 µs
test_filter_wanted_apple_advs
tests/test_benchmark_base_scanner.py
Ignored
CodSpeed Performance Gauge
0%
173.3 µs173.8 µs
test_filter_unwanted_apple_advs
tests/test_benchmark_base_scanner.py
Ignored
CodSpeed Performance Gauge
-1%
132.3 µs134.2 µs

Commits

Click on a commit to change the comparison range
Base
main
84e1b33
+8.85%
perf: propagate adv_data_changed flag to skip dedup in scanner_adv_received
bca82be
19 days ago
by bdraco
-8.39%
refactor: make adv_data_changed a private field
e5c46ff
19 days ago
by bdraco
+8.4%
perf: use tri-state int for _adv_data_changed to avoid double-check on changed path
3ebbf29
19 days ago
by bdraco
-1.16%
fix: import public ADV_DATA constants and assign to local cdef _ADV_DATA copies
fde8585
19 days ago
by bdraco
+0.4%
bench: add raw, bleak unchanged, and bleak changed advertisement benchmarks
64e3abf
19 days ago
by bdraco
-0.36%
bench: add BlueZ MGMT end-to-end benchmarks for unchanged and changed data
de457d6
19 days ago
by bdraco
-0.11%
Merge branch 'main' into opt/adv-data-changed-flag
4136326
19 days ago
by bdraco
-0.3%
test: add coverage for _adv_data_changed dedup paths
b4770b1
19 days ago
by bdraco
+0.42%
fix: default _adv_data_changed to ADV_DATA_UNKNOWN in __init__ for external callers
ba40bc1
19 days ago
by bdraco
-0.31%
fix: preserve object identity in service_uuids merge and add assertions to dedup tests
8fe6d52
19 days ago
by bdraco
+1.72%
refactor: simplify service_data and manufacturer_data merge by collapsing duplicate branches
5a798d3
19 days ago
by bdraco
-1.64%
fix: address review - preserve name identity with >=, add source equality fallback, use non-interned test strings
33e0b57
19 days ago
by bdraco
-0.52%
fix: explicitly set _adv_data_changed in raw fast path
b825434
19 days ago
by bdraco
+0.25%
test: verify _adv_data_changed is set correctly at all construction sites
3b69d76
19 days ago
by bdraco
© 2026 CodSpeed Technology
Home Terms Privacy Docs