Skip to content

fix: collect the packages artifacts import into frozen builds - #407

Merged
abrignoni merged 1 commit into
mainfrom
fix/frozen-build-hidden-imports
Aug 11, 2026
Merged

fix: collect the packages artifacts import into frozen builds#407
abrignoni merged 1 commit into
mainfrom
fix/frozen-build-hidden-imports

Conversation

@abrignoni

Copy link
Copy Markdown
Owner

Pre-flight for the test_builds workflow port, fixing the same frozen-build defect class ALEAPP #1097 fixed: artifacts are bundled as data files and imported from disk at runtime, so PyInstaller's import-graph analysis never sees what they import, and the existing hook-plugin_loader.py never fires (it targets a bare plugin_loader module; the loader moved to scripts.plugin_loader).

What was missing, found by enumerating every third-party import across scripts/ against the spec lists:

  • bs4 (chromeReadingList, fbigPhotos and others import it; nothing else pulls it into the graph)
  • every leapp_functions.data_sources module artifacts import
  • simplekml in the four non-Windows specs only (the Windows specs had it)
  • pdfminer: the Kik artifact imports it lazily with a graceful fallback, so a frozen build without it silently loses PDF parsing that dev runs have

All six specs now collect leapp_functions, PIL and pdfminer wholesale and add bs4. Verified locally: built rleapp_macOS.spec on Python 3.14 with these changes and ran the frozen CLI end to end (--help plus an empty-input run): 385 modules loaded, exit 0, no import errors.

🤖 Generated with Claude Code

Same defect class ALEAPP PR #1097 fixed: artifacts are bundled as data
files and imported from disk at runtime, so PyInstaller never sees their
imports, and hook-plugin_loader.py targets a bare plugin_loader module
that moved to scripts.plugin_loader, so it never fires. The hand-kept
hiddenimports lists were missing bs4 and every leapp_functions
submodule artifacts import, the non-Windows specs were additionally
missing simplekml, and pdfminer (imported lazily by the Kik artifact
with a graceful fallback) was absent everywhere, so frozen builds
silently lost a capability dev runs have.

All six specs now collect leapp_functions, PIL and pdfminer wholesale
and add bs4, with simplekml leveled into the four specs missing it.
Verified locally by building rleapp_macOS.spec on Python 3.14 and
running the frozen CLI end to end: 385 modules loaded, exit 0.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@abrignoni
abrignoni merged commit 3d09bec into main Aug 11, 2026
5 checks passed
@abrignoni
abrignoni deleted the fix/frozen-build-hidden-imports branch August 11, 2026 00:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant