Event
pull_request
Branch
feat/phone-capture-analysis
Commit
7a6efd7
Started
Duration
1:41

Synced from GitHub

tests (python 3.13)

FailureTook 1:32
Whole log, 114 KB
Current runner version: '2.337.0'
▸ Runner Image Provisioner
Hosted Compute Agent
Version: 20261012.601
Commit: f3dc54e1fb89da6852db922499a0233137369e1d
Build Date: 2026-10-12T17:48:21Z
Worker ID: {aa82da9a-eab2-4f62-8788-13f2dfa355b4}
Region: centralus
Cloud: Azure
▸ Operating System
Ubuntu
24.04.5
LTS
▸ Runner Image
Image: ubuntu-24.04
Version: 20261012.334.1
Included Software: https://github.com/actions/runner-images/blob/ubuntu24/20261012.334/images/ubuntu/Ubuntu2404-Readme.md
Image Release: https://github.com/actions/runner-images/releases/tag/ubuntu24%2F20261012.334
▸ GITHUB_TOKEN Permissions
Contents: read
Metadata: read
Packages: read
Secret source: Actions
Cache mode: write
Prepare workflow directory
Prepare all required actions
Getting action download info
Download action repository 'actions/checkout@v4' (SHA:11d5960a326750d5838078e36cf38b85af677262)
Download action repository 'actions/setup-python@v5' (SHA:a26af69be951a213d495a4c3e4e4022e16d87065)
Complete job name: tests (python 3.13)
▸ Run actions/checkout@v4
with:
  repository: Mezzle/govee-bluetooth
  token: ***
  ssh-strict: true
  ssh-user: git
  persist-credentials: true
  clean: true
  sparse-checkout-cone-mode: true
  fetch-depth: 1
  fetch-tags: false
  show-progress: true
  lfs: false
  submodules: false
  set-safe-directory: true
  allow-unsafe-pr-checkout: false
Syncing repository: Mezzle/govee-bluetooth
▸ Getting Git version info
Working directory is '/home/runner/work/govee-bluetooth/govee-bluetooth'
[command]/usr/bin/git version
git version 2.55.0
Temporarily overriding HOME='/home/runner/work/_temp/ae84bfa0-a53b-4c87-b126-2b68f46f576e' before making global git config changes
Adding repository directory to the temporary git global config as a safe directory
[command]/usr/bin/git config --global --add safe.directory /home/runner/work/govee-bluetooth/govee-bluetooth
Deleting the contents of '/home/runner/work/govee-bluetooth/govee-bluetooth'
▸ Initializing the repository
[command]/usr/bin/git init /home/runner/work/govee-bluetooth/govee-bluetooth
hint: Using 'master' as the name for the initial branch. This default branch name
hint: will change to "main" in Git 3.0. To configure the initial branch name
hint: to use in all of your new repositories, which will suppress this warning,
hint: call:
hint:
hint: 	git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: 	git branch -m <name>
hint:
hint: Disable this message with "git config set advice.defaultBranchName false"
Initialized empty Git repository in /home/runner/work/govee-bluetooth/govee-bluetooth/.git/
[command]/usr/bin/git remote add origin https://github.com/Mezzle/govee-bluetooth
▸ Disabling automatic garbage collection
[command]/usr/bin/git config --local gc.auto 0
▸ Setting up auth
[command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand
[command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :"
[command]/usr/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader
[command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.https\:\/\/github\.com\/\.extraheader' && git config --local --unset-all 'http.https://github.com/.extraheader' || :"
[command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir:
[command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url
[command]/usr/bin/git config --local http.https://github.com/.extraheader AUTHORIZATION: basic ***
▸ Fetching the repository
[command]/usr/bin/git -c protocol.version=2 fetch --no-tags --prune --no-recurse-submodules --depth=1 origin +5e47fb63beab3176400cba9329e1fbf7e9f02117:refs/remotes/pull/14/merge
From https://github.com/Mezzle/govee-bluetooth
 * [new ref]         5e47fb63beab3176400cba9329e1fbf7e9f02117 -> pull/14/merge
▸ Determining the checkout info
[command]/usr/bin/git sparse-checkout disable
[command]/usr/bin/git config --local --unset-all extensions.worktreeConfig
▸ Checking out the ref
[command]/usr/bin/git checkout --progress --force refs/remotes/pull/14/merge
Note: switching to 'refs/remotes/pull/14/merge'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by switching back to a branch.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -c with the switch command. Example:

  git switch -c <new-branch-name>

Or undo this operation with:

  git switch -

Turn off this advice by setting config variable advice.detachedHead to false

HEAD is now at 5e47fb6 Merge 7a6efd774b093fca1f654b2fc3882bf64f17ce5b into afa7789110758b153bf20de68a77354c6424b9a4
[command]/usr/bin/git log -1 --format=%H
5e47fb63beab3176400cba9329e1fbf7e9f02117
▸ Run actions/setup-python@v5
with:
  python-version: 3.13
  check-latest: false
  token: ***
  update-environment: true
  allow-prereleases: false
  freethreaded: false
▸ Installed versions
(node:2092) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead.
(Use `node --trace-deprecation ...` to show where the warning was created)
Successfully set up CPython (3.13.16)
▸ Run pip install -r requirements_test.txt
pip install -r requirements_test.txt
shell: /usr/bin/bash -e {0}
env:
  pythonLocation: /opt/hostedtoolcache/Python/3.13.16/x64
  PKG_CONFIG_PATH: /opt/hostedtoolcache/Python/3.13.16/x64/lib/pkgconfig
  Python_ROOT_DIR: /opt/hostedtoolcache/Python/3.13.16/x64
  Python2_ROOT_DIR: /opt/hostedtoolcache/Python/3.13.16/x64
  Python3_ROOT_DIR: /opt/hostedtoolcache/Python/3.13.16/x64
  LD_LIBRARY_PATH: /opt/hostedtoolcache/Python/3.13.16/x64/lib
Collecting homeassistant (from -r requirements_test.txt (line 1))
  Downloading homeassistant-2026.2.3-py3-none-any.whl.metadata (4.8 kB)
Collecting pytest-homeassistant-custom-component (from -r requirements_test.txt (line 2))
  Downloading pytest_homeassistant_custom_component-0.13.316-py3-none-any.whl.metadata (5.7 kB)
Collecting pytest-timeout (from -r requirements_test.txt (line 3))
  Downloading pytest_timeout-2.4.0-py3-none-any.whl.metadata (20 kB)
Collecting ruff (from -r requirements_test.txt (line 4))
  Downloading ruff-0.17.1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (20 kB)
Collecting aiodns==4.0.0 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading aiodns-4.0.0-py3-none-any.whl.metadata (7.7 kB)
Collecting aiohasupervisor==0.3.3 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading aiohasupervisor-0.3.3-py3-none-any.whl.metadata (5.0 kB)
Collecting aiohttp==3.13.3 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading aiohttp-3.13.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (8.1 kB)
Collecting aiohttp_cors==0.8.1 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading aiohttp_cors-0.8.1-py3-none-any.whl.metadata (20 kB)
Collecting aiohttp-fast-zlib==0.3.0 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading aiohttp_fast_zlib-0.3.0-py3-none-any.whl.metadata (5.7 kB)
Collecting aiohttp-asyncmdnsresolver==0.1.1 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading aiohttp_asyncmdnsresolver-0.1.1-py3-none-any.whl.metadata (16 kB)
Collecting aiozoneinfo==0.2.3 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading aiozoneinfo-0.2.3-py3-none-any.whl.metadata (5.4 kB)
Collecting annotatedyaml==1.0.2 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading annotatedyaml-1.0.2-cp313-cp313-manylinux_2_36_x86_64.whl.metadata (4.2 kB)
Collecting astral==2.2 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading astral-2.2-py2.py3-none-any.whl.metadata (1.5 kB)
Collecting async-interrupt==1.2.2 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading async_interrupt-1.2.2-py3-none-any.whl.metadata (4.9 kB)
Collecting attrs==25.4.0 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading attrs-25.4.0-py3-none-any.whl.metadata (10 kB)
Collecting atomicwrites-homeassistant==1.4.1 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading atomicwrites_homeassistant-1.4.1-py2.py3-none-any.whl.metadata (6.0 kB)
Collecting audioop-lts==0.2.1 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading audioop_lts-0.2.1-cp313-abi3-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (1.6 kB)
Collecting awesomeversion==25.8.0 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading awesomeversion-25.8.0-py3-none-any.whl.metadata (9.8 kB)
Collecting bcrypt==5.0.0 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading bcrypt-5.0.0-cp39-abi3-manylinux_2_34_x86_64.whl.metadata (10 kB)
Collecting certifi>=2021.5.30 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading certifi-2026.10.18-py3-none-any.whl.metadata (2.5 kB)
Collecting ciso8601==2.3.3 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading ciso8601-2.3.3-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.metadata (24 kB)
Collecting cronsim==2.7 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading cronsim-2.7-py3-none-any.whl.metadata (6.9 kB)
Collecting fnv-hash-fast==1.6.0 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading fnv_hash_fast-1.6.0-cp313-cp313-manylinux_2_36_x86_64.whl.metadata (4.9 kB)
Collecting hass-nabucasa==1.12.0 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading hass_nabucasa-1.12.0-py3-none-any.whl.metadata (4.3 kB)
Collecting httpx==0.28.1 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading httpx-0.28.1-py3-none-any.whl.metadata (7.1 kB)
Collecting home-assistant-bluetooth==1.13.1 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading home_assistant_bluetooth-1.13.1-py3-none-any.whl.metadata (5.4 kB)
Collecting ifaddr==0.2.0 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading ifaddr-0.2.0-py3-none-any.whl.metadata (4.9 kB)
Collecting Jinja2==3.1.6 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading jinja2-3.1.6-py3-none-any.whl.metadata (2.9 kB)
Collecting lru-dict==1.3.0 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading lru-dict-1.3.0.tar.gz (13 kB)
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
Collecting PyJWT==2.10.1 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading PyJWT-2.10.1-py3-none-any.whl.metadata (4.0 kB)
Collecting cryptography==46.0.5 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading cryptography-46.0.5-cp311-abi3-manylinux_2_34_x86_64.whl.metadata (5.7 kB)
Collecting Pillow==12.0.0 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading pillow-12.0.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.metadata (8.8 kB)
Collecting propcache==0.4.1 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading propcache-0.4.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (13 kB)
Collecting pyOpenSSL==25.3.0 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading pyopenssl-25.3.0-py3-none-any.whl.metadata (17 kB)
Collecting orjson==3.11.5 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading orjson-3.11.5-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (41 kB)
Collecting packaging>=23.1 (from homeassistant->-r requirements_test.txt (line 1))
  Using cached packaging-26.3-py3-none-any.whl.metadata (3.5 kB)
Collecting psutil-home-assistant==0.0.1 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading psutil_home_assistant-0.0.1-py3-none-any.whl.metadata (882 bytes)
Collecting python-slugify==8.0.4 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading python_slugify-8.0.4-py2.py3-none-any.whl.metadata (8.5 kB)
Collecting PyYAML==6.0.3 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading pyyaml-6.0.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (2.4 kB)
Collecting requests==2.32.5 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading requests-2.32.5-py3-none-any.whl.metadata (4.9 kB)
Collecting securetar==2025.2.1 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading securetar-2025.2.1-py3-none-any.whl.metadata (2.2 kB)
Collecting SQLAlchemy==2.0.41 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading sqlalchemy-2.0.41-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (9.6 kB)
Collecting standard-aifc==3.13.0 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading standard_aifc-3.13.0-py3-none-any.whl.metadata (969 bytes)
Collecting standard-telnetlib==3.13.0 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading standard_telnetlib-3.13.0-py3-none-any.whl.metadata (868 bytes)
Collecting typing-extensions<5.0,>=4.15.0 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading typing_extensions-4.16.0-py3-none-any.whl.metadata (3.3 kB)
Collecting ulid-transform==1.5.2 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading ulid_transform-1.5.2-cp313-cp313-manylinux_2_36_x86_64.whl.metadata (5.6 kB)
Collecting urllib3>=2.0 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading urllib3-2.8.0-py3-none-any.whl.metadata (7.4 kB)
Collecting uv==0.9.26 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading uv-0.9.26-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (11 kB)
Collecting voluptuous==0.15.2 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading voluptuous-0.15.2-py3-none-any.whl.metadata (20 kB)
Collecting voluptuous-serialize==2.7.0 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading voluptuous_serialize-2.7.0-py3-none-any.whl.metadata (1.9 kB)
Collecting voluptuous-openapi==0.2.0 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading voluptuous_openapi-0.2.0-py3-none-any.whl.metadata (1.7 kB)
Collecting yarl==1.22.0 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading yarl-1.22.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (75 kB)
Collecting webrtc-models==0.3.0 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading webrtc_models-0.3.0-py3-none-any.whl.metadata (2.9 kB)
Collecting zeroconf==0.148.0 (from homeassistant->-r requirements_test.txt (line 1))
  Downloading zeroconf-0.148.0-cp313-cp313-manylinux_2_36_x86_64.whl.metadata (6.3 kB)
Collecting pycares<6,>=5.0.0 (from aiodns==4.0.0->homeassistant->-r requirements_test.txt (line 1))
  Downloading pycares-5.2.0-cp313-cp313-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl.metadata (4.1 kB)
Collecting mashumaro<4.0,>=3.11 (from aiohasupervisor==0.3.3->homeassistant->-r requirements_test.txt (line 1))
  Downloading mashumaro-3.23-py3-none-any.whl.metadata (22 kB)
Collecting aiohappyeyeballs>=2.5.0 (from aiohttp==3.13.3->homeassistant->-r requirements_test.txt (line 1))
  Downloading aiohappyeyeballs-2.7.1-py3-none-any.whl.metadata (5.9 kB)
Collecting aiosignal>=1.4.0 (from aiohttp==3.13.3->homeassistant->-r requirements_test.txt (line 1))
  Downloading aiosignal-1.4.0-py3-none-any.whl.metadata (3.7 kB)
Collecting frozenlist>=1.1.1 (from aiohttp==3.13.3->homeassistant->-r requirements_test.txt (line 1))
  Downloading frozenlist-1.8.0-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.metadata (20 kB)
Collecting multidict<7.0,>=4.5 (from aiohttp==3.13.3->homeassistant->-r requirements_test.txt (line 1))
  Downloading multidict-6.9.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.3 kB)
Collecting idna>=2.0 (from yarl==1.22.0->homeassistant->-r requirements_test.txt (line 1))
  Downloading idna-3.20-py3-none-any.whl.metadata (7.2 kB)
Collecting tzdata>=2024.1 (from aiozoneinfo==0.2.3->homeassistant->-r requirements_test.txt (line 1))
  Downloading tzdata-2026.5-py2.py3-none-any.whl.metadata (1.4 kB)
Collecting pytz (from astral==2.2->homeassistant->-r requirements_test.txt (line 1))
  Downloading pytz-2026.5-py2.py3-none-any.whl.metadata (22 kB)
Collecting cffi>=2.0.0 (from cryptography==46.0.5->homeassistant->-r requirements_test.txt (line 1))
  Downloading cffi-2.1.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.metadata (2.5 kB)
Collecting fnvhash<0.3,>=0.1 (from fnv-hash-fast==1.6.0->homeassistant->-r requirements_test.txt (line 1))
  Downloading fnvhash-0.2.1-py3-none-any.whl.metadata (1.6 kB)
Collecting acme==5.2.2 (from hass-nabucasa==1.12.0->homeassistant->-r requirements_test.txt (line 1))
  Downloading acme-5.2.2-py3-none-any.whl.metadata (1.3 kB)
Collecting async_timeout>=4 (from hass-nabucasa==1.12.0->homeassistant->-r requirements_test.txt (line 1))
  Downloading async_timeout-5.0.1-py3-none-any.whl.metadata (5.1 kB)
Collecting grpcio<2,>=1.75.1 (from hass-nabucasa==1.12.0->homeassistant->-r requirements_test.txt (line 1))
  Downloading grpcio-1.84.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.metadata (3.8 kB)
Collecting icmplib<4,>=3 (from hass-nabucasa==1.12.0->homeassistant->-r requirements_test.txt (line 1))
  Downloading icmplib-3.0.4-py3-none-any.whl.metadata (19 kB)
Collecting josepy<3,>=2 (from hass-nabucasa==1.12.0->homeassistant->-r requirements_test.txt (line 1))
  Downloading josepy-2.2.0-py3-none-any.whl.metadata (1.7 kB)
Collecting pycognito==2024.5.1 (from hass-nabucasa==1.12.0->homeassistant->-r requirements_test.txt (line 1))
  Downloading pycognito-2024.5.1-py3-none-any.whl.metadata (24 kB)
Collecting snitun==0.45.1 (from hass-nabucasa==1.12.0->homeassistant->-r requirements_test.txt (line 1))
  Downloading snitun-0.45.1-py3-none-any.whl.metadata (6.4 kB)
Collecting sentence-stream<2,>=1.2.0 (from hass-nabucasa==1.12.0->homeassistant->-r requirements_test.txt (line 1))
  Downloading sentence_stream-1.3.0-py3-none-any.whl.metadata (1.9 kB)
Collecting pyrfc3339 (from acme==5.2.2->hass-nabucasa==1.12.0->homeassistant->-r requirements_test.txt (line 1))
  Downloading pyrfc3339-2.1.1-py3-none-any.whl.metadata (2.7 kB)
Collecting habluetooth>=3.0 (from home-assistant-bluetooth==1.13.1->homeassistant->-r requirements_test.txt (line 1))
  Downloading habluetooth-7.1.2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
Collecting anyio (from httpx==0.28.1->homeassistant->-r requirements_test.txt (line 1))
  Downloading anyio-4.15.1-py3-none-any.whl.metadata (4.7 kB)
Collecting httpcore==1.* (from httpx==0.28.1->homeassistant->-r requirements_test.txt (line 1))
  Downloading httpcore-1.0.9-py3-none-any.whl.metadata (21 kB)
Collecting MarkupSafe>=2.0 (from Jinja2==3.1.6->homeassistant->-r requirements_test.txt (line 1))
  Downloading markupsafe-3.0.4-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (2.7 kB)
Collecting psutil (from psutil-home-assistant==0.0.1->homeassistant->-r requirements_test.txt (line 1))
  Downloading psutil-7.2.2-cp36-abi3-manylinux2010_x86_64.manylinux_2_12_x86_64.manylinux_2_28_x86_64.whl.metadata (22 kB)
Collecting boto3>=1.10.49 (from pycognito==2024.5.1->hass-nabucasa==1.12.0->homeassistant->-r requirements_test.txt (line 1))
  Downloading boto3-1.43.115-py3-none-any.whl.metadata (6.6 kB)
Collecting envs>=1.3 (from pycognito==2024.5.1->hass-nabucasa==1.12.0->homeassistant->-r requirements_test.txt (line 1))
  Downloading envs-1.4-py3-none-any.whl.metadata (842 bytes)
Collecting text-unidecode>=1.3 (from python-slugify==8.0.4->homeassistant->-r requirements_test.txt (line 1))
  Downloading text_unidecode-1.3-py2.py3-none-any.whl.metadata (2.4 kB)
Collecting charset_normalizer<4,>=2 (from requests==2.32.5->homeassistant->-r requirements_test.txt (line 1))
  Downloading charset_normalizer-3.5.2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (46 kB)
Collecting greenlet>=1 (from SQLAlchemy==2.0.41->homeassistant->-r requirements_test.txt (line 1))
  Downloading greenlet-3.5.6-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.metadata (3.8 kB)
Collecting standard-chunk (from standard-aifc==3.13.0->homeassistant->-r requirements_test.txt (line 1))
  Downloading standard_chunk-3.13.0-py3-none-any.whl.metadata (860 bytes)
Collecting h11>=0.16 (from httpcore==1.*->httpx==0.28.1->homeassistant->-r requirements_test.txt (line 1))
  Downloading h11-0.16.0-py3-none-any.whl.metadata (8.3 kB)
Collecting regex>=2024.11.6 (from sentence-stream<2,>=1.2.0->hass-nabucasa==1.12.0->homeassistant->-r requirements_test.txt (line 1))
  Downloading regex-2026.9.29-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (40 kB)
Collecting coverage==7.10.6 (from pytest-homeassistant-custom-component->-r requirements_test.txt (line 2))
  Downloading coverage-7.10.6-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.metadata (8.9 kB)
Collecting freezegun==1.5.2 (from pytest-homeassistant-custom-component->-r requirements_test.txt (line 2))
  Downloading freezegun-1.5.2-py3-none-any.whl.metadata (13 kB)
Collecting license-expression==30.4.3 (from pytest-homeassistant-custom-component->-r requirements_test.txt (line 2))
  Downloading license_expression-30.4.3-py3-none-any.whl.metadata (11 kB)
Collecting mock-open==1.4.0 (from pytest-homeassistant-custom-component->-r requirements_test.txt (line 2))
  Downloading mock-open-1.4.0.tar.gz (12 kB)
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
Collecting pydantic==2.12.2 (from pytest-homeassistant-custom-component->-r requirements_test.txt (line 2))
  Downloading pydantic-2.12.2-py3-none-any.whl.metadata (85 kB)
Collecting pylint-per-file-ignores==1.4.0 (from pytest-homeassistant-custom-component->-r requirements_test.txt (line 2))
  Downloading pylint_per_file_ignores-1.4.0-py3-none-any.whl.metadata (2.0 kB)
Collecting pipdeptree==2.26.1 (from pytest-homeassistant-custom-component->-r requirements_test.txt (line 2))
  Downloading pipdeptree-2.26.1-py3-none-any.whl.metadata (14 kB)
Collecting pytest-asyncio==1.3.0 (from pytest-homeassistant-custom-component->-r requirements_test.txt (line 2))
  Downloading pytest_asyncio-1.3.0-py3-none-any.whl.metadata (4.1 kB)
Collecting pytest-aiohttp==1.1.0 (from pytest-homeassistant-custom-component->-r requirements_test.txt (line 2))
  Downloading pytest_aiohttp-1.1.0-py3-none-any.whl.metadata (2.7 kB)
Collecting pytest-cov==7.0.0 (from pytest-homeassistant-custom-component->-r requirements_test.txt (line 2))
  Downloading pytest_cov-7.0.0-py3-none-any.whl.metadata (31 kB)
Collecting pytest-freezer==0.4.9 (from pytest-homeassistant-custom-component->-r requirements_test.txt (line 2))
  Downloading pytest_freezer-0.4.9-py3-none-any.whl.metadata (2.1 kB)
Collecting pytest-github-actions-annotate-failures==0.3.0 (from pytest-homeassistant-custom-component->-r requirements_test.txt (line 2))
  Downloading pytest_github_actions_annotate_failures-0.3.0-py3-none-any.whl.metadata (3.3 kB)
Collecting pytest-socket==0.7.0 (from pytest-homeassistant-custom-component->-r requirements_test.txt (line 2))
  Downloading pytest_socket-0.7.0-py3-none-any.whl.metadata (6.7 kB)
Collecting pytest-sugar==1.0.0 (from pytest-homeassistant-custom-component->-r requirements_test.txt (line 2))
  Downloading pytest_sugar-1.0.0-py3-none-any.whl.metadata (4.4 kB)
Collecting pytest-unordered==0.7.0 (from pytest-homeassistant-custom-component->-r requirements_test.txt (line 2))
  Downloading pytest_unordered-0.7.0-py3-none-any.whl.metadata (6.7 kB)
Collecting pytest-picked==0.5.1 (from pytest-homeassistant-custom-component->-r requirements_test.txt (line 2))
  Downloading pytest_picked-0.5.1-py3-none-any.whl.metadata (4.0 kB)
Collecting pytest-xdist==3.8.0 (from pytest-homeassistant-custom-component->-r requirements_test.txt (line 2))
  Downloading pytest_xdist-3.8.0-py3-none-any.whl.metadata (3.0 kB)
Collecting pytest==9.0.0 (from pytest-homeassistant-custom-component->-r requirements_test.txt (line 2))
  Downloading pytest-9.0.0-py3-none-any.whl.metadata (7.6 kB)
Collecting requests-mock==1.12.1 (from pytest-homeassistant-custom-component->-r requirements_test.txt (line 2))
  Downloading requests_mock-1.12.1-py2.py3-none-any.whl.metadata (4.1 kB)
Collecting respx==0.22.0 (from pytest-homeassistant-custom-component->-r requirements_test.txt (line 2))
  Downloading respx-0.22.0-py2.py3-none-any.whl.metadata (4.1 kB)
Collecting syrupy==5.0.0 (from pytest-homeassistant-custom-component->-r requirements_test.txt (line 2))
  Downloading syrupy-5.0.0-py3-none-any.whl.metadata (39 kB)
Collecting tqdm==4.67.1 (from pytest-homeassistant-custom-component->-r requirements_test.txt (line 2))
  Downloading tqdm-4.67.1-py3-none-any.whl.metadata (57 kB)
Collecting paho-mqtt==2.1.0 (from pytest-homeassistant-custom-component->-r requirements_test.txt (line 2))
  Downloading paho_mqtt-2.1.0-py3-none-any.whl.metadata (23 kB)
Collecting numpy==2.3.2 (from pytest-homeassistant-custom-component->-r requirements_test.txt (line 2))
  Downloading numpy-2.3.2-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.metadata (62 kB)
Collecting python-dateutil>=2.7 (from freezegun==1.5.2->pytest-homeassistant-custom-component->-r requirements_test.txt (line 2))
  Downloading python_dateutil-2.9.0.post0-py2.py3-none-any.whl.metadata (8.4 kB)
Collecting boolean.py>=4.0 (from license-expression==30.4.3->pytest-homeassistant-custom-component->-r requirements_test.txt (line 2))
  Downloading boolean_py-5.0-py3-none-any.whl.metadata (2.3 kB)
Requirement already satisfied: pip>=24.2 in /opt/hostedtoolcache/Python/3.13.16/x64/lib/python3.13/site-packages (from pipdeptree==2.26.1->pytest-homeassistant-custom-component->-r requirements_test.txt (line 2)) (26.2.1)
Collecting annotated-types>=0.6.0 (from pydantic==2.12.2->pytest-homeassistant-custom-component->-r requirements_test.txt (line 2))
  Downloading annotated_types-0.8.0-py3-none-any.whl.metadata (15 kB)
Collecting pydantic-core==2.41.4 (from pydantic==2.12.2->pytest-homeassistant-custom-component->-r requirements_test.txt (line 2))
  Downloading pydantic_core-2.41.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (7.3 kB)
Collecting typing-inspection>=0.4.2 (from pydantic==2.12.2->pytest-homeassistant-custom-component->-r requirements_test.txt (line 2))
  Downloading typing_inspection-0.4.4-py3-none-any.whl.metadata (2.6 kB)
Collecting iniconfig>=1.0.1 (from pytest==9.0.0->pytest-homeassistant-custom-component->-r requirements_test.txt (line 2))
  Downloading iniconfig-2.3.1-py3-none-any.whl.metadata (2.8 kB)
Collecting pluggy<2,>=1.5 (from pytest==9.0.0->pytest-homeassistant-custom-component->-r requirements_test.txt (line 2))
  Downloading pluggy-1.7.0-py3-none-any.whl.metadata (5.0 kB)
Collecting pygments>=2.7.2 (from pytest==9.0.0->pytest-homeassistant-custom-component->-r requirements_test.txt (line 2))
  Downloading pygments-2.21.0-py3-none-any.whl.metadata (2.5 kB)
Collecting termcolor>=2.1.0 (from pytest-sugar==1.0.0->pytest-homeassistant-custom-component->-r requirements_test.txt (line 2))
  Downloading termcolor-3.3.0-py3-none-any.whl.metadata (6.5 kB)
Collecting execnet>=2.1 (from pytest-xdist==3.8.0->pytest-homeassistant-custom-component->-r requirements_test.txt (line 2))
  Downloading execnet-2.1.2-py3-none-any.whl.metadata (2.9 kB)
Collecting botocore<1.44.0,>=1.43.115 (from boto3>=1.10.49->pycognito==2024.5.1->hass-nabucasa==1.12.0->homeassistant->-r requirements_test.txt (line 1))
  Downloading botocore-1.43.115-py3-none-any.whl.metadata (5.6 kB)
Collecting jmespath<2.0.0,>=0.7.1 (from boto3>=1.10.49->pycognito==2024.5.1->hass-nabucasa==1.12.0->homeassistant->-r requirements_test.txt (line 1))
  Downloading jmespath-1.1.0-py3-none-any.whl.metadata (7.6 kB)
Collecting s3transfer<0.20.0,>=0.19.0 (from boto3>=1.10.49->pycognito==2024.5.1->hass-nabucasa==1.12.0->homeassistant->-r requirements_test.txt (line 1))
  Downloading s3transfer-0.19.3-py3-none-any.whl.metadata (1.7 kB)
Collecting six>=1.5 (from python-dateutil>=2.7->freezegun==1.5.2->pytest-homeassistant-custom-component->-r requirements_test.txt (line 2))
  Downloading six-1.17.0-py2.py3-none-any.whl.metadata (1.7 kB)
Collecting pycparser (from cffi>=2.0.0->cryptography==46.0.5->homeassistant->-r requirements_test.txt (line 1))
  Downloading pycparser-3.11-py3-none-any.whl.metadata (8.2 kB)
Collecting bleak>=3.0.2 (from habluetooth>=3.0->home-assistant-bluetooth==1.13.1->homeassistant->-r requirements_test.txt (line 1))
  Downloading bleak-3.0.2-py3-none-any.whl.metadata (4.7 kB)
Collecting bleak-retry-connector>=4.7.1 (from habluetooth>=3.0->home-assistant-bluetooth==1.13.1->homeassistant->-r requirements_test.txt (line 1))
  Downloading bleak_retry_connector-4.7.1-py3-none-any.whl.metadata (7.3 kB)
Collecting bluetooth-adapters>=2.4.0 (from habluetooth>=3.0->home-assistant-bluetooth==1.13.1->homeassistant->-r requirements_test.txt (line 1))
  Downloading bluetooth_adapters-2.4.0-py3-none-any.whl.metadata (5.3 kB)
Collecting bluetooth-auto-recovery>=1.6.4 (from habluetooth>=3.0->home-assistant-bluetooth==1.13.1->homeassistant->-r requirements_test.txt (line 1))
  Downloading bluetooth_auto_recovery-1.6.4-py3-none-any.whl.metadata (5.5 kB)
Collecting bluetooth-data-tools>=1.29.24 (from habluetooth>=3.0->home-assistant-bluetooth==1.13.1->homeassistant->-r requirements_test.txt (line 1))
  Downloading bluetooth_data_tools-1.29.24-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (7.4 kB)
Collecting btsocket>=0.3.0 (from habluetooth>=3.0->home-assistant-bluetooth==1.13.1->homeassistant->-r requirements_test.txt (line 1))
  Downloading btsocket-0.3.0-py2.py3-none-any.whl.metadata (7.0 kB)
Collecting dbus-fast>=5.0.22 (from habluetooth>=3.0->home-assistant-bluetooth==1.13.1->homeassistant->-r requirements_test.txt (line 1))
  Downloading dbus_fast-5.2.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (11 kB)
Collecting aiooui>=0.1.1 (from bluetooth-adapters>=2.4.0->habluetooth>=3.0->home-assistant-bluetooth==1.13.1->homeassistant->-r requirements_test.txt (line 1))
  Downloading aiooui-0.1.11-py3-none-any.whl.metadata (6.5 kB)
Collecting uart-devices>=0.1.0 (from bluetooth-adapters>=2.4.0->habluetooth>=3.0->home-assistant-bluetooth==1.13.1->homeassistant->-r requirements_test.txt (line 1))
  Downloading uart_devices-0.1.1-py3-none-any.whl.metadata (4.9 kB)
Collecting usb-devices>=0.4.5 (from bluetooth-adapters>=2.4.0->habluetooth>=3.0->home-assistant-bluetooth==1.13.1->homeassistant->-r requirements_test.txt (line 1))
  Downloading usb_devices-0.5.1-py3-none-any.whl.metadata (5.3 kB)
Collecting PyRIC>=0.1.6.3 (from bluetooth-auto-recovery>=1.6.4->habluetooth>=3.0->home-assistant-bluetooth==1.13.1->homeassistant->-r requirements_test.txt (line 1))
  Downloading PyRIC-0.1.6.3.tar.gz (870 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 870.4/870.4 kB 28.7 MB/s  0:00:00
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
INFO: pip is looking at multiple versions of bluetooth-data-tools to determine which version is compatible with other requirements. This could take a while.
Collecting habluetooth>=3.0 (from home-assistant-bluetooth==1.13.1->homeassistant->-r requirements_test.txt (line 1))
  Downloading habluetooth-7.0.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.26.11-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
Collecting bluetooth-data-tools>=1.29.23 (from habluetooth>=3.0->home-assistant-bluetooth==1.13.1->homeassistant->-r requirements_test.txt (line 1))
  Downloading bluetooth_data_tools-1.29.23-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (7.4 kB)
Collecting habluetooth>=3.0 (from home-assistant-bluetooth==1.13.1->homeassistant->-r requirements_test.txt (line 1))
  Downloading habluetooth-6.26.10-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.26.9-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
INFO: pip is still looking at multiple versions of bluetooth-data-tools to determine which version is compatible with other requirements. This could take a while.
  Downloading habluetooth-6.26.8-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.26.7-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
Collecting bluetooth-data-tools>=1.29.21 (from habluetooth>=3.0->home-assistant-bluetooth==1.13.1->homeassistant->-r requirements_test.txt (line 1))
  Downloading bluetooth_data_tools-1.29.22-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (7.4 kB)
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
  Downloading bluetooth_data_tools-1.29.21.tar.gz (21 kB)
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
Collecting habluetooth>=3.0 (from home-assistant-bluetooth==1.13.1->homeassistant->-r requirements_test.txt (line 1))
  Downloading habluetooth-6.26.6-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.26.5-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
Collecting bluetooth-data-tools>=1.29.18 (from habluetooth>=3.0->home-assistant-bluetooth==1.13.1->homeassistant->-r requirements_test.txt (line 1))
  Downloading bluetooth_data_tools-1.29.20.tar.gz (20 kB)
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
  Downloading bluetooth_data_tools-1.29.19.tar.gz (20 kB)
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
  Downloading bluetooth_data_tools-1.29.18.tar.gz (20 kB)
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
Collecting habluetooth>=3.0 (from home-assistant-bluetooth==1.13.1->homeassistant->-r requirements_test.txt (line 1))
  Downloading habluetooth-6.26.4-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.26.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.26.2.tar.gz (116 kB)
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
  Downloading habluetooth-6.26.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.26.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.25.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.25.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.24.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.23.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.23.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.22.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.21.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.20.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.19.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.19.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.18.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.17.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.16.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.15.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.14.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.13.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.12.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.11.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.10.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.9.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.8.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.8.2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.8.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.8.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.7.9-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.7.8-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.7.7-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.7.6-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.7.5-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.7.4-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.7.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.7.2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
Collecting bluetooth-data-tools>=1.29.7 (from habluetooth>=3.0->home-assistant-bluetooth==1.13.1->homeassistant->-r requirements_test.txt (line 1))
  Downloading bluetooth_data_tools-1.29.17.tar.gz (19 kB)
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
  Downloading bluetooth_data_tools-1.29.16.tar.gz (20 kB)
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
  Downloading bluetooth_data_tools-1.29.15.tar.gz (19 kB)
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
  Downloading bluetooth_data_tools-1.29.14.tar.gz (19 kB)
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
  Downloading bluetooth_data_tools-1.29.13.tar.gz (19 kB)
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
  Downloading bluetooth_data_tools-1.29.12.tar.gz (19 kB)
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
  Downloading bluetooth_data_tools-1.29.11.tar.gz (19 kB)
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
  Downloading bluetooth_data_tools-1.29.10.tar.gz (19 kB)
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
  Downloading bluetooth_data_tools-1.29.9.tar.gz (19 kB)
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
  Downloading bluetooth_data_tools-1.29.8.tar.gz (19 kB)
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
  Downloading bluetooth_data_tools-1.29.7.tar.gz (19 kB)
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
Collecting habluetooth>=3.0 (from home-assistant-bluetooth==1.13.1->homeassistant->-r requirements_test.txt (line 1))
  Downloading habluetooth-6.7.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.7.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.6.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.6.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.5.0.tar.gz (70 kB)
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
  Downloading habluetooth-6.4.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.3.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.3.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.2.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.2.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
  Downloading habluetooth-6.1.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.4 kB)
Collecting bluetooth-data-tools>=1.28.0 (from habluetooth>=3.0->home-assistant-bluetooth==1.13.1->homeassistant->-r requirements_test.txt (line 1))
  Downloading bluetooth_data_tools-1.29.6-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (7.4 kB)
  Downloading bluetooth_data_tools-1.29.5-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (7.4 kB)
  Downloading bluetooth_data_tools-1.29.4.tar.gz (18 kB)
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
  Downloading bluetooth_data_tools-1.29.3.tar.gz (18 kB)
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
  Downloading bluetooth_data_tools-1.29.2.tar.gz (18 kB)
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
  Downloading bluetooth_data_tools-1.29.1.tar.gz (18 kB)
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
  Downloading bluetooth_data_tools-1.29.0.tar.gz (18 kB)
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
  Downloading bluetooth_data_tools-1.28.4-cp313-cp313-manylinux_2_36_x86_64.whl.metadata (5.2 kB)
Downloading homeassistant-2026.2.3-py3-none-any.whl (51.2 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 51.2/51.2 MB 86.1 MB/s  0:00:00
Downloading aiodns-4.0.0-py3-none-any.whl (11 kB)
Downloading aiohasupervisor-0.3.3-py3-none-any.whl (40 kB)
Downloading aiohttp-3.13.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (1.7 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.7/1.7 MB 270.2 MB/s  0:00:00
Downloading orjson-3.11.5-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (138 kB)
Downloading yarl-1.22.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (377 kB)
Downloading aiohttp_asyncmdnsresolver-0.1.1-py3-none-any.whl (13 kB)
Downloading aiohttp_cors-0.8.1-py3-none-any.whl (25 kB)
Downloading aiohttp_fast_zlib-0.3.0-py3-none-any.whl (8.6 kB)
Downloading aiozoneinfo-0.2.3-py3-none-any.whl (8.0 kB)
Downloading annotatedyaml-1.0.2-cp313-cp313-manylinux_2_36_x86_64.whl (69 kB)
Downloading astral-2.2-py2.py3-none-any.whl (30 kB)
Downloading async_interrupt-1.2.2-py3-none-any.whl (8.9 kB)
Downloading atomicwrites_homeassistant-1.4.1-py2.py3-none-any.whl (7.1 kB)
Downloading attrs-25.4.0-py3-none-any.whl (67 kB)
Downloading audioop_lts-0.2.1-cp313-abi3-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (82 kB)
Downloading awesomeversion-25.8.0-py3-none-any.whl (15 kB)
Downloading bcrypt-5.0.0-cp39-abi3-manylinux_2_34_x86_64.whl (278 kB)
Downloading ciso8601-2.3.3-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (41 kB)
Downloading cronsim-2.7-py3-none-any.whl (14 kB)
Downloading cryptography-46.0.5-cp311-abi3-manylinux_2_34_x86_64.whl (4.5 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4.5/4.5 MB 147.2 MB/s  0:00:00
Downloading fnv_hash_fast-1.6.0-cp313-cp313-manylinux_2_36_x86_64.whl (14 kB)
Downloading hass_nabucasa-1.12.0-py3-none-any.whl (89 kB)
Downloading webrtc_models-0.3.0-py3-none-any.whl (7.5 kB)
Downloading acme-5.2.2-py3-none-any.whl (94 kB)
Downloading home_assistant_bluetooth-1.13.1-py3-none-any.whl (7.9 kB)
Downloading httpx-0.28.1-py3-none-any.whl (73 kB)
Downloading ifaddr-0.2.0-py3-none-any.whl (12 kB)
Downloading jinja2-3.1.6-py3-none-any.whl (134 kB)
Downloading pillow-12.0.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (7.0 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 7.0/7.0 MB 118.3 MB/s  0:00:00
Downloading propcache-0.4.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (204 kB)
Downloading psutil_home_assistant-0.0.1-py3-none-any.whl (6.3 kB)
Downloading pycognito-2024.5.1-py3-none-any.whl (26 kB)
Downloading PyJWT-2.10.1-py3-none-any.whl (22 kB)
Downloading pyopenssl-25.3.0-py3-none-any.whl (57 kB)
Downloading python_slugify-8.0.4-py2.py3-none-any.whl (10 kB)
Downloading pyyaml-6.0.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (801 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 801.6/801.6 kB 161.6 MB/s  0:00:00
Downloading requests-2.32.5-py3-none-any.whl (64 kB)
Downloading securetar-2025.2.1-py3-none-any.whl (11 kB)
Downloading snitun-0.45.1-py3-none-any.whl (51 kB)
Downloading sqlalchemy-2.0.41-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.2 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 3.2/3.2 MB 155.7 MB/s  0:00:00
Downloading standard_aifc-3.13.0-py3-none-any.whl (10 kB)
Downloading standard_telnetlib-3.13.0-py3-none-any.whl (10.0 kB)
Downloading ulid_transform-1.5.2-cp313-cp313-manylinux_2_36_x86_64.whl (49 kB)
Downloading uv-0.9.26-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (23.3 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 23.3/23.3 MB 75.3 MB/s  0:00:00
Downloading voluptuous-0.15.2-py3-none-any.whl (31 kB)
Downloading voluptuous_openapi-0.2.0-py3-none-any.whl (10 kB)
Downloading voluptuous_serialize-2.7.0-py3-none-any.whl (7.8 kB)
Downloading zeroconf-0.148.0-cp313-cp313-manylinux_2_36_x86_64.whl (2.1 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.1/2.1 MB 70.5 MB/s  0:00:00
Downloading charset_normalizer-3.5.2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (254 kB)
Downloading fnvhash-0.2.1-py3-none-any.whl (18 kB)
Downloading grpcio-1.84.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (7.2 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 7.2/7.2 MB 153.7 MB/s  0:00:00
Downloading httpcore-1.0.9-py3-none-any.whl (78 kB)
Downloading icmplib-3.0.4-py3-none-any.whl (30 kB)
Downloading idna-3.20-py3-none-any.whl (69 kB)
Downloading josepy-2.2.0-py3-none-any.whl (29 kB)
Downloading mashumaro-3.23-py3-none-any.whl (78 kB)
Downloading multidict-6.9.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (336 kB)
Downloading pycares-5.2.0-cp313-cp313-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl (226 kB)
Downloading sentence_stream-1.3.0-py3-none-any.whl (8.7 kB)
Downloading typing_extensions-4.16.0-py3-none-any.whl (45 kB)
Downloading urllib3-2.8.0-py3-none-any.whl (135 kB)
Downloading pytest_homeassistant_custom_component-0.13.316-py3-none-any.whl (71 kB)
Downloading pytest_timeout-2.4.0-py3-none-any.whl (14 kB)
Downloading coverage-7.10.6-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (251 kB)
Downloading freezegun-1.5.2-py3-none-any.whl (18 kB)
Downloading license_expression-30.4.3-py3-none-any.whl (117 kB)
Downloading numpy-2.3.2-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (16.6 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 16.6/16.6 MB 122.1 MB/s  0:00:00
Downloading paho_mqtt-2.1.0-py3-none-any.whl (67 kB)
Downloading pipdeptree-2.26.1-py3-none-any.whl (32 kB)
Downloading pydantic-2.12.2-py3-none-any.whl (460 kB)
Downloading pydantic_core-2.41.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.1 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.1/2.1 MB 255.0 MB/s  0:00:00
Downloading pylint_per_file_ignores-1.4.0-py3-none-any.whl (4.9 kB)
Downloading pytest-9.0.0-py3-none-any.whl (373 kB)
Downloading pytest_aiohttp-1.1.0-py3-none-any.whl (8.9 kB)
Downloading pytest_asyncio-1.3.0-py3-none-any.whl (15 kB)
Downloading pytest_cov-7.0.0-py3-none-any.whl (22 kB)
Downloading pytest_freezer-0.4.9-py3-none-any.whl (3.2 kB)
Downloading pytest_github_actions_annotate_failures-0.3.0-py3-none-any.whl (6.0 kB)
Downloading pytest_picked-0.5.1-py3-none-any.whl (6.6 kB)
Downloading pytest_socket-0.7.0-py3-none-any.whl (6.8 kB)
Downloading pytest_sugar-1.0.0-py3-none-any.whl (10 kB)
Downloading pytest_unordered-0.7.0-py3-none-any.whl (6.2 kB)
Downloading pytest_xdist-3.8.0-py3-none-any.whl (46 kB)
Downloading requests_mock-1.12.1-py2.py3-none-any.whl (27 kB)
Downloading respx-0.22.0-py2.py3-none-any.whl (25 kB)
Downloading syrupy-5.0.0-py3-none-any.whl (49 kB)
Downloading tqdm-4.67.1-py3-none-any.whl (78 kB)
Downloading pluggy-1.7.0-py3-none-any.whl (27 kB)
Downloading ruff-0.17.1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (10.4 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 10.4/10.4 MB 147.9 MB/s  0:00:00
Downloading aiohappyeyeballs-2.7.1-py3-none-any.whl (15 kB)
Downloading aiosignal-1.4.0-py3-none-any.whl (7.5 kB)
Downloading annotated_types-0.8.0-py3-none-any.whl (13 kB)
Downloading async_timeout-5.0.1-py3-none-any.whl (6.2 kB)
Downloading boolean_py-5.0-py3-none-any.whl (26 kB)
Downloading boto3-1.43.115-py3-none-any.whl (140 kB)
Downloading botocore-1.43.115-py3-none-any.whl (16.1 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 16.1/16.1 MB 149.4 MB/s  0:00:00
Downloading jmespath-1.1.0-py3-none-any.whl (20 kB)
Downloading python_dateutil-2.9.0.post0-py2.py3-none-any.whl (229 kB)
Downloading s3transfer-0.19.3-py3-none-any.whl (90 kB)
Downloading certifi-2026.10.18-py3-none-any.whl (134 kB)
Downloading cffi-2.1.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (221 kB)
Downloading envs-1.4-py3-none-any.whl (10 kB)
Downloading execnet-2.1.2-py3-none-any.whl (40 kB)
Downloading frozenlist-1.8.0-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (234 kB)
Downloading greenlet-3.5.6-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (623 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 623.8/623.8 kB 133.6 MB/s  0:00:00
Downloading h11-0.16.0-py3-none-any.whl (37 kB)
Downloading habluetooth-6.1.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (714 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 714.1/714.1 kB 168.7 MB/s  0:00:00
Downloading bluetooth_data_tools-1.28.4-cp313-cp313-manylinux_2_36_x86_64.whl (140 kB)
Downloading bleak-3.0.2-py3-none-any.whl (146 kB)
Downloading bleak_retry_connector-4.7.1-py3-none-any.whl (19 kB)
Downloading bluetooth_adapters-2.4.0-py3-none-any.whl (20 kB)
Downloading aiooui-0.1.11-py3-none-any.whl (343 kB)
Downloading bluetooth_auto_recovery-1.6.4-py3-none-any.whl (13 kB)
Downloading btsocket-0.3.0-py2.py3-none-any.whl (14 kB)
Downloading dbus_fast-5.2.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (896 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 896.5/896.5 kB 126.0 MB/s  0:00:00
Downloading iniconfig-2.3.1-py3-none-any.whl (7.6 kB)
Downloading markupsafe-3.0.4-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (23 kB)
Using cached packaging-26.3-py3-none-any.whl (129 kB)
Downloading pygments-2.21.0-py3-none-any.whl (1.3 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.3/1.3 MB 236.7 MB/s  0:00:00
Downloading regex-2026.9.29-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (807 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 807.9/807.9 kB 185.5 MB/s  0:00:00
Downloading six-1.17.0-py2.py3-none-any.whl (11 kB)
Downloading termcolor-3.3.0-py3-none-any.whl (7.7 kB)
Downloading text_unidecode-1.3-py2.py3-none-any.whl (78 kB)
Downloading typing_inspection-0.4.4-py3-none-any.whl (14 kB)
Downloading tzdata-2026.5-py2.py3-none-any.whl (347 kB)
Downloading uart_devices-0.1.1-py3-none-any.whl (4.8 kB)
Downloading usb_devices-0.5.1-py3-none-any.whl (5.4 kB)
Downloading anyio-4.15.1-py3-none-any.whl (132 kB)
Downloading psutil-7.2.2-cp36-abi3-manylinux2010_x86_64.manylinux_2_12_x86_64.manylinux_2_28_x86_64.whl (155 kB)
Downloading pycparser-3.11-py3-none-any.whl (51 kB)
Downloading pyrfc3339-2.1.1-py3-none-any.whl (6.5 kB)
Downloading pytz-2026.5-py2.py3-none-any.whl (506 kB)
Downloading standard_chunk-3.13.0-py3-none-any.whl (4.9 kB)
Building wheels for collected packages: lru-dict, mock-open, PyRIC
  Building wheel for lru-dict (pyproject.toml): started
  Building wheel for lru-dict (pyproject.toml): finished with status 'done'
  Created wheel for lru-dict: filename=lru_dict-1.3.0-cp313-cp313-linux_x86_64.whl size=31786 sha256=5af633377ede17c7ad70e30ab97445b1dba3586448e5b3ea82fa867a8e85f1e3
  Stored in directory: /home/runner/.cache/pip/wheels/ba/bd/ab/f0f7fbce8f8129c864c232547eb51631fd4396fa1832bb764b
  Building wheel for mock-open (pyproject.toml): started
  Building wheel for mock-open (pyproject.toml): finished with status 'done'
  Created wheel for mock-open: filename=mock_open-1.4.0-py3-none-any.whl size=14643 sha256=1073dd57722a80d7dbbbab171692801bcc2e8f4040d014708b06240d1693594e
  Stored in directory: /home/runner/.cache/pip/wheels/bf/87/79/b4b2b207763f18de6f81bcf179e724a9da1faf86a199a24b60
  Building wheel for PyRIC (pyproject.toml): started
  Building wheel for PyRIC (pyproject.toml): finished with status 'done'
  Created wheel for PyRIC: filename=pyric-0.1.6.3-py2.py3-none-any.whl size=407978 sha256=a4b13fb42248311600f398a9f4e8665c13180e3cd3a903011f4a16e097bec60b
  Stored in directory: /home/runner/.cache/pip/wheels/b4/9d/e8/a9ecfc2003f256579ac6b252c19a68ad41533502ef58e7e689
Successfully built lru-dict mock-open PyRIC
Installing collected packages: text-unidecode, standard-telnetlib, standard-chunk, pytz, PyRIC, mock-open, ifaddr, ciso8601, btsocket, boolean.py, zeroconf, voluptuous, uv, usb-devices, urllib3, ulid-transform, uart-devices, tzdata, typing-extensions, tqdm, termcolor, six, ruff, regex, PyYAML, python-slugify, pyrfc3339, pylint-per-file-ignores, PyJWT, pygments, pycparser, psutil, propcache, pluggy, Pillow, paho-mqtt, packaging, orjson, numpy, multidict, MarkupSafe, lru-dict, license-expression, jmespath, iniconfig, idna, icmplib, h11, greenlet, frozenlist, fnvhash, execnet, envs, dbus-fast, cronsim, coverage, charset_normalizer, certifi, bcrypt, awesomeversion, audioop-lts, attrs, atomicwrites-homeassistant, async_timeout, async-interrupt, astral, annotated-types, aiooui, aiohappyeyeballs, yarl, voluptuous-serialize, voluptuous-openapi, typing-inspection, standard-aifc, SQLAlchemy, sentence-stream, requests, python-dateutil, pytest, pydantic-core, psutil-home-assistant, pipdeptree, mashumaro, Jinja2, httpcore, grpcio, fnv-hash-fast, cffi, bleak, anyio, annotatedyaml, aiozoneinfo, aiosignal, webrtc-models, syrupy, requests-mock, pytest-xdist, pytest-unordered, pytest-timeout, pytest-sugar, pytest-socket, pytest-picked, pytest-github-actions-annotate-failures, pytest-cov, pytest-asyncio, pydantic, pycares, httpx, freezegun, cryptography, botocore, bluetooth-adapters, aiohttp, snitun, securetar, s3transfer, respx, pytest-freezer, pytest-aiohttp, pyOpenSSL, josepy, bluetooth-data-tools, bluetooth-auto-recovery, bleak-retry-connector, aiohttp-fast-zlib, aiohttp_cors, aiohasupervisor, aiodns, habluetooth, boto3, aiohttp-asyncmdnsresolver, acme, pycognito, home-assistant-bluetooth, hass-nabucasa, homeassistant, pytest-homeassistant-custom-component

Successfully installed Jinja2-3.1.6 MarkupSafe-3.0.4 Pillow-12.0.0 PyJWT-2.10.1 PyRIC-0.1.6.3 PyYAML-6.0.3 SQLAlchemy-2.0.41 acme-5.2.2 aiodns-4.0.0 aiohappyeyeballs-2.7.1 aiohasupervisor-0.3.3 aiohttp-3.13.3 aiohttp-asyncmdnsresolver-0.1.1 aiohttp-fast-zlib-0.3.0 aiohttp_cors-0.8.1 aiooui-0.1.11 aiosignal-1.4.0 aiozoneinfo-0.2.3 annotated-types-0.8.0 annotatedyaml-1.0.2 anyio-4.15.1 astral-2.2 async-interrupt-1.2.2 async_timeout-5.0.1 atomicwrites-homeassistant-1.4.1 attrs-25.4.0 audioop-lts-0.2.1 awesomeversion-25.8.0 bcrypt-5.0.0 bleak-3.0.2 bleak-retry-connector-4.7.1 bluetooth-adapters-2.4.0 bluetooth-auto-recovery-1.6.4 bluetooth-data-tools-1.28.4 boolean.py-5.0 boto3-1.43.115 botocore-1.43.115 btsocket-0.3.0 certifi-2026.10.18 cffi-2.1.1 charset_normalizer-3.5.2 ciso8601-2.3.3 coverage-7.10.6 cronsim-2.7 cryptography-46.0.5 dbus-fast-5.2.0 envs-1.4 execnet-2.1.2 fnv-hash-fast-1.6.0 fnvhash-0.2.1 freezegun-1.5.2 frozenlist-1.8.0 greenlet-3.5.6 grpcio-1.84.0 h11-0.16.0 habluetooth-6.1.0 hass-nabucasa-1.12.0 home-assistant-bluetooth-1.13.1 homeassistant-2026.2.3 httpcore-1.0.9 httpx-0.28.1 icmplib-3.0.4 idna-3.20 ifaddr-0.2.0 iniconfig-2.3.1 jmespath-1.1.0 josepy-2.2.0 license-expression-30.4.3 lru-dict-1.3.0 mashumaro-3.23 mock-open-1.4.0 multidict-6.9.1 numpy-2.3.2 orjson-3.11.5 packaging-26.3 paho-mqtt-2.1.0 pipdeptree-2.26.1 pluggy-1.7.0 propcache-0.4.1 psutil-7.2.2 psutil-home-assistant-0.0.1 pyOpenSSL-25.3.0 pycares-5.2.0 pycognito-2024.5.1 pycparser-3.11 pydantic-2.12.2 pydantic-core-2.41.4 pygments-2.21.0 pylint-per-file-ignores-1.4.0 pyrfc3339-2.1.1 pytest-9.0.0 pytest-aiohttp-1.1.0 pytest-asyncio-1.3.0 pytest-cov-7.0.0 pytest-freezer-0.4.9 pytest-github-actions-annotate-failures-0.3.0 pytest-homeassistant-custom-component-0.13.316 pytest-picked-0.5.1 pytest-socket-0.7.0 pytest-sugar-1.0.0 pytest-timeout-2.4.0 pytest-unordered-0.7.0 pytest-xdist-3.8.0 python-dateutil-2.9.0.post0 python-slugify-8.0.4 pytz-2026.5 regex-2026.9.29 requests-2.32.5 requests-mock-1.12.1 respx-0.22.0 ruff-0.17.1 s3transfer-0.19.3 securetar-2025.2.1 sentence-stream-1.3.0 six-1.17.0 snitun-0.45.1 standard-aifc-3.13.0 standard-chunk-3.13.0 standard-telnetlib-3.13.0 syrupy-5.0.0 termcolor-3.3.0 text-unidecode-1.3 tqdm-4.67.1 typing-extensions-4.16.0 typing-inspection-0.4.4 tzdata-2026.5 uart-devices-0.1.1 ulid-transform-1.5.2 urllib3-2.8.0 usb-devices-0.5.1 uv-0.9.26 voluptuous-0.15.2 voluptuous-openapi-0.2.0 voluptuous-serialize-2.7.0 webrtc-models-0.3.0 yarl-1.22.0 zeroconf-0.148.0
▸ Run constraints="$(python -c 'import homeassistant, pathlib; print(pathlib.Path(homeassistant.__file__).parent / "package_constraints.txt")')"
constraints="$(python -c 'import homeassistant, pathlib; print(pathlib.Path(homeassistant.__file__).parent / "package_constraints.txt")')"
pip install -c "$constraints" -r requirements_test_bluetooth.txt
shell: /usr/bin/bash -e {0}
env:
  pythonLocation: /opt/hostedtoolcache/Python/3.13.16/x64
  PKG_CONFIG_PATH: /opt/hostedtoolcache/Python/3.13.16/x64/lib/pkgconfig
  Python_ROOT_DIR: /opt/hostedtoolcache/Python/3.13.16/x64
  Python2_ROOT_DIR: /opt/hostedtoolcache/Python/3.13.16/x64
  Python3_ROOT_DIR: /opt/hostedtoolcache/Python/3.13.16/x64
  LD_LIBRARY_PATH: /opt/hostedtoolcache/Python/3.13.16/x64/lib
Collecting aiousbwatcher (from -r requirements_test_bluetooth.txt (line 4))
  Downloading aiousbwatcher-1.1.1-py3-none-any.whl.metadata (4.2 kB)
Collecting bleak (from -r requirements_test_bluetooth.txt (line 5))
  Downloading bleak-2.1.1-py3-none-any.whl.metadata (5.2 kB)
Collecting bleak-retry-connector (from -r requirements_test_bluetooth.txt (line 6))
  Downloading bleak_retry_connector-4.4.3-py3-none-any.whl.metadata (7.4 kB)
Collecting bluetooth-adapters (from -r requirements_test_bluetooth.txt (line 7))
  Downloading bluetooth_adapters-2.1.0-py3-none-any.whl.metadata (5.3 kB)
Collecting bluetooth-auto-recovery (from -r requirements_test_bluetooth.txt (line 8))
  Downloading bluetooth_auto_recovery-1.5.3-py3-none-any.whl.metadata (5.5 kB)
Requirement already satisfied: bluetooth-data-tools in /opt/hostedtoolcache/Python/3.13.16/x64/lib/python3.13/site-packages (from -r requirements_test_bluetooth.txt (line 9)) (1.28.4)
Collecting dbus-fast (from -r requirements_test_bluetooth.txt (line 10))
  Downloading dbus_fast-3.1.2-cp313-cp313-manylinux_2_36_x86_64.whl.metadata (10 kB)
Collecting habluetooth (from -r requirements_test_bluetooth.txt (line 11))
  Downloading habluetooth-5.8.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.3 kB)
Collecting pyserial (from -r requirements_test_bluetooth.txt (line 12))
  Downloading pyserial-3.5-py2.py3-none-any.whl.metadata (1.6 kB)
Collecting pyudev (from -r requirements_test_bluetooth.txt (line 13))
  Downloading pyudev-0.24.5-py3-none-any.whl.metadata (4.4 kB)
Collecting serialx (from -r requirements_test_bluetooth.txt (line 14))
  Downloading serialx-1.14.0-py3-none-any.whl.metadata (5.0 kB)
Collecting asyncinotify>=4.2.0 (from aiousbwatcher->-r requirements_test_bluetooth.txt (line 4))
  Downloading asyncinotify-4.4.4-py3-none-any.whl.metadata (7.0 kB)
Requirement already satisfied: aiooui>=0.1.1 in /opt/hostedtoolcache/Python/3.13.16/x64/lib/python3.13/site-packages (from bluetooth-adapters->-r requirements_test_bluetooth.txt (line 7)) (0.1.11)
Requirement already satisfied: uart-devices>=0.1.0 in /opt/hostedtoolcache/Python/3.13.16/x64/lib/python3.13/site-packages (from bluetooth-adapters->-r requirements_test_bluetooth.txt (line 7)) (0.1.1)
Requirement already satisfied: usb-devices>=0.4.5 in /opt/hostedtoolcache/Python/3.13.16/x64/lib/python3.13/site-packages (from bluetooth-adapters->-r requirements_test_bluetooth.txt (line 7)) (0.5.1)
Requirement already satisfied: PyRIC>=0.1.6.3 in /opt/hostedtoolcache/Python/3.13.16/x64/lib/python3.13/site-packages (from bluetooth-auto-recovery->-r requirements_test_bluetooth.txt (line 8)) (0.1.6.3)
Requirement already satisfied: btsocket>=0.2.0 in /opt/hostedtoolcache/Python/3.13.16/x64/lib/python3.13/site-packages (from bluetooth-auto-recovery->-r requirements_test_bluetooth.txt (line 8)) (0.3.0)
Requirement already satisfied: cryptography>=41.0.3 in /opt/hostedtoolcache/Python/3.13.16/x64/lib/python3.13/site-packages (from bluetooth-data-tools->-r requirements_test_bluetooth.txt (line 9)) (46.0.5)
Requirement already satisfied: async-interrupt>=1.1.1 in /opt/hostedtoolcache/Python/3.13.16/x64/lib/python3.13/site-packages (from habluetooth->-r requirements_test_bluetooth.txt (line 11)) (1.2.2)
Requirement already satisfied: typing-extensions>=4.13.0 in /opt/hostedtoolcache/Python/3.13.16/x64/lib/python3.13/site-packages (from serialx->-r requirements_test_bluetooth.txt (line 14)) (4.16.0)
Requirement already satisfied: cffi>=2.0.0 in /opt/hostedtoolcache/Python/3.13.16/x64/lib/python3.13/site-packages (from cryptography>=41.0.3->bluetooth-data-tools->-r requirements_test_bluetooth.txt (line 9)) (2.1.1)
Requirement already satisfied: pycparser in /opt/hostedtoolcache/Python/3.13.16/x64/lib/python3.13/site-packages (from cffi>=2.0.0->cryptography>=41.0.3->bluetooth-data-tools->-r requirements_test_bluetooth.txt (line 9)) (3.11)
Downloading aiousbwatcher-1.1.1-py3-none-any.whl (4.9 kB)
Downloading bleak-2.1.1-py3-none-any.whl (141 kB)
Downloading bleak_retry_connector-4.4.3-py3-none-any.whl (18 kB)
Downloading bluetooth_adapters-2.1.0-py3-none-any.whl (20 kB)
Downloading bluetooth_auto_recovery-1.5.3-py3-none-any.whl (11 kB)
Downloading dbus_fast-3.1.2-cp313-cp313-manylinux_2_36_x86_64.whl (812 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 812.5/812.5 kB 26.6 MB/s  0:00:00
Downloading habluetooth-5.8.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (699 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 699.6/699.6 kB 39.7 MB/s  0:00:00
Downloading pyserial-3.5-py2.py3-none-any.whl (90 kB)
Downloading pyudev-0.24.5-py3-none-any.whl (60 kB)
Downloading serialx-1.14.0-py3-none-any.whl (86 kB)
Downloading asyncinotify-4.4.4-py3-none-any.whl (20 kB)
Installing collected packages: pyserial, serialx, pyudev, dbus-fast, asyncinotify, bleak, aiousbwatcher, bluetooth-adapters, bluetooth-auto-recovery, bleak-retry-connector, habluetooth
  Attempting uninstall: dbus-fast
    Found existing installation: dbus-fast 5.2.0
    Uninstalling dbus-fast-5.2.0:
      Successfully uninstalled dbus-fast-5.2.0
  Attempting uninstall: bleak
    Found existing installation: bleak 3.0.2
    Uninstalling bleak-3.0.2:
      Successfully uninstalled bleak-3.0.2
  Attempting uninstall: bluetooth-adapters
    Found existing installation: bluetooth-adapters 2.4.0
    Uninstalling bluetooth-adapters-2.4.0:
      Successfully uninstalled bluetooth-adapters-2.4.0
  Attempting uninstall: bluetooth-auto-recovery
    Found existing installation: bluetooth-auto-recovery 1.6.4
    Uninstalling bluetooth-auto-recovery-1.6.4:
      Successfully uninstalled bluetooth-auto-recovery-1.6.4
  Attempting uninstall: bleak-retry-connector
    Found existing installation: bleak-retry-connector 4.7.1
    Uninstalling bleak-retry-connector-4.7.1:
      Successfully uninstalled bleak-retry-connector-4.7.1
  Attempting uninstall: habluetooth
    Found existing installation: habluetooth 6.1.0
    Uninstalling habluetooth-6.1.0:
      Successfully uninstalled habluetooth-6.1.0

Successfully installed aiousbwatcher-1.1.1 asyncinotify-4.4.4 bleak-2.1.1 bleak-retry-connector-4.4.3 bluetooth-adapters-2.1.0 bluetooth-auto-recovery-1.5.3 dbus-fast-3.1.2 habluetooth-5.8.0 pyserial-3.5 pyudev-0.24.5 serialx-1.14.0
▸ Run ruff check .
ruff check .
shell: /usr/bin/bash -e {0}
env:
  pythonLocation: /opt/hostedtoolcache/Python/3.13.16/x64
  PKG_CONFIG_PATH: /opt/hostedtoolcache/Python/3.13.16/x64/lib/pkgconfig
  Python_ROOT_DIR: /opt/hostedtoolcache/Python/3.13.16/x64
  Python2_ROOT_DIR: /opt/hostedtoolcache/Python/3.13.16/x64
  Python3_ROOT_DIR: /opt/hostedtoolcache/Python/3.13.16/x64
  LD_LIBRARY_PATH: /opt/hostedtoolcache/Python/3.13.16/x64/lib
All checks passed!
▸ Run ruff format --check .
ruff format --check .
shell: /usr/bin/bash -e {0}
env:
  pythonLocation: /opt/hostedtoolcache/Python/3.13.16/x64
  PKG_CONFIG_PATH: /opt/hostedtoolcache/Python/3.13.16/x64/lib/pkgconfig
  Python_ROOT_DIR: /opt/hostedtoolcache/Python/3.13.16/x64
  Python2_ROOT_DIR: /opt/hostedtoolcache/Python/3.13.16/x64
  Python3_ROOT_DIR: /opt/hostedtoolcache/Python/3.13.16/x64
  LD_LIBRARY_PATH: /opt/hostedtoolcache/Python/3.13.16/x64/lib
42 files already formatted
▸ Run pytest -q --timeout=60
pytest -q --timeout=60
shell: /usr/bin/bash -e {0}
env:
  pythonLocation: /opt/hostedtoolcache/Python/3.13.16/x64
  PKG_CONFIG_PATH: /opt/hostedtoolcache/Python/3.13.16/x64/lib/pkgconfig
  Python_ROOT_DIR: /opt/hostedtoolcache/Python/3.13.16/x64
  Python2_ROOT_DIR: /opt/hostedtoolcache/Python/3.13.16/x64
  Python3_ROOT_DIR: /opt/hostedtoolcache/Python/3.13.16/x64
  LD_LIBRARY_PATH: /opt/hostedtoolcache/Python/3.13.16/x64/lib
........................................................................ [ 38%]
........................................................................ [ 77%]
Error: test_esp32_serial_log_skips_chatter_and_reads_census_lines

FileNotFoundError: [Errno 2] No such file or directory: '/home/runner/work/govee-bluetooth/govee-bluetooth/tests/fixtures/esp32_usb.log'
Error: test_sources_merge_per_device_and_observations_count

FileNotFoundError: [Errno 2] No such file or directory: '/home/runner/work/govee-bluetooth/govee-bluetooth/tests/fixtures/esp32_usb.log'
............................FF...........                                [100%]
=================================== FAILURES ===================================
__________ test_esp32_serial_log_skips_chatter_and_reads_census_lines __________

report = <module 'govee_report' from '/home/runner/work/govee-bluetooth/govee-bluetooth/tools/govee_report.py'>

    def test_esp32_serial_log_skips_chatter_and_reads_census_lines(report) -> None:
>       doc = _doc(report, "esp32_usb.log")
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/test_report.py:89:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
tests/test_report.py:30: in _doc
    report.load_input(evidence, FIXTURES / name, source=None)
tools/govee_report.py:302: in load_input
    ingest_records(evidence, read_jsonl(path), source=source, label=path.name)
                             ^^^^^^^^^^^^^^^^
tools/govee_report.py:222: in read_jsonl
    for line in path.read_text(encoding="utf-8", errors="replace").splitlines():
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
/opt/hostedtoolcache/Python/3.13.16/x64/lib/python3.13/pathlib/_local.py:546: in read_text
    return PathBase.read_text(self, encoding, errors, newline)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
/opt/hostedtoolcache/Python/3.13.16/x64/lib/python3.13/pathlib/_abc.py:632: in read_text
    with self.open(mode='r', encoding=encoding, errors=errors, newline=newline) as f:
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = PosixPath('/home/runner/work/govee-bluetooth/govee-bluetooth/tests/fixtures/esp32_usb.log')
mode = 'r', buffering = -1, encoding = 'utf-8', errors = 'replace'
newline = None

    def open(self, mode='r', buffering=-1, encoding=None,
             errors=None, newline=None):
        """
        Open the file pointed to by this path and return a file object, as
        the built-in open() function does.
        """
        if "b" not in mode:
            encoding = io.text_encoding(encoding)
>       return io.open(self, mode, buffering, encoding, errors, newline)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E       FileNotFoundError: [Errno 2] No such file or directory: '/home/runner/work/govee-bluetooth/govee-bluetooth/tests/fixtures/esp32_usb.log'

/opt/hostedtoolcache/Python/3.13.16/x64/lib/python3.13/pathlib/_local.py:537: FileNotFoundError
_____________ test_sources_merge_per_device_and_observations_count _____________

report = <module 'govee_report' from '/home/runner/work/govee-bluetooth/govee-bluetooth/tools/govee_report.py'>

    def test_sources_merge_per_device_and_observations_count(report) -> None:
>       doc = _doc(
            report,
            "dance_party_census.jsonl",
            "esp32_usb.log",
            observe=[
                "a4:c1:38:00:00:01=whole strip went dark blue on the 0x15 write;capability=rgb;outcome=worked"
            ],
        )

tests/test_report.py:99:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
tests/test_report.py:30: in _doc
    report.load_input(evidence, FIXTURES / name, source=None)
tools/govee_report.py:302: in load_input
    ingest_records(evidence, read_jsonl(path), source=source, label=path.name)
                             ^^^^^^^^^^^^^^^^
tools/govee_report.py:222: in read_jsonl
    for line in path.read_text(encoding="utf-8", errors="replace").splitlines():
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
/opt/hostedtoolcache/Python/3.13.16/x64/lib/python3.13/pathlib/_local.py:546: in read_text
    return PathBase.read_text(self, encoding, errors, newline)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
/opt/hostedtoolcache/Python/3.13.16/x64/lib/python3.13/pathlib/_abc.py:632: in read_text
    with self.open(mode='r', encoding=encoding, errors=errors, newline=newline) as f:
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = PosixPath('/home/runner/work/govee-bluetooth/govee-bluetooth/tests/fixtures/esp32_usb.log')
mode = 'r', buffering = -1, encoding = 'utf-8', errors = 'replace'
newline = None

    def open(self, mode='r', buffering=-1, encoding=None,
             errors=None, newline=None):
        """
        Open the file pointed to by this path and return a file object, as
        the built-in open() function does.
        """
        if "b" not in mode:
            encoding = io.text_encoding(encoding)
>       return io.open(self, mode, buffering, encoding, errors, newline)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E       FileNotFoundError: [Errno 2] No such file or directory: '/home/runner/work/govee-bluetooth/govee-bluetooth/tests/fixtures/esp32_usb.log'

/opt/hostedtoolcache/Python/3.13.16/x64/lib/python3.13/pathlib/_local.py:537: FileNotFoundError
=========================== short test summary info ============================
FAILED tests/test_report.py::test_esp32_serial_log_skips_chatter_and_reads_census_lines - FileNotFoundError: [Errno 2] No such file or directory: '/home/runner/work/govee-bluetooth/govee-bluetooth/tests/fixtures/esp32_usb.log'
FAILED tests/test_report.py::test_sources_merge_per_device_and_observations_count - FileNotFoundError: [Errno 2] No such file or directory: '/home/runner/work/govee-bluetooth/govee-bluetooth/tests/fixtures/esp32_usb.log'
2 failed, 183 passed in 11.75s
Error: Process completed with exit code 1.
Post job cleanup.
[command]/usr/bin/git version
git version 2.55.0
Temporarily overriding HOME='/home/runner/work/_temp/f55839d8-efd1-4d43-8e74-3dd8e4a44aa1' before making global git config changes
Adding repository directory to the temporary git global config as a safe directory
[command]/usr/bin/git config --global --add safe.directory /home/runner/work/govee-bluetooth/govee-bluetooth
[command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand
[command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :"
[command]/usr/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader
http.https://github.com/.extraheader
[command]/usr/bin/git config --local --unset-all http.https://github.com/.extraheader
[command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.https\:\/\/github\.com\/\.extraheader' && git config --local --unset-all 'http.https://github.com/.extraheader' || :"
[command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir:
[command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url
Cleaning up orphan processes
Warning: Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/checkout@v4, actions/setup-python@v5. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/