fix(build): stop stripping numpy.lib/linalg from site-packages
Lint & Test / test (push) Successful in 2m57s
Lint & Test / test (push) Successful in 2m57s
numpy's own __init__.py imports lib and matrixlib (which in turn imports numpy.linalg via defmatrix.py). Removing any of these submodules to save dist size makes `import numpy` raise ModuleNotFoundError on the target, which cascades into every wled_controller import. Symptom: v0.0.0.dev0 Windows installer showed a tray icon but uvicorn died silently in its background thread and port 8080 never listened — browser got ERR_CONNECTION_REFUSED. Keep stripping: polynomial, distutils, f2py, typing, _pyinstaller. These are genuinely unused by numpy's own import chain.
This commit is contained in:
+6
-2
@@ -110,8 +110,12 @@ cleanup_site_packages() {
|
||||
fi
|
||||
|
||||
# ── NumPy ────────────────────────────────────────────────
|
||||
# Remove unused submodules (only core, fft, random are used)
|
||||
for mod in polynomial linalg ma lib distutils f2py typing _pyinstaller; do
|
||||
# Only strip modules that are safely unused by numpy's own import chain.
|
||||
# DO NOT strip: lib, linalg, ma, matrixlib — numpy.__init__ imports them
|
||||
# transitively (e.g. matrixlib → defmatrix → linalg), so removing any of
|
||||
# these breaks `import numpy` itself, cascading into every downstream
|
||||
# module. Learned the hard way in the v0.0.0.dev0 Windows build.
|
||||
for mod in polynomial distutils f2py typing _pyinstaller; do
|
||||
rm -rf "$sp_dir/numpy/$mod" 2>/dev/null || true
|
||||
done
|
||||
rm -rf "$sp_dir/numpy/tests" "$sp_dir/numpy/*/tests" 2>/dev/null || true
|
||||
|
||||
Reference in New Issue
Block a user