Repository navigation
Bump bluez to 0.4.0 (raw radio access) - #232
Merged
Merged
Conversation
Picks up the opt-in raw radio layer (Bluez.Mgmt, Bluez.Radio, Bluez.AdvertReceiver, Bluez.Hci, Bluez.AdData) needed for BLE mesh lighting. Nothing is wired yet; our bluez_spec passes neither `mgmt:` nor `advert_receiver:`, so the supervision tree is unchanged. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
plug_crypto 2.2.0 can expose the secret key base in stack-trace arguments; 2.2.1 fixes it. Also locks elixir_make 0.10.1, which every `mix deps.get` (CI included) already resolves. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
There was a problem hiding this comment.
🟢 Approval recommended
No active review issues are recorded for the Bluez dependency update.
No open issues 🎉
What changed in this PR
Updates Bluez as groundwork for BLE mesh lighting control, without wiring up its optional raw-radio features.
Changes:
- Raises the Bluez requirement to
~> 0.4and locks version 0.4.0. - Carries #231’s
plug_crypto2.2.1 security update andelixir_make0.10.1 lock update.
| File | Description |
|---|---|
| mix.lock | Updates Bluez, plug_crypto, and elixir_make versions and checksums. |
| mix.exs | Raises the Bluez dependency requirement to ~> 0.4. |
Review effort: Balanced
3 of 4 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Bumps
bluezfrom 0.3.0 to 0.4.0. This is groundwork for BLE mesh lighting control (Tuya "Beacon"-style lights). Only the bluez lock entry moves; its dependencies are unchanged.0.4.0 adds an opt-in raw radio layer:
Bluez.Mgmt: raw LE advertising through the kernel MGMT socket, for AD layouts that BlueZ's D-BusLEAdvertisement1API refuses. Requires Linux 5.17+.Bluez.Radio: one advertising owner per controller, via leases.Bluez.AdvertReceiver: advertising reports exactly as received, offHCI_CHANNEL_RAW.Bluez.HciandBluez.AdDatacodecs.Nothing is wired up in this PR. These children start only when
mgmt:oradvert_receiver:is passed, andUniversalProxy.Bluetooth.bluez_spec/0passes neither, so the supervision tree is unchanged.The one change that applies regardless:
Bluez.Clientnow clears and then recordsDevicePath.resolved_adapter_key()on each start, which backs the newresolved_adapter_path/0. Our code only setsdesired_adapter_key(), so nothing conflicts.This PR also carries #231's lock change (plug_crypto 2.2.1 for EEF-CVE-2026-105963, plus elixir_make 0.10.1) so its Hex audit job passes. That part is a no-op once #231 merges.
Test plan
mise run test: 1688 passed, 0 failurescompile --warnings-as-errors,credo --strict, dialyzerhex.audit: only the allow-listed cowlib advisory🤖 Generated with Claude Code