home-assistant / home-assistant/core

Missing runtime dependencies in Home Assistant Bluetooth dependency chain

Open
#181,585 6 comments 0 reactions 0 assignees View on GitHub
question unsupported
Dominant language
Python
Stars
90.5k
Forks
38.6k
Avg merge
1d 2h
Merged PRs (30d)
597

Description

### The problem

### Description

A clean installation of Home Assistant does not install all dependencies required when importing the Bluetooth stack and its hard dependencies.

The affected dependency chain includes:
```
bluetooth → usb → serialx
```
During import, dependencies such as aioesphomeapi and aiohasupervisor are required, but they are not declared transitively. As a result, compatibility checks that install Home Assistant and then import the Bluetooth stack fail with ModuleNotFoundError.

### Reproduction

```bash
python -m pip install homeassistant
python -c "import homeassistant.components.bluetooth"
```

Alternatively, inspect the manifests for bluetooth, bluetooth_adapters, usb, and their dependencies, then import the Bluetooth integration in a clean environment.

### Workaround

Install the missing packages manually:

```bash
python -m pip install aioesphomeapi aiohasupervisor
```

### Expected behavior

Installing Home Assistant should install all runtime dependencies required to import its Bluetooth integration and dependency chain.

### Environment

- Home Assistant: affected stable/latest release
- Python: 3.14
- Installation: clean pip environment

### What version of Home Assistant Core has the issue?

2026.9.1

### What was the last working version of Home Assistant Core?

_No response_

### What type of installation are you running?

Home Assistant Core

### Integration causing the issue

_No response_

### Link to integration documentation on our website

_No response_

### Diagnostics information

_No response_

### Example YAML snippet

```yaml

```

### Anything in the logs that might be useful for us?

```txt
https://github.com/ThyMYthOS/unifi_ble/actions/runs/34118458540/job/101730672018
```

### Additional information

_No response_

Contributor guide

Open the contributing guide

Research direction

Start by inspecting the manifests for bluetooth, bluetooth_adapters, usb, and their dependencies, then reproduce the failure in a clean environment with `python -m pip install homeassistant` followed by importing `homeassistant.components.bluetooth`. Done means the clean installation includes the runtime dependencies and the Bluetooth integration imports without ModuleNotFoundError.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
backend, embedded-iot
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
68/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.