From 5a79e84fbb94acf13254933872967bfb3ddb70b8 Mon Sep 17 00:00:00 2001 From: Victor Giers Date: Thu, 14 May 2026 10:47:58 +0200 Subject: [PATCH] Update PyInstaller spec: Adjust data paths, explicitly list hidden imports for diffusers/transformers, and expand package exclusions --- 3D Model Generator.spec | 68 ++++++++++++++++++++++++++++++++++++++--- 1 file changed, 63 insertions(+), 5 deletions(-) diff --git a/3D Model Generator.spec b/3D Model Generator.spec index c189a1d..ab5074e 100644 --- a/3D Model Generator.spec +++ b/3D Model Generator.spec @@ -2,13 +2,43 @@ from PyInstaller.utils.hooks import collect_data_files from PyInstaller.utils.hooks import collect_submodules -datas = [('web', 'web'), ('icon.png', '.'), ('scene_setup.py', '.')] -hiddenimports = ['image_to_3d', 'generate_equirect'] +datas = [('web/index.html', 'web'), ('icon.png', '.'), ('scene_setup.py', '.')] +hiddenimports = [ + 'image_to_3d', + 'generate_equirect', + 'diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion', + 'diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion_inpaint', + 'diffusers.pipelines.stable_diffusion.pipeline_output', + 'diffusers.models.autoencoders.autoencoder_kl', + 'diffusers.models.autoencoders.vae', + 'diffusers.models.unets.unet_2d_condition', + 'diffusers.models.unets.unet_2d_blocks', + 'diffusers.schedulers.scheduling_ddim', + 'diffusers.schedulers.scheduling_ddpm', + 'diffusers.schedulers.scheduling_dpmsolver_multistep', + 'diffusers.schedulers.scheduling_euler_discrete', + 'diffusers.schedulers.scheduling_lms_discrete', + 'diffusers.schedulers.scheduling_pndm', + 'transformers.models.auto.configuration_auto', + 'transformers.models.auto.feature_extraction_auto', + 'transformers.models.auto.image_processing_auto', + 'transformers.models.auto.modeling_auto', + 'transformers.models.auto.tokenization_auto', + 'transformers.models.clip.configuration_clip', + 'transformers.models.clip.image_processing_clip', + 'transformers.models.clip.modeling_clip', + 'transformers.models.clip.processing_clip', + 'transformers.models.clip.tokenization_clip', + 'transformers.models.clip.tokenization_clip_fast', + 'safetensors.torch', +] datas += collect_data_files('diffusers') datas += collect_data_files('transformers') datas += collect_data_files('huggingface_hub') -hiddenimports += collect_submodules('diffusers') -hiddenimports += collect_submodules('transformers') +hiddenimports += collect_submodules( + 'diffusers.schedulers', + filter=lambda name: '.scheduling_' in name and '_flax' not in name, +) a = Analysis( @@ -20,7 +50,35 @@ a = Analysis( hookspath=[], hooksconfig={}, runtime_hooks=[], - excludes=['gi', 'PyQt5', 'PyQt6', 'PySide2', 'PySide6', 'tkinter'], + excludes=[ + 'gi', + 'PyQt5', + 'PyQt6', + 'PySide2', + 'PySide6', + 'tkinter', + 'altair', + 'cv2', + 'datasets', + 'flax', + 'jax', + 'jaxlib', + 'librosa', + 'llvmlite', + 'matplotlib', + 'nltk', + 'numba', + 'onnx', + 'onnxruntime', + 'pandas', + 'pygame', + 'sklearn', + 'soundfile', + 'spacy', + 'tensorflow', + 'torchaudio', + 'torchvision', + ], noarchive=False, optimize=0, )