Commit 671566e
ws049: fix CI build break — gate pywifi to Python <3.12 (no 3.12 release)
The release CI (GitHub Actions, Python 3.12) failed at `pip install
-r requirements-windows.txt` with "No matching distribution found for
pywifi>=1.1.12": pywifi's latest (1.1.12) declares Requires-Python <3.12, so on
the 3.12 runner every version is filtered out. Pre-existing latent break
(identical on master; unrelated to the ws046-048 agent-code changes) that only
surfaces on a clean 3.12 install.
pywifi is an OPTIONAL hardware-fingerprint signal (Windows WiFi SSID scan) the
code already degrades gracefully without (hardware_detector.py wraps
`from pywifi import PyWiFi` in try/except → "skipping Windows WiFi scan"). So:
- requirements-windows.txt: add `and python_version < "3.12"` so pip skips it on
3.12 instead of failing the whole install.
- hook-pywifi.py: only declare the hidden imports when pywifi is importable, so
PyInstaller doesn't warn about bundling a missing module on 3.12.
Tradeoff: 3.12 builds ship without the WiFi-scan fingerprint signal (gracefully
skipped). Alternative if that signal matters: pin CI Python to 3.11.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>1 parent 63a5d6d commit 671566e
2 files changed
Lines changed: 23 additions & 8 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
6 | 6 | | |
7 | 7 | | |
8 | 8 | | |
9 | | - | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
10 | 14 | | |
11 | | - | |
12 | | - | |
13 | | - | |
14 | | - | |
15 | | - | |
16 | | - | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
17 | 26 | | |
18 | 27 | | |
19 | 28 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
7 | | - | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
8 | 14 | | |
0 commit comments